Skip to content
Gabriel Bispo edited this page Jun 7, 2026 · 4 revisions

Conceitos fundamentais sobre o Linux, comandos essenciais do terminal e fluxo de trabalho com Git.


Sumário


Por que as Big Techs usam Linux

As principais empresas de tecnologia do mundo (Google, Amazon, Meta, Microsoft, Apple) rodam seus serviços em sistemas baseados em Linux. Os motivos principais:

Motivo Explicação
Estabilidade e desempenho Rápido, confiável e projetado para grandes servidores e datacenters
Segurança Código aberto — especialistas do mundo todo podem encontrar e corrigir falhas rapidamente
Custo Gratuito, sem licenças caras como as do Windows Server
Personalização Cada empresa adapta o sistema para suas necessidades (ex: Android é baseado em Linux)
Comunidade e inovação Evolui rápido graças à colaboração global de desenvolvedores

Exemplos reais

Empresa Uso do Linux
Google Servidores web e infraestrutura; Android é baseado no kernel Linux
Amazon (AWS) A maior nuvem do mundo roda principalmente em Linux
Meta Datacenters e serviços em nuvem
Microsoft Azure (nuvem da Microsoft) tem mais VMs Linux que Windows

Estabilidade do Linux

Por que o Linux é tão estável?

O Linux foi projetado desde o início para servidores e uso contínuo — ambientes onde parar não é opção. Bancos, governos e hospitais dependem de sistemas que precisam funcionar 24/7/365.

Característica Linux Windows (comparação)
Uptime Pode ficar anos sem reiniciar Atualizações frequentemente exigem reboot
Atualizações Maioria não exige reboot (só troca de kernel) Muitas atualizações exigem reinicialização
Gerenciamento de memória Libera memória eficientemente — evita vazamentos a longo prazo Mais propenso a degradação com o tempo
Kernel Modular — drivers podem ser carregados/atualizados sem reiniciar Kernel mais acoplado
Software instalado Instala apenas o necessário Vem com muitos serviços e programas pré-instalados

💡 Uptime é o tempo que o sistema fica ligado sem reiniciar. Use uptime no terminal para ver há quanto tempo o servidor está rodando.


Conceitos Básicos

Case Sensitive

O Linux diferencia letras maiúsculas de minúsculas em nomes de arquivos, comandos e pastas. Arquivo.txt, arquivo.txt e ARQUIVO.TXT são três arquivos diferentes.

⚠️ Esse é um dos erros mais comuns para quem vem do Windows. No Linux, cd Documentos e cd documentos são comandos diferentes.

Estrutura de um comando Linux

sudo   apt   install   nome-do-pacote
 │      │       │            │
 │      │       │            └─ argumento (o que instalar)
 │      │       └─ subcomando (ação do apt)
 │      └─ comando principal
 └─ prefixo de privilégio (executa como root)

sudo — Superuser Do

Executa o comando seguinte com privilégios de administrador (root). O Linux, por segurança, não deixa o usuário comum fazer alterações no sistema diretamente.

💡 Em vez de ficar logado como root o tempo todo (arriscado), usa-se sudo só quando necessário — princípio do menor privilégio.

apt — Advanced Package Tool

Gerenciador de pacotes do Debian/Ubuntu. Baixa e instala programas diretamente dos repositórios oficiais — fontes verificadas e seguras, diferente de baixar instaladores aleatórios da internet.


Comandos de Sistema (apt)

Atualização do sistema

Comando O que faz Quando usar
sudo apt update Atualiza a lista de pacotes disponíveis nos repositórios Antes de qualquer instalação ou upgrade
sudo apt upgrade Instala as atualizações disponíveis nos pacotes instalados Manutenção regular do sistema
sudo apt full-upgrade Upgrade forçado — pode remover pacotes para resolver conflitos Quando o upgrade normal não resolve
sudo apt dist-upgrade Atualiza o sistema operacional inteiro, incluindo o kernel Migração entre versões do Debian/Ubuntu
sudo apt autoremove Remove pacotes que foram instalados como dependência e não são mais necessários Limpeza após upgrades
sudo apt autoclean Remove arquivos de instalação (.deb) em cache que não são mais necessários Liberar espaço em disco

💡 A sequência recomendada para manter o sistema atualizado:

sudo apt update && sudo apt upgrade

O && executa o segundo comando só se o primeiro tiver sucesso.

💡 O arquivo /etc/apt/sources.list contém os endereços dos repositórios que o apt update consulta. Alterar esse arquivo permite adicionar repositórios de terceiros.

Instalação e remoção

Comando O que faz
sudo apt install <pacote> Instala um pacote
sudo apt remove <pacote> Remove o pacote (mantém os arquivos de configuração)
sudo apt purge <pacote> Remove o pacote e seus arquivos de configuração

Atalhos do Terminal e do Sistema

Atalhos de teclado no terminal

Atalho Ação Por que é útil
Tab Auto-completar comando, caminho ou nome de arquivo Economiza digitação e evita erros de digitação
Tab Tab (dois tabs) Lista todas as opções possíveis para completar Ver todas as alternativas disponíveis
Ctrl + L Limpa a tela (equivale ao clear) Organizar a visualização sem fechar o terminal
Ctrl + D Encerra a sessão atual (equivale ao exit) Fechar o terminal ou fazer logoff
Ctrl + C Interrompe o comando em execução Parar um processo que está rodando (ex: ping -t)
Ctrl + Z Suspende o processo atual (coloca em background) Pausar temporariamente um processo
↑ / ↓ Navega pelo histórico de comandos Reutilizar comandos anteriores sem redigitar

Atalhos do ambiente gráfico (Linux)

Atalho Ação
Ctrl + Alt + T Abre o terminal
Ctrl + Alt + L Bloqueia a tela
Ctrl + Alt + Backspace Finaliza o ambiente gráfico (mata o servidor X)
Ctrl + Alt + F1 a F6 Alterna para terminais virtuais (modo texto puro)
Ctrl + Alt + F7 Volta para o ambiente gráfico

💡 Os terminais virtuais (F1F6) são sessões de terminal independentes do ambiente gráfico — úteis para diagnosticar problemas quando a interface gráfica trava.


Git — Controle de Versão

O Git é um sistema de controle de versão distribuído — registra o histórico completo de alterações de um projeto, permitindo voltar a versões anteriores, trabalhar em equipe e sincronizar código com repositórios remotos como o GitHub.

Configuração inicial (feita uma única vez)

Antes de usar o Git, configure sua identidade — ela aparece em todos os commits que você fizer:

git config --global user.name "Seu Nome"
git config --global user.email "seu@email.com"

Verificar as configurações salvas:

git config --list

💡 --global aplica a configuração para todos os repositórios do seu usuário. Sem --global, a configuração vale apenas para o repositório atual.


Entendendo a sintaxe do Git

git   comando   --opcao-longa   -o   argumento
 │       │            │          │       │
 │       │            │          │       └─ o que o comando afeta
 │       │            │          └─ opção curta (ex: -m)
 │       │            └─ opção longa (ex: --global, --list)
 │       └─ subcomando (clone, pull, push...)
 └─ o programa
Símbolo Significado Exemplo
-- (dois hifens) Início de uma opção longa --global, --list
- (um hífen) Opção curta (uma letra) -m em git commit -m
-- (sozinho) Separa opções de nomes de arquivos ou branches git checkout -- arquivo.txt

Fluxo de trabalho Git

Repositório remoto (GitHub)
        │
   git clone         ← baixa o repositório pela primeira vez
        │
   [você edita arquivos localmente]
        │
   git add .         ← prepara as alterações para o commit
        │
   git commit -m ""  ← registra as alterações com uma mensagem
        │
   git push          ← envia para o repositório remoto
        │
   git pull          ← atualiza o local com as mudanças remotas

Comandos Git

Comando O que faz Quando usar
git clone <url> Baixa uma cópia completa do repositório remoto Primeira vez que você vai trabalhar em um projeto
git pull Atualiza o repositório local com as alterações do remoto Antes de começar a trabalhar — evita conflitos
git add . Adiciona todas as alterações à área de staging Preparar tudo para o próximo commit
git add <arquivo> Adiciona apenas um arquivo específico ao staging Quando quer commitar só parte das mudanças
git commit -m "mensagem" Salva as alterações do staging com uma descrição Após cada conjunto de mudanças relacionadas
git push Envia os commits locais para o repositório remoto Após commitar, para sincronizar com o GitHub
git status Mostra quais arquivos foram alterados, adicionados ou estão pendentes Verificar o estado atual antes de commitar
git log Exibe o histórico de commits do projeto Ver o que foi alterado e por quem
git config --list Lista todas as configurações do Git no ambiente atual Verificar se nome e e-mail estão configurados

💡 Boas mensagens de commit fazem diferença: prefira "Adiciona configuração de IP fixo" a "atualização". Em projetos em equipe, o histórico de commits é a documentação do que foi feito e por quê.

💡 O git pull antes de começar a trabalhar é um hábito essencial em equipe — evita conflitos quando outra pessoa já modificou os arquivos que você vai editar.


Recursos para Estudo

Recurso O que oferece
Guia Foca Linux Guia completo em português — do básico ao intermediário
SS64 — Referência Bash Referência rápida de todos os comandos do Bash
Distrosea Testa distribuições Linux direto no navegador sem instalar nada

💡 O Distrosea é excelente para experimentar o terminal de diferentes distribuições (Ubuntu, Debian, Arch, etc.) sem precisar de uma VM ou instalação. Ótimo para praticar comandos.


Documentação produzida durante o Curso Técnico de Informática — Senac Tatuapé

Clone this wiki locally