Folha de consulta de comandos Ubuntu

Explore mais comandos Ubuntu e Linux

Use esta folha de consulta de comandos Ubuntu como referência prática de administração Linux. Ela cobre informações do sistema, arquivos, permissões, usuários, pacotes apt, serviços systemd, processos, rede, armazenamento, logs, conceitos básicos de firewall e atualizações de segurança.

Informações e Status do Sistema

Informações do Sistema: uname

Exibe informações do sistema, incluindo kernel e arquitetura.

# Mostrar nome do kernel
uname
# Mostrar todas as informações do sistema
uname -a
# Mostrar versão do kernel
uname -r
# Mostrar arquitetura
uname -m
# Mostrar sistema operacional
uname -o

Informações de Hardware: lscpu, lsblk

Visualiza especificações detalhadas de hardware e dispositivos de bloco.

# Informações da CPU
lscpu
# Dispositivos de bloco (discos, partições)
lsblk
# Informações de memória
free -h
# Uso de disco por sistema de arquivos
df -h

Tempo de Atividade do Sistema: uptime

Mostra o tempo de atividade do sistema e as médias de carga.

# Tempo de atividade e carga do sistema
uptime
# Informações de tempo de atividade mais detalhadas
uptime -p
# Mostrar tempo de atividade desde uma data específica
uptime -s

Usuários Atuais: who, w

Exibe usuários atualmente logados e suas atividades.

# Mostrar usuários logados
who
# Informações detalhadas do usuário com atividades
w
# Mostrar nome de usuário atual
whoami
# Mostrar histórico de login
last

Variáveis de Ambiente: env

Exibe e gerencia variáveis de ambiente.

# Mostrar todas as variáveis de ambiente
env
# Mostrar variável específica
echo $HOME
# Definir variável de ambiente
export PATH=$PATH:/novo/caminho
# Mostrar variável PATH
echo $PATH

Data e Hora: date, timedatectl

Exibe e define a data e hora do sistema.

# Data e hora atuais
date
# Definir hora do sistema (como root)
date MMddhhmmyyyy
# Informações de fuso horário
timedatectl
# Definir fuso horário
timedatectl set-timezone America/New_York

Operações de Arquivos e Diretórios

Listar Arquivos: ls

Exibe arquivos e diretórios com várias opções de formatação.

# Listar arquivos no diretório atual
ls
# Listagem detalhada com permissões
ls -l
# Mostrar arquivos ocultos
ls -la
# Tamanhos de arquivo legíveis por humanos
ls -lh
# Ordenar por tempo de modificação
ls -lt

Muda de diretório e exibe a localização atual.

# Ir para o diretório home
cd
# Ir para um diretório específico
cd /caminho/para/diretorio
# Subir um nível
cd ..
# Mostrar diretório atual
pwd
# Ir para o diretório anterior
cd -
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Qual comando mostra o diretório de trabalho atual?
cd
pwd
ls
whoami

Criar e Remover: mkdir, rmdir, rm

Cria e exclui arquivos e diretórios.

# Criar diretório
mkdir novo_dir
# Criar diretórios aninhados
mkdir -p caminho/para/dir/aninhado
# Remover diretório vazio
rmdir nome_dir
# Remover arquivo
rm nome_arquivo
# Remover diretório recursivamente
rm -rf nome_dir

Visualizar Conteúdo de Arquivo: cat, less, head, tail

Exibe o conteúdo do arquivo usando vários métodos e paginação.

# Exibir arquivo inteiro
cat nome_arquivo
# Visualizar arquivo com paginação
less nome_arquivo
# Mostrar as primeiras 10 linhas
head nome_arquivo
# Mostrar as últimas 10 linhas
tail nome_arquivo
# Seguir mudanças no arquivo em tempo real
tail -f logfile

Copiar e Mover: cp, mv

Copia e move arquivos e diretórios.

# Copiar arquivo
cp origem.txt destino.txt
# Copiar diretório recursivamente
cp -r dir_origem/ dir_destino/
# Mover/renomear arquivo
mv nome_antigo.txt nome_novo.txt
# Mover para diretório diferente
mv arquivo.txt /caminho/para/destino/
# Copiar preservando atributos
cp -p arquivo.txt backup.txt

Encontrar Arquivos: find, locate

Pesquisa por arquivos e diretórios por nome, tipo ou propriedades.

# Encontrar por nome
find /caminho -name "nome_arquivo"
# Encontrar arquivos modificados nos últimos 7 dias
find /caminho -mtime -7
# Encontrar por tipo de arquivo
find /caminho -type f -name "*.txt"
# Localizar arquivos rapidamente (requer updatedb)
locate nome_arquivo
# Encontrar e executar comando
find /caminho -name "*.log" -exec rm {} \;

Permissões de Arquivo: chmod, chown

Modifica permissões e propriedade de arquivos.

# Mudar permissões (numérico)
chmod 755 nome_arquivo
# Adicionar permissão de execução
chmod +x script.sh
# Mudar propriedade
chown usuario:grupo nome_arquivo
# Mudar propriedade recursivamente
chown -R usuario:grupo diretorio/
# Ver permissões de arquivo
ls -l nome_arquivo
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

O que chmod 755 nome_arquivo define como permissão?
Leitura, escrita, execução para o proprietário; leitura para grupo e outros
Leitura, escrita para o proprietário; leitura, execução para grupo e outros
Leitura, escrita, execução para o proprietário; leitura, execução para grupo e outros
Leitura, escrita para o proprietário; leitura para grupo e outros

Gerenciamento de Processos

Listagem de Processos: ps

Exibe processos em execução e seus detalhes.

# Mostrar processos do usuário
ps
# Mostrar todos os processos com detalhes
ps aux
# Mostrar árvore de processos
ps -ef --forest
# Mostrar processos por usuário
ps -u nome_usuario

Matar Processos: kill, killall

Termina processos por PID ou nome.

# Monitor de processos em tempo real
top
# Matar processo por PID
kill 1234
# Matar processo à força
kill -9 1234
# Matar por nome do processo
killall nome_processo
# Listar todos os sinais
kill -l
# Enviar sinal específico
kill -HUP 1234
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Qual sinal o comando kill -9 envia a um processo?
SIGTERM (terminar graciosamente)
SIGHUP (desligar)
SIGINT (interrupção)
SIGKILL (matar à força, não pode ser ignorado)

Tarefas em Segundo Plano: jobs, bg, fg

Gerencia processos em segundo plano e em primeiro plano.

# Listar tarefas ativas
jobs
# Enviar tarefa para segundo plano
bg %1
# Trazer tarefa para primeiro plano
fg %1
# Executar comando em segundo plano
comando &
# Desanexar do terminal
nohup comando &

Monitor do Sistema: htop, systemctl

Monitora recursos do sistema e gerencia serviços.

# Visualizador de processos aprimorado (se instalado)
htop
# Verificar status do serviço
systemctl status nome_servico
# Iniciar serviço
systemctl start nome_servico
# Habilitar serviço na inicialização
systemctl enable nome_servico
# Visualizar logs do sistema
journalctl -f

Operações de Rede

Configuração de Rede: ip, ifconfig

Exibe e configura interfaces de rede.

# Mostrar interfaces de rede
ip addr show
# Mostrar tabela de roteamento
ip route show
# Configurar interface (temporário)
ip addr add 192.168.1.10/24 dev eth0
# Ativar/desativar interface
ip link set eth0 up
# Configuração de interface legada
ifconfig

Teste de Rede: ping, traceroute

Testa a conectividade de rede e rastreia rotas de pacotes.

# Testar conectividade
ping google.com
# Ping com limite de contagem
ping -c 4 192.168.1.1
# Rastrear rota até o destino
traceroute google.com
# MTR - ferramenta de diagnóstico de rede
mtr google.com
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

O que o comando ping -c 4 faz?
Pingar com tempo limite de 4 segundos
Enviar 4 pacotes ping e parar
Pingar 4 hosts diferentes
Esperar 4 segundos entre os pings

Análise de Porta e Conexão: netstat, ss

Exibe conexões de rede e portas de escuta.

# Mostrar todas as conexões
netstat -tuln
# Mostrar portas de escuta
netstat -tuln | grep LISTEN
# Substituição moderna para netstat
ss -tuln
# Mostrar processos usando portas
netstat -tulnp
# Verificar porta específica
netstat -tuln | grep :80

Transferência de Arquivos: scp, rsync

Transfere arquivos com segurança entre sistemas.

# Copiar arquivo para host remoto
scp arquivo.txt usuario@host:/caminho/
# Copiar de host remoto
scp usuario@host:/caminho/arquivo.txt ./
# Sincronizar diretórios
rsync -avz localdir/ usuario@host:/remotedir/
# Rsync com progresso
rsync -avz --progress origem/ destino/

Processamento de Texto e Pesquisa

Pesquisa de Texto: grep

Pesquisa por padrões em arquivos e saída de comandos.

