Pular para o conteúdo principal

Fase 1: Fundamentos de Linux, Redes, e Scripts

Author: GPS

Como essa fase se aplica à Nuvem?

Pode-ser dizer que a nuvem é como um monte de servidores Linux conectados em rede. Aprender os fundamentos de como a rede funciona e como interagir com esses servidores por meio de comandos e automatizar esses comandos por meio de um script é o objetivo desta fase. Se você já é um administrador Linux ou engenheiro de redes, poderá aplicar suas habilidades na cloud.

Como desmembrar essa fase?

Sugiro dedicar algum tempo a esses três tópicos e a esta linha do tempo:

OrdemTopicoComprometimento necessário
1Introdução aos comandos do Linux2 Semanas
2Introdução à Redes1 Semana
3Introdução aos Scripts bash1 Semana

Claro, sinta-se à vontade para gastar o tempo que quiser, as pessoas pediram uma linha do tempo e detalhamento, então eu a adicionei.

Fontes

TopicoTituloNotas
LinuxLinux Basics for HackersEste livro tornou o aprendizado do Linux DIVERTIDO! É bem fácil de seguir e fazer um capítulo por dia. Você não precisa ler tudo, os primeiros 9 capítulos cobrem a maior parte do que você precisa saber.
LinuxThe Linux Command LineUsei isso mais como referência para reforçar tópicos do primeiro livro.
LinuxLinux JourneyManeira interativa de aprender Linux e Linux CLI!
NetworkingFreeCodeCamp Computer Networking CourseEste curso completo de Redes de computadores de nível universitário irá prepará-lo para configurar, gerenciar e solucionar problemas de redes de computadores.
Introduction to BashLinux Bash Course by GPSUma introdução ao Bash!
Bash ScriptingIntroduction to Bash scriptingFantástica introdução ao script bash, a voz de Joe Collins é um calmante!
Bash commandsBeginner's crash course to Linux BashUma hora de video feito pela Gwyn

Projetos

TituloFonte
Instale o Linux em um computadorPesquise uma distro e instale-a (Nós gostamos do Pop!_OS)
Configure um LAMP serverUma tarefa de administração Linux bastante popular.
Deploy de um servidor NASConfira FreeNAS
Deploy da sua própria nuvemConfira NextCloud
Converter arquivos de vídeoConfira ffmpeg e use para escrever um script que converte um arquivo .mov para mp4

Coisas com as quais você vai estar familiarizado no final desta fase

Comandos

  • Navegue com o comando cd.
  • Como listar o conteúdo de um diretório e usando o comando ls.
  • Crie, copie, mova, renomeie, diretórios e arquivos com comandos mkdir, cp, rm e touch.
  • Encontre coisas com os comandos locate, whereis, which e find.
  • Entenda como aprender mais sobre comandos com os comandos which, man e --help.
  • Esteja familiarizado com encontrar detalhes de logs em /var/log
  • Como exibir o conteúdo de um arquivo com cat, less, more, tail, head.
  • Filtragem com grep e sed.
  • Redirecionamento de entrada, saída e erro padrão com o operador > e comando tee.
  • Como usar pipelines com o operador |.
  • Manipule arquivos com nano ou vim.
  • Instalar e desinstalar pacotes. Depende da distro, uso baseado em debian apt.
  • Controle de permissões com comandos chown, chgrp, chmod.
  • Criando usuários e o comando sudo.
  • Gerenciamento de processos com ps, top, nice, kill
  • Gerenciar variáveis definidas pelo usuário do ambiente com comandos env, set, export.
  • Adicione diretórios ao seu PATH.
  • Compressão e arquivamento com tar, gzip, gunzip.
  • Como acessar um servidor Linux com ssh.

Redes

Conceitos com os quais você deve estar familiarizado.

  • Modelo OSI
  • Endereço IP
  • Endereço MAC
  • Roteamento e comutação
  • TCP/IP
  • TCP e UDP
  • DNS
  • Tunelamento VPN
  • TLS e SSL

Script Bash

  • O que é o shell?
  • O que é Bash?
  • Por que um script tem que começar com #!?
  • O que é uma variável e como usá-la
  • Como aceitar a entrada do usuário
  • Como executar um script

Certificações que você pode querer dar uma olhada

Existem várias certificações Linux e você pode optar por estudar para qualquer uma delas, mas muitas delas cobrem MUITO mais do que você precisa saber para uma base sólida e são mais focadas em administração Linux.

Existem também TONELADAS de certificações de redes por aí e, semelhantes às do Linux, elas são mais focadas em fornecer muito conhecimento para que você possa se tornar um engenheiro/especialista em redes, novamente em um nível introdutório, é um pouco exagerado. Se você quiser obter uma, dê uma olhada nas certificações Cisco que são praticamente um padrão da indústria e/ou as certificações da Comptia Network+

No final do dia, se você quiser fazer elas, vá em frente :D