Cheatsheet

← Voltar para página principal
Linux Cheatsheet

Guia completo de Linux para administração de sistemas e desenvolvimento

🐧 O que é Linux?

📖 Definição

Linux é um kernel de sistema operacional de código aberto, base para inúmeras distribuições. É o sistema operacional predominante em servidores, supercomputadores, sistemas embarcados e é a base para o desenvolvimento de software moderno.

💪 Por que aprender?

• Código aberto e gratuito
• Multiplataforma (arquiteturas)
• Altamente customizável
• Seguro e estável
• Ecossistema robusto de ferramentas

🚀 O que você pode fazer?

• Servidores web e bancos de dados
• Desenvolvimento de software
• Ciência de dados e IA
• Sistemas embarcados e IoT
• Supercomputação e HPC

💡 Onde você vai usar:
🖥️ Servidores
Web, Cloud, Database
💻 Desenvolvimento
IDE, Compiladores, Tools
🔧 DevOps
Docker, K8s, CI/CD
🤖 Modern
Containers, Cloud, Edge
Filtro ativo:Todos
Total: 11 categoriasBásico: 2Intermediário: 5Avançado: 4

🖥️ Sistema e Informações

Use quando: Diagnóstico do sistema, inventário de hardware, informações gerais

📋Informações do Sistema

Básico
uname -a

# Informações completas do kernel

Básico
lsb_release -a

# Versão da distribuição

Básico
cat /etc/os-release

# Detalhes do SO

Básico
hostname

# Nome do host

Básico
whoami

# Usuário atual

Básico
id

# ID do usuário e grupos

Básico
uptime

# Tempo de atividade

Básico
date

# Data e hora atual

Básico
timedatectl status

# Configurações de tempo

Básico
w

# Usuários logados

📋Hardware

Básico
lscpu

# Informações da CPU

Básico
lshw -short

# Resumo do hardware

Básico
free -h

# Uso de memória

Básico
df -h

# Espaço em disco

Básico
lsblk

# Dispositivos de bloco

Básico
lspci

# Dispositivos PCI

Básico
lsusb

# Dispositivos USB

Básico
dmidecode

# Informações BIOS/hardware

Básico
sensors

# Temperaturas e sensores

📋Kernel e Módulos

Básico
cat /proc/version

# Versão do kernel

Básico
lsmod

# Módulos carregados

Básico
modprobe nome_modulo

# Carregar módulo

Básico
rmmod nome_modulo

# Remover módulo

Básico
modinfo nome_modulo

# Informações do módulo

📦 Gerenciamento de Pacotes

Use quando: Instalação de software, atualização do sistema, gerenciamento de dependências

📋APT (Debian/Ubuntu)

Básico
sudo apt update

# Atualizar lista de pacotes

Básico
sudo apt upgrade

# Atualizar pacotes

Básico
sudo apt install pacote

# Instalar pacote

Básico
sudo apt remove pacote

# Remover pacote

Básico
sudo apt search termo

# Buscar pacote

Básico
apt show pacote

# Informações do pacote

Básico
sudo apt autoremove

# Remover não usados

Básico
sudo apt clean

# Limpar cache

Básico
dpkg -l

# Pacotes instalados

Básico
apt-cache policy pacote

# Versões disponíveis

📋YUM/DNF (RedHat/CentOS)

Básico
sudo yum update

# Atualizar sistema

Básico
sudo yum install pacote

# Instalar pacote

Básico
sudo yum remove pacote

# Remover pacote

Básico
yum search termo

# Buscar pacote

Básico
yum info pacote

# Informações do pacote

Básico
sudo dnf upgrade

# Atualizar (DNF)

Básico
dnf repolist

# Repositórios

Básico
sudo dnf groupinstall "Development Tools"

# Grupo de pacotes

📋Pacman (Arch Linux)

Básico
sudo pacman -Syu

# Atualizar sistema

Básico
sudo pacman -S pacote

# Instalar pacote

Básico
sudo pacman -R pacote

# Remover pacote

Básico
pacman -Ss termo

# Buscar pacote

Básico
pacman -Si pacote

# Informações do pacote

Básico
sudo pacman -Rns pacote

# Remover com dependências

Básico
pacman -Qe

# Pacotes instalados explicitamente

Básico
sudo pacman -Scc

# Limpar cache

Básico
yay -S pacote

# Instalar do AUR

📋Snap

Básico
sudo snap install pacote

# Instalar snap

Básico
sudo snap remove pacote

# Remover snap

Básico
snap find termo

# Buscar snap

Básico
snap list

# Snaps instalados

Básico
sudo snap refresh

# Atualizar snaps

Básico
snap info pacote

# Informações do snap

👥 Usuários e Permissões

Use quando: Administração de usuários, segurança, compartilhamento de recursos

📋Gerenciamento de Usuários

Intermediário
sudo adduser nome

# Criar usuário

Intermediário
sudo userdel nome

# Remover usuário

Intermediário
sudo usermod -aG grupo usuario

# Adicionar ao grupo

Intermediário
sudo passwd usuario

# Alterar senha

Intermediário
sudo chage -l usuario

# Informações de expiração

Intermediário
sudo chage -M 90 usuario

# Definir expiração

Intermediário
getent passwd

# Lista de usuários

Intermediário
getent group

# Lista de grupos

Intermediário
groups usuario

# Grupos do usuário

Intermediário
sudo usermod -l novo_nome antigo_nome

# Renomear usuário

📋Permissões Básicas

Intermediário
chmod 755 arquivo

# Permissões rwxr-xr-x

Intermediário
chmod u+x script.sh

# Adicionar execução

Intermediário
chmod -R 755 diretorio/

# Recursivo

Intermediário
chmod a+w arquivo

# Escrita para todos

Intermediário
chmod g-r arquivo

# Remover leitura grupo

Intermediário
ls -la

# Ver permissões

Intermediário
stat arquivo

# Permissões detalhadas

📋Permissões Avançadas

Intermediário
chmod u+s arquivo

# SUID

Intermediário
chmod g+s diretorio

# SGID

Intermediário
chmod +t diretorio

# Sticky bit

Intermediário
sudo chown usuario:grupo arquivo

# Mudar dono

Intermediário
sudo chown -R usuario diretorio/

# Recursivo

Intermediário
sudo chgrp grupo arquivo

# Mudar grupo

Intermediário
umask 022

# Máscara de permissões

Intermediário
find . -perm 777

# Buscar permissões específicas

📋ACL (Access Control Lists)

Intermediário
setfacl -m u:usuario:rwx arquivo

# Adicionar ACL

Intermediário
getfacl arquivo

# Ver ACLs

Intermediário
setfacl -m g:grupo:rx arquivo

# ACL para grupo

Intermediário
setfacl -x u:usuario arquivo

# Remover ACL

Intermediário
setfacl -b arquivo

# Remover todas ACLs

Intermediário
setfacl -R -m u:usuario:rwx diretorio/

# ACL recursiva

⚙️ Processos e Serviços

Use quando: Monitoramento, troubleshooting, gerenciamento de serviços

📋Gerenciamento de Processos

Intermediário
ps aux

# Todos processos

Intermediário
ps -ef

# Formato BSD

Intermediário
ps aux | grep nome

# Buscar processo

Intermediário
pgrep nome

# PID do processo

Intermediário
kill -9 PID

# Matar processo

Intermediário
killall nome

# Matar por nome

Intermediário
pkill nome

# Matar por padrão

Intermediário
nice -n 10 comando

# Prioridade baixa

Intermediário
renice 10 PID

# Alterar prioridade

Intermediário
nohup comando &

# Processo persistente

📋Monitoramento

Intermediário
top

# Processos em tempo real

Intermediário
htop

# Top melhorado

Intermediário
iotop

# I/O de processos

Intermediário
nethogs

# Uso de rede por processo

Intermediário
pstree

# Árvore de processos

Intermediário
lsof -i :8080

# Processo na porta

Intermediário
lsof -p PID

# Arquivos do processo

Intermediário
strace -p PID

# System calls do processo

📋Systemd (Serviços)

Intermediário
systemctl start servico

# Iniciar serviço

Intermediário
systemctl stop servico

# Parar serviço

Intermediário
systemctl restart servico

# Reiniciar serviço

Intermediário
systemctl reload servico

# Recarregar configuração

Intermediário
systemctl status servico

# Status do serviço

Intermediário
systemctl enable servico

# Habilitar no boot

Intermediário
systemctl disable servico

# Desabilitar

Intermediário
systemctl list-units

# Todos serviços

Intermediário
systemctl list-unit-files

# Serviços disponíveis

Intermediário
journalctl -u servico

# Logs do serviço

🌐 Rede e Conectividade

Use quando: Configuração de rede, diagnóstico, segurança, conexões remotas

📋Configuração de Rede

Intermediário
ip addr show

# Endereços IP

Intermediário
ip route show

# Tabela de rotas

Intermediário
ip link set eth0 up

# Ativar interface

Intermediário
ip addr add 192.168.1.100/24 dev eth0

# Configurar IP

Intermediário
nmcli dev status

# Status NetworkManager

Intermediário
nmcli connection show

# Conexões configuradas

Intermediário
nmtui

# Interface texto

Intermediário
netplan apply

# Aplicar configuração

📋Diagnóstico de Rede

Intermediário
ping -c 4 google.com

# Testar conectividade

Intermediário
traceroute google.com

# Traçar rota

Intermediário
mtr google.com

# Ping + traceroute

Intermediário
nslookup google.com

# DNS lookup

Intermediário
dig google.com

# DNS detalhado

Intermediário
netstat -tuln

# Portas abertas

Intermediário
ss -tuln

# Netstat moderno

Intermediário
lsof -i :80

# Processo na porta

Intermediário
tcpdump -i eth0

# Capturar pacotes

📋Ferramentas de Rede

Intermediário
wget https://exemplo.com/arquivo

# Download

Intermediário
curl -O https://exemplo.com/arquivo

# Download com curl

Intermediário
curl -X POST -d "data" https://api.com

# POST request

Intermediário
ssh usuario@servidor

# Conexão remota

Intermediário
scp arquivo usuario@servidor:/path

# Cópia segura

Intermediário
rsync -avz origem/ usuario@servidor:destino/

# Sincronização

Intermediário
sftp usuario@servidor

# FTP seguro

📋Firewall

Intermediário
sudo ufw enable

# Ativar firewall

Intermediário
sudo ufw allow 22/tcp

# Permitir porta

Intermediário
sudo ufw deny 23/tcp

# Bloquear porta

Intermediário
sudo ufw status

# Status do firewall

Intermediário
sudo ufw delete allow 22/tcp

# Remover regra

Intermediário
iptables -L

# Listar regras iptables

Intermediário
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# Adicionar regra

📁 Sistema de Arquivos

Use quando: Gerenciamento de armazenamento, organização de arquivos, backup

📋Estrutura de Diretórios

Intermediário
tree -L 2

# Visualizar árvore

Intermediário
find . -type f

# Encontrar arquivos

Intermediário
find . -type d

# Encontrar diretórios

Intermediário
find . -name "*.txt"

# Por padrão

Intermediário
find . -size +100M

# Por tamanho

Intermediário
find . -mtime -7

# Modificados recentemente

Intermediário
find . -user usuario

# Por dono

Intermediário
find . -perm 777

# Por permissão

Intermediário
locate arquivo

# Buscar rapidamente

Intermediário
updatedb

# Atualizar base locate

📋Links Simbólicos

Intermediário
ln -s origem link

# Criar link simbólico

Intermediário
ln origem link

# Criar hard link

Intermediário
ls -l link

# Ver tipo de link

Intermediário
readlink link

# Destino do link

Intermediário
find . -type l

# Encontrar links

Intermediário
ln -sf origem link

# Forçar sobrescrever

📋Montagem e Desmontagem

Intermediário
mount

# Ver sistemas montados

Intermediário
mount /dev/sdb1 /mnt/dados

# Montar partição

Intermediário
umount /mnt/dados

# Desmontar

Intermediário
mount -t ntfs-3g /dev/sdb1 /mnt/windows

# NTFS

Intermediário
mount -o loop arquivo.iso /mnt/iso

# Imagem ISO

Intermediário
df -h

# Espaço montado

Intermediário
lsblk

# Dispositivos disponíveis

Intermediário
blkid

# UUID de partições

Intermediário
fstab

# Montagem automática

📋Quotas e Espaço

Intermediário
du -sh *

# Tamanho dos diretórios

Intermediário
du -h --max-depth=1

# Um nível

Intermediário
du -ah | sort -rh | head -10

# Maiores arquivos

Intermediário
df -i

# Inodes disponíveis

Intermediário
quota -u usuario

# Quotas do usuário

Intermediário
repquota /home

# Relatório de quotas

Intermediário
ncdu

# Análise interativa

📦 Compressão e Backup

Use quando: Backup, compressão, transferência de arquivos, armazenamento

📋Tar e Gzip

Intermediário
tar -czf backup.tar.gz diretorio/

# Compactar com gzip

Intermediário
tar -xzf backup.tar.gz

# Extrair gzip

Intermediário
tar -cjf backup.tar.bz2 diretorio/

# Compactar com bzip2

Intermediário
tar -xjf backup.tar.bz2

# Extrair bzip2

Intermediário
tar -tzf backup.tar.gz

# Listar conteúdo

Intermediário
tar -xzf backup.tar.gz -C /destino

# Extrair em diretório

Intermediário
tar --exclude="*.log" -czf backup.tar.gz diretorio/

# Excluir arquivos

Intermediário
tar -czf - diretorio/ | ssh user@server "cat > backup.tar.gz"

# Backup remoto

📋Zip

Intermediário
zip -r backup.zip diretorio/

# Criar ZIP

Intermediário
unzip backup.zip

# Extrair ZIP

Intermediário
unzip -l backup.zip

# Listar conteúdo

Intermediário
zip -r9 backup.zip diretorio/

# Máxima compressão

Intermediário
unzip -q backup.zip

# Extrair silencioso

Intermediário
zip -s 100m -r split.zip diretorio/

# Dividir em volumes

📋Rsync e Backup

Intermediário
rsync -avz origem/ destino/

# Sincronizar

Intermediário
rsync -avz --delete origem/ destino/

# Espelhar

Intermediário
rsync -avz --progress origem/ destino/

# Com progresso

Intermediário
rsync -avz --exclude="*.tmp" origem/ destino/

# Excluir padrão

Intermediário
rsync -avz -e ssh origem/ user@server:destino/

# Via SSH

Intermediário
rsync --dry-run -avz origem/ destino/

# Simulação

📋Backup Completo

Intermediário
dd if=/dev/sda of=backup.img bs=4M

# Clone de disco

Intermediário
rsnapshot daily

# Backup incremental

Intermediário
borg create --stats backup::arquivo /diretorio

# Backup deduplicado

Intermediário
restic backup /diretorio

# Backup moderno

Intermediário
kopia repository create /backup

# Repositório Kopia

📊 Monitoramento e Logs

Use quando: Troubleshooting, monitoramento, análise de logs, alertas

📋Visualização de Logs

Avançado
tail -f /var/log/syslog

# Log em tempo real

Avançado
tail -n 100 arquivo.log

# Últimas 100 linhas

Avançado
head -n 50 arquivo.log

# Primeiras 50 linhas

Avançado
less arquivo.log

# Navegar no log

Avançado
grep "ERROR" arquivo.log

# Buscar erros

Avançado
grep -i "error" arquivo.log

# Case insensitive

Avançado
grep -n "erro" arquivo.log

# Com número da linha

Avançado
grep -C 5 "erro" arquivo.log

# Contexto 5 linhas

Avançado
zgrep "erro" arquivo.log.gz

# Buscar em gzip

📋Systemd Logs

Avançado
journalctl

# Logs do sistema

Avançado
journalctl -f

# Tempo real

Avançado
journalctl -u nginx

# Logs do serviço

Avançado
journalctl -p err

# Apenas erros

Avançado
journalctl --since "2024-01-01"

# Desde data

Avançado
journalctl --since "1 hour ago"

# Última hora

Avançado
journalctl -k

# Logs do kernel

Avançado
journalctl --disk-usage

# Uso de disco

📋Monitoramento de Recursos

Avançado
vmstat 5

# Estatísticas VM

Avançado
iostat -x 5

# Estatísticas I/O

Avançado
sar -u 5 10

# CPU ao longo tempo

Avançado
sar -r 5 10

# Memória

Avançado
sar -n DEV 5 10

# Rede

Avançado
nethogs

# Rede por processo

Avançado
iftop

# Tráfego de rede

Avançado
glances

# Monitor completo

📋Alertas e Notificações

Avançado
watch -n 5 "ps aux | grep python"

# Monitorar comando

Avançado
inotifywait -m -r /diretorio

# Monitorar mudanças

Avançado
tail -f log | grep "CRITICAL" | mail -s "Alerta" admin@domain.com

# Email de alerta

Avançado
logger "Mensagem personalizada"

# Adicionar ao syslog

Avançado
dmesg | grep -i error

# Erros do kernel

🔒 Segurança

Use quando: Hardening, auditoria, criptografia, análise de segurança

📋Hardening de Sistema

Avançado
sudo passwd -l usuario

# Bloquear conta

Avançado
sudo chage -E 2024-12-31 usuario

# Expirar conta

Avançado
sudo visudo

# Editar sudoers

Avançado
sudo sysctl -w net.ipv4.ip_forward=0

# Desabilitar IP forward

Avançado
echo "1" | sudo tee /proc/sys/net/ipv4/ip_forward

# Habilitar IP forward

Avançado
sudo sysctl -a | grep forward

# Ver configurações

Avançado
sudo sysctl -p

# Aplicar /etc/sysctl.conf

📋SSH e Acesso Remoto

Avançado
ssh-keygen -t rsa -b 4096

# Gerar chave SSH

Avançado
ssh-copy-id user@server

# Copiar chave pública

Avançado
ssh -i chave.pem user@server

# Conectar com chave

Avançado
ssh -p 2222 user@server

# Porta diferente

Avançado
ssh -L 8080:localhost:80 user@server

# Tunnel SSH

Avançado
ssh -X user@server

# X11 forwarding

Avançado
ssh -D 1080 user@server

# SOCKS proxy

📋Criptografia

Avançado
gpg -c arquivo

# Criptografar arquivo

Avançado
gpg -d arquivo.gpg

# Descriptografar

Avançado
gpg --gen-key

# Gerar par de chaves

Avançado
gpg --list-keys

# Listar chaves

Avançado
gpg --export -a nome > chave.pub

# Exportar chave pública

Avançado
gpg --import chave.pub

# Importar chave

Avançado
openssl enc -aes-256-cbc -in arquivo -out arquivo.enc

# OpenSSL AES

📋Análise de Segurança

Avançado
sudo rkhunter --check

# Rootkit hunter

Avançado
sudo chkrootkit

# Verificar rootkits

Avançado
sudo lynis audit system

# Auditoria de segurança

Avançado
nmap -sS -O target

# Scan de portas

Avançado
nmap -A -T4 target

# Scan agressivo

Avançado
sudo fail2ban-client status

# Status fail2ban

Avançado
sudo ufw status verbose

# Firewall detalhado

🐳 Virtualização e Containers

Use quando: Virtualização, containers, orquestração, desenvolvimento isolado

📋KVM/QEMU

Avançado
sudo virt-install --name vm1 --ram 2048 --vcpus 2 --disk size=20 --cdrom ubuntu.iso

# Criar VM

Avançado
virsh list --all

# Listar VMs

Avançado
virsh start vm1

# Iniciar VM

Avançado
virsh shutdown vm1

# Desligar VM

Avançado
virsh console vm1

# Console da VM

Avançado
virsh dumpxml vm1 > vm1.xml

# Exportar configuração

Avançado
virsh define vm1.xml

# Importar configuração

Avançado
sudo modprobe kvm

# Carregar módulo KVM

Avançado
lsmod | grep kvm

# Verificar KVM

📋Docker Básico

Avançado
docker run -it ubuntu bash

# Container interativo

Avançado
docker run -d nginx

# Container daemon

Avançado
docker ps

# Containers ativos

Avançado
docker ps -a

# Todos containers

Avançado
docker images

# Imagens disponíveis

Avançado
docker stop container_id

# Parar container

Avançado
docker rm container_id

# Remover container

Avançado
docker rmi image_id

# Remover imagem

📋Docker Avançado

Avançado
docker run -p 8080:80 nginx

# Mapear porta

Avançado
docker run -v /host:/container nginx

# Volume

Avançado
docker run --name web -d nginx

# Nomear container

Avançado
docker exec -it container_id bash

# Acessar container

Avançado
docker logs container_id

# Logs do container

Avançado
docker inspect container_id

# Informações detalhadas

Avançado
docker stats

# Estatísticas em tempo real

📋Podman

Avançado
podman run -it ubuntu bash

# Container Podman

Avançado
podman ps

# Containers Podman

Avançado
podman generate systemd --name container --files --new

# Gerar serviço systemd

Avançado
podman pod create --name mypod

# Criar pod

Avançado
podman play kube pod.yaml

# Executar YAML Kubernetes

⚡ Scripting e Automação

Use quando: Automação de tarefas, scripts, deploy, configuração

📋Bash Scripting

Avançado
#!/bin/bash

# Shebang

Avançado
set -euo pipefail

# Strict mode

Avançado
VAR="valor"

# Variável

Avançado
echo "${VAR}"

# Usar variável

Avançado
if [ "$VAR" = "teste" ]; then

# Condicional

Avançado
for i in {1..10}; do

# Loop for

Avançado
while true; do

# Loop while

Avançado
function nome() {

# Definir função

Avançado
read -p "Digite: " VAR

# Ler input

📋Processamento de Texto

Avançado
sed "s/antigo/novo/g" arquivo

# Substituir texto

Avançado
awk "{print $1}" arquivo

# Primeira coluna

Avançado
grep "padrão" arquivo

# Buscar padrão

Avançado
cut -d"," -f1 arquivo.csv

# Extrair campo

Avançado
sort arquivo

# Ordenar linhas

Avançado
uniq arquivo

# Remover duplicatas

Avançado
tr "[:lower:]" "[:upper:]" < arquivo

# Converter para maiúsculas

Avançado
wc -l arquivo

# Contar linhas

Avançado
paste arquivo1 arquivo2

# Juntar arquivos

📋Automação com Cron

Avançado
crontab -e

# Editar crontab

Avançado
0 2 * * * /script.sh

# Diário às 2h

Avançado
*/15 * * * * comando

# A cada 15 minutos

Avançado
0 0 1 * * /script.sh

# Primeiro do mês

Avançado
0 0 * * 0 /script.sh

# Todo domingo

Avançado
@reboot /script.sh

# No boot

Avançado
crontab -l

# Listar tarefas

Avançado
crontab -r

# Remover todas

📋Ferramentas de Automação

Avançado
ansible-playbook playbook.yml

# Executar Ansible

Avançado
terraform apply

# Aplicar Terraform

Avançado
puppet agent --test

# Testar Puppet

Avançado
chef-solo recipe.rb

# Executar Chef

Avançado
salt-call state.apply

# Aplicar Salt

Avançado
make -j$(nproc)

# Compilar paralelo

Avançado
watch -n 1 "comando"

# Repetir comando

🤝 Contribuindo

Encontrou um erro? Quer melhorar um cheatsheet? Tem uma sugestão? Adoraríamos suas contribuições! Abra uma issue ou submeta um PR.

Gostou do projeto? Apoie o desenvolvimento com um café e ajude a manter tudo open source ☕