# Pesquisar por padrão em arquivo
grep "padrao" nome_arquivo
# Pesquisa sem distinção entre maiúsculas e minúsculas
grep -i "padrao" nome_arquivo
# Pesquisa recursiva em diretórios
grep -r "padrao" /caminho/
# Mostrar números de linha
grep -n "padrao" nome_arquivo
# Contar linhas correspondentes
grep -c "padrao" nome_arquivo
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Qual opção do grep realiza uma pesquisa sem distinção entre maiúsculas e minúsculas?
-i
-c
-n
-r

Manipulação de Texto: sed, awk

Edita e processa texto usando editores de fluxo e analisadores de padrões.

# Substituir texto em arquivo
sed 's/antigo/novo/g' nome_arquivo
# Excluir linhas contendo padrão
sed '/padrao/d' nome_arquivo
# Imprimir campos específicos
awk '{print $1, $3}' nome_arquivo
# Somar valores em uma coluna
awk '{soma += $1} END {print soma}' nome_arquivo

Ordenar e Contar: sort, uniq, wc

Ordena dados, remove duplicatas e conta linhas, palavras ou caracteres.

# Ordenar conteúdo do arquivo
sort nome_arquivo
# Ordenar numericamente
sort -n numeros.txt
# Remover linhas duplicadas
uniq nome_arquivo
# Ordenar e remover duplicatas
sort nome_arquivo | uniq
# Contar linhas, palavras, caracteres
wc nome_arquivo
# Contar apenas linhas
wc -l nome_arquivo

Cortar e Colar: cut, paste

Extrai colunas específicas e combina arquivos.

# Extrair primeira coluna
cut -d',' -f1 arquivo.csv
# Extrair intervalo de caracteres
cut -c1-10 nome_arquivo
# Combinar arquivos lado a lado
paste arquivo1.txt arquivo2.txt
# Usar delimitador personalizado
cut -d':' -f1,3 /etc/passwd

Arquivo e Compressão

Criar Arquivos: tar

Cria e extrai arquivos compactados.

# Criar arquivo tar
tar -cf arquivo.tar arquivos/
# Criar arquivo compactado
tar -czf arquivo.tar.gz arquivos/
# Extrair arquivo
tar -xf arquivo.tar
# Extrair arquivo compactado
tar -xzf arquivo.tar.gz
# Listar conteúdo do arquivo
tar -tf arquivo.tar

Compressão: gzip, zip

Comprime e descomprime arquivos usando vários algoritmos.

# Comprimir arquivo com gzip
gzip nome_arquivo
# Descomprimir arquivo gzip
gunzip nome_arquivo.gz
# Criar arquivo zip
zip arquivo.zip arquivo1 arquivo2
# Extrair arquivo zip
unzip arquivo.zip
# Listar conteúdo do zip
unzip -l arquivo.zip

Arquivos Avançados: Opções tar

Operações avançadas de tar para backup e restauração.

# Criar arquivo com compressão
tar -czvf backup.tar.gz /home/usuario/
# Extrair para diretório específico
tar -xzf arquivo.tar.gz -C /destino/
# Adicionar arquivos a arquivo existente
tar -rf arquivo.tar novoarquivo.txt
# Atualizar arquivo com arquivos mais recentes
tar -uf arquivo.tar arquivos/

Espaço em Disco: du

Analisa o uso do disco e os tamanhos dos diretórios.

# Mostrar tamanhos de diretório
du -h /caminho/
# Resumo do tamanho total
du -sh /caminho/
# Mostrar tamanhos de todos os subdiretórios
du -h --max-depth=1 /caminho/
# Maiores diretórios primeiro
du -h | sort -hr | head -10

Monitoramento de Sistema e Desempenho

Uso de Memória: free, vmstat

Monitora o uso de memória e estatísticas de memória virtual.

# Resumo do uso de memória
free -h
# Estatísticas detalhadas de memória
cat /proc/meminfo
# Estatísticas de memória virtual
vmstat
# Uso de memória a cada 2 segundos
vmstat 2
# Mostrar uso de swap
swapon --show

Disco I/O: iostat, iotop

Monitora o desempenho de entrada/saída do disco e identifica gargalos.

# Estatísticas de I/O (requer sysstat)
iostat
# Estatísticas de I/O a cada 2 segundos
iostat 2
# Monitorar I/O de disco por processo
iotop
# Mostrar uso de I/O para dispositivo específico
iostat -x /dev/sda

Carga do Sistema: top, htop

Monitora a carga do sistema, uso da CPU e processos em execução.

# Monitor de processos em tempo real
top
# Visualizador de processos aprimorado
htop
# Mostrar médias de carga
uptime
# Mostrar informações da CPU
lscpu
# Monitorar processo específico
top -p PID

Arquivos de Log: journalctl, dmesg

Visualiza e analisa logs do sistema para solução de problemas.

# Visualizar logs do sistema
journalctl
# Seguir logs em tempo real
journalctl -f
# Mostrar logs para serviço específico
journalctl -u nome_servico
# Mensagens do Kernel
dmesg
# Mensagens do último boot
dmesg | tail

Gerenciamento de Usuários e Permissões

Operações de Usuário: useradd, usermod, userdel

Cria, modifica e exclui contas de usuário.

# Adicionar novo usuário
useradd nome_usuario
# Adicionar usuário com diretório home
useradd -m nome_usuario
# Modificar conta de usuário
usermod -aG grupo_nome nome_usuario
# Excluir conta de usuário
userdel nome_usuario
# Excluir conta de usuário com diretório home
userdel -r nome_usuario

Gerenciamento de Grupo: groupadd, groups

Cria e gerencia grupos de usuários.

# Criar novo grupo
groupadd nome_grupo
# Mostrar grupos do usuário
groups nome_usuario
# Mostrar todos os grupos
cat /etc/group
# Adicionar usuário ao grupo
usermod -aG grupo_nome nome_usuario
# Mudar grupo primário do usuário
usermod -g grupo_nome nome_usuario

Mudar Usuários: su, sudo

Muda de usuário e executa comandos com privilégios elevados.

# Mudar para usuário root
su -
# Mudar para usuário específico
su - nome_usuario
# Executar comando como root
sudo comando
# Executar comando como usuário específico
sudo -u nome_usuario comando
# Editar arquivo sudoers
visudo

Gerenciamento de Senha: passwd, chage

Gerencia senhas de usuário e políticas de conta.

# Mudar senha
passwd
# Mudar senha de outro usuário (como root)
passwd nome_usuario
# Mostrar informações de envelhecimento da senha
chage -l nome_usuario
# Definir expiração de senha
chage -M 90 nome_usuario
# Forçar mudança de senha no próximo login
passwd -e nome_usuario

Gerenciamento de Pacotes

APT (Debian/Ubuntu): apt, apt-get

Gerencia pacotes em sistemas baseados em Debian.

# Atualizar lista de pacotes
apt update
# Atualizar todos os pacotes
apt upgrade
# Instalar pacote
apt install nome_pacote
# Remover pacote
apt remove nome_pacote
# Pesquisar por pacotes
apt search nome_pacote
# Mostrar informações do pacote
apt show nome_pacote

YUM/DNF (RHEL/Fedora): yum, dnf

Gerencia pacotes em sistemas baseados em Red Hat.

# Instalar pacote
yum install nome_pacote
# Atualizar todos os pacotes
yum update
# Remover pacote
yum remove nome_pacote
# Pesquisar por pacotes
yum search nome_pacote
# Listar pacotes instalados
yum list installed

Pacotes Snap: snap

Instala e gerencia pacotes snap em várias distribuições.

# Instalar pacote snap
snap install nome_pacote
# Listar snaps instalados
snap list
# Atualizar pacotes snap
snap refresh
# Remover pacote snap
snap remove nome_pacote
# Pesquisar pacotes snap
snap find nome_pacote

Pacotes Flatpak: flatpak

Gerencia aplicações Flatpak para software em sandbox.

# Instalar flatpak
flatpak install nome_pacote
# Listar flatpaks instalados
flatpak list
# Atualizar pacotes flatpak
flatpak update
# Remover flatpak
flatpak uninstall nome_pacote
# Pesquisar pacotes flatpak
flatpak search nome_pacote

Shell e Scripting

Histórico de Comandos: history

Acessa e gerencia o histórico da linha de comando.

# Mostrar histórico de comandos
history
# Mostrar últimos 10 comandos
history 10
# Executar comando anterior
!!
# Executar comando por número
!123
# Pesquisar histórico interativamente
Ctrl+R

Aliases e Funções: alias

Cria atalhos para comandos usados com frequência.

# Criar alias
alias ll='ls -la'
# Mostrar todos os aliases
alias
# Remover alias
unalias ll
# Tornar alias permanente (adicionar a .bashrc)
echo "alias ll='ls -la'" >> ~/.bashrc

Redirecionamento de Entrada/Saída

Redireciona a entrada e saída de comandos para arquivos ou outros comandos.

# Redirecionar saída para arquivo
comando > saida.txt
# Anexar saída ao arquivo
comando >> saida.txt
# Redirecionar entrada de arquivo
comando < entrada.txt
# Redirecionar stdout e stderr
comando &> saida.txt
# Enviar saída para outro comando
comando1 | comando2

Configuração de Ambiente: .bashrc, .profile

Configura o ambiente do shell e scripts de inicialização.

# Editar configuração bash
nano ~/.bashrc
# Recarregar configuração
source ~/.bashrc
# Definir variável de ambiente
export VARIAVEL=valor
# Adicionar ao PATH
export PATH=$PATH:/novo/caminho
# Mostrar variáveis de ambiente
printenv

Instalação e Configuração do Sistema

Opções de Distribuição: Ubuntu, CentOS, Debian

Escolhe e instala distribuições Linux para diferentes casos de uso.

# Ubuntu Server
wget ubuntu-server.iso
# CentOS Stream
wget centos-stream.iso
# Debian Estável
wget debian.iso
# Verificar integridade da ISO
sha256sum linux.iso

Inicialização e Instalação: USB, Rede

Cria mídia inicializável e realiza a instalação do sistema.

# Criar USB inicializável (Linux)
dd if=linux.iso of=/dev/sdX bs=4M
# Criar USB inicializável (multiplataforma)
# Use ferramentas como Rufus, Etcher ou UNetbootin
# Instalação em rede
# Configurar boot PXE para instalações de rede

Configuração Inicial: Usuários, Rede, SSH

Configura a configuração básica do sistema após a instalação.

# Definir nome do host
hostnamectl set-hostname novo_nome
# Configurar IP estático
# Editar /etc/netplan/ (Ubuntu) ou /etc/network/interfaces
# Habilitar serviço SSH
systemctl enable ssh
systemctl start ssh
# Configurar firewall
ufw enable
ufw allow ssh

Segurança e Melhores Práticas

Configuração de Firewall: ufw, iptables

Configura regras de firewall para proteger o sistema contra ameaças de rede.

# Habilitar firewall UFW
ufw enable
# Permitir porta específica
ufw allow 22/tcp
# Permitir serviço por nome
ufw allow ssh
# Negar acesso
ufw deny 23
# Mostrar status do firewall
ufw status verbose
# Regras avançadas com iptables
iptables -L

Integridade de Arquivos: checksums

Verifica a integridade dos arquivos e detecta alterações não autorizadas.

# Gerar checksum MD5
md5sum nome_arquivo
# Gerar checksum SHA256
sha256sum nome_arquivo
# Verificar checksum
sha256sum -c checksums.txt
# Criar arquivo de checksum
sha256sum *.txt > checksums.txt

Atualizações do Sistema: Patches de Segurança

Mantém o sistema seguro com atualizações regulares e patches de segurança.

# Atualizações de segurança do Ubuntu
apt update && apt upgrade
# Atualizações de segurança automáticas
unattended-upgrades
# Atualizações CentOS/RHEL
yum update --security
# Listar atualizações disponíveis
apt list --upgradable

Monitoramento de Logs: Eventos de Segurança

Monitora logs do sistema para eventos de segurança e anomalias.

# Monitorar logs de autenticação
tail -f /var/log/auth.log
# Verificar tentativas de login falhas
grep "Failed password" /var/log/auth.log
# Monitorar logs do sistema
tail -f /var/log/syslog
# Ver histórico de login
last
# Verificar atividades suspeitas
journalctl -p err

Solução de Problemas e Recuperação

Problemas de Inicialização: Recuperação do GRUB

Recupera problemas de carregador de inicialização e kernel.

# Inicializar a partir do modo de resgate
# Acessar menu GRUB durante a inicialização
# Montar sistema de arquivos raiz
mount /dev/sda1 /mnt
# Chroot para o sistema
chroot /mnt
# Reinstalar GRUB
grub-install /dev/sda
# Atualizar configuração do GRUB
update-grub

Reparo do Sistema de Arquivos: fsck

Verifica e repara corrupção do sistema de arquivos.

# Verificar sistema de arquivos
fsck /dev/sda1
# Forçar verificação do sistema de arquivos
fsck -f /dev/sda1
# Reparo automático
fsck -y /dev/sda1
# Verificar todos os sistemas de arquivos montados
fsck -A

Problemas de Serviço: systemctl

Diagnostica e corrige problemas relacionados a serviços.

# Verificar status do serviço
systemctl status nome_servico
# Visualizar logs do serviço
journalctl -u nome_servico
# Reiniciar serviço com falha
systemctl restart nome_servico
# Habilitar serviço na inicialização
systemctl enable nome_servico
# Listar serviços com falha
systemctl --failed

Problemas de Desempenho: Análise de Recursos

Identifica e resolve gargalos de desempenho do sistema.

# Verificar espaço em disco
df -h
# Monitorar uso de I/O
iotop
# Verificar uso de memória
free -h
# Identificar uso de CPU
top
# Listar arquivos abertos
lsof