Linux: Introdução ao Linux

Linux é o sistema operacional com o qual todo desenvolvedor eventualmente vai lidar. Seja implantando serviços de back-end, configurando bancos de dados ou executando pipelines de CI/CD, o servidor muito provavelmente roda Linux.

📋 Pré-requisitos: Nenhuma experiência prévia é necessária

1. O Que Você Vai Aprender


2. A História de um Iniciante: Primeiro Encontro com um Servidor

(1) O Problema: Sentir-se Perdido Diante de um Servidor pela Primeira Vez

Alex é um desenvolvedor que migrou recentemente para o Linux. A empresa lhe deu um MacBook, mas seus colegas de back-end navegam pelo terminal com naturalidade. Ele precisava acessar um servidor Linux para verificar os logs, mas ao abrir o terminal nem sabia o que significava "ls".

O engenheiro sênior Bob disse a ele: "Dominar Linux é uma competência essencial para qualquer desenvolvedor — não porque você vai usá-lo como sistema desktop, mas porque a grande maioria dos serviços de internet roda em Linux."

(2) A Solução do Linux

Bob apresentou o Linux ao Alex: um kernel de sistema operacional livre e de código aberto, estável o suficiente para rodar por anos sem interrupção. Qualquer dispositivo — de um Raspberry Pi até um rover da NASA em Marte — pode executá-lo.

BASH
# Verifique há quanto tempo um servidor Linux está no ar
uptime
# Saída de exemplo: 10:23  up 187 days, 4 users, load average: 0.08 0.03 0.01

(3) O Benefício: Compreender a Infraestrutura

Após concluir esta aula, Alex entendeu qual sistema operacional sustenta os serviços do GitHub, Netflix e YouTube que ele usa todos os dias — e por que o Linux domina o mercado de servidores.


3. Pontos-Chave

(1) O Que É o Linux

Em sentido estrito, Linux é apenas um kernel — o componente central de um sistema operacional, responsável por gerenciar recursos de hardware, escalonar processos, administrar sistemas de arquivos e muito mais. Em 1991, o estudante finlandês Linus Torvalds lançou a primeira versão.

Mas o que as pessoas costumam chamar de "Linux" na verdade se refere ao sistema operacional GNU/Linux — a combinação completa do kernel Linux com o conjunto de ferramentas GNU (comandos como cp, mv, ls, bash etc.).

💡 Dica: A distinção entre "Linux" e "GNU/Linux" é uma pergunta frequente em provas e entrevistas. Em sentido estrito, o Android também usa o kernel Linux, mas não inclui o conjunto de ferramentas GNU, por isso não é considerado GNU/Linux.

(2) Linux vs Windows vs macOS

Os três grandes sistemas operacionais diferem fundamentalmente em design e filosofia:

Dimensão Linux Windows macOS
Kernel Linux (código aberto) NT (código fechado) XNU (parcialmente aberto)
Gerenciamento de pacotes apt/yum/dnf EXE/MSI Homebrew
Linha de comando bash/zsh (experiência central) PowerShell (complemento) zsh (estilo Linux)
Sistema de arquivos ext4/XFS/Btrfs NTFS APFS
Ambiente desktop GNOME/KDE (escolha do usuário) Desktop fixo Aqua
Licença GPL (código aberto, gratuito) Licença comercial Licença comercial
Mercado principal Servidores / Embarcados Desktop / Empresas Desktop / Criativos

(3) Principais Famílias de Distribuições

O Linux tem centenas de distribuições, mas apenas quatro famílias principais:

Família Gerenciador de pacotes Distribuições representantes Ideal para
Família Debian apt/.deb Ubuntu, Debian, Linux Mint Iniciantes, servidores
Família RHEL yum/dnf/.rpm RHEL, Fedora, CentOS Servidores corporativos
Família Arch pacman Arch Linux, Manjaro Entusiastas, software mais recente
Alpine apk Alpine Linux Imagens Docker minimalistas

(4) Por Que os Servidores Rodam Linux

(5) ▶ Exemplo: Verificar a Versão do Kernel Linux

BASH

uname -r
# Saída de exemplo: 5.15.0-91-generic

Saída:

TEXT 📖 Somente leitura
5.15.0-91-generic

(6) ▶ Exemplo: Verificar Informações da Distribuição

TEXT 📖 Somente leitura
lsb_release -a
# Saída de exemplo:
# Distributor ID: Ubuntu
# Description:    Ubuntu 22.04.3 LTS
# Release:        22.04
# Codename:       jammy

(7) ▶ Exemplo: Verificar o Tempo de Atividade do Sistema

BASH
uptime
# Saída de exemplo: 10:23:45 up 187 days, 4 users, load average: 0.08 0.03 0.01

Saída:

TEXT 📖 Somente leitura
10:23:45 up 187 days, 4 users, load average: 0.08, 0.03, 0.01

(8) ▶ Exemplo: Verificar Informações de CPU e Memória

BASH
# Informações da CPU
lscpu | grep "Model name"

# Memória total
free -h | grep Mem

Saída:

TEXT 📖 Somente leitura
Model name:                      Intel(R) Core(TM) i7-12700K
Mem:              15Gi       4.0Gi        11Gi       256Mi       2.0Gi        11Gi

(9) ▶ Exemplo: Comandos de Gerenciamento de Pacotes nas Distribuições

BASH
# Debian/Ubuntu
sudo apt install nginx

# RHEL/Fedora/CentOS
sudo yum install nginx   # ou dnf
sudo dnf install nginx

# Arch
sudo pacman -S nginx

# Alpine
apk add nginx

Saída:

TEXT 📖 Somente leitura
Reading package lists... Done
Building dependency tree... Done
The following NEW packages will be installed:
  nginx
0 upgraded, 1 newly installed, 0 to remove.
Need to get 42.3 kB of archives.

(10) ▶ Exemplo Abrangente: Conheça o Seu Sistema Linux

Faça login em uma máquina Linux (ou WSL) e execute os seguintes comandos para obter informações básicas do sistema:

BASH
echo "=== Versão do Kernel ===" && uname -r && \
echo "=== Distribuição ===" && lsb_release -d && \
echo "=== Tempo de Atividade ===" && uptime && \
echo "=== CPU ===" && lscpu | grep "Model name" && \
echo "=== Memória ===" && free -h | grep Mem

❓ Perguntas Frequentes

P: Qual é a diferença entre Linux e Unix? R: Unix é um sistema operacional desenvolvido nos Laboratórios Bell na década de 1970, licenciado comercialmente e de código fechado. Linux é um kernel Unix-like escrito do zero por Linus Torvalds, totalmente aberto e gratuito, sem nenhum código do Unix. O Linux é descrito como "Unix-like".

P: Por que a maioria dos servidores roda Linux? R: Gratuito (sem custos de licença do Windows Server), estável (pode rodar anos sem reiniciar), baixo consumo de recursos (a CLI precisa de apenas algumas centenas de MB de RAM), amigável ao acesso remoto (SSH) e com ecossistema rico (quase todo software de servidor prioriza suporte a Linux).

P: Qual distribuição é melhor para iniciantes? R: \1

P: O Linux no desktop é adequado para uso diário? R: É adequado para trabalho de escritório em geral (navegador/aplicativos de escritório/ferramentas de desenvolvimento), mas ainda tem deficiências: o pacote Adobe não está disponível, alguns jogos não são suportados e o ecossistema Tencent (WeChat/QQ) oferece uma experiência medíocre. Para desenvolvedores, recomendamos Windows/Mac no desktop + WSL/máquina virtual para desenvolvimento.

P: Qual é a relação entre o kernel Linux e o GNU/Linux? R: \1


📖 Resumo


📝 Exercícios

  1. Básico (Dificuldade ⭐): Pesquise "participação de mercado do Linux em 2025" e aprenda as diferenças de market share entre os mercados de servidores, desktop e embarcados
  2. Intermediário (Dificuldade ⭐⭐): Compare Ubuntu e Fedora em seus sites oficiais (desktop vs servidor, estabilidade vs recursos mais novos) e organize os resultados em uma tabela
  3. Avançado (Dificuldade ⭐⭐⭐): Liste 5 sites/aplicativos que você usa diariamente, descubra se eles rodam em Linux (dica: consulte WhoIsHostingThis) e resuma o papel do Linux na infraestrutura da internet
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%