Dicas Técnicas de Linux - PioLinux
🔧 Sobre as Dicas Técnicas de Linux
Dicas técnicas de Linux ajudam muito em horas em que tudo dá errado. Não se desespere, pois são várias dicas para ajudar a dominar o sistema operacional, arrumar erros, melhorar o desempenho e deixar os processos automatizados.
Seja você um usuário iniciante ou experiente, sempre há algo novo para aprender. Um exemplo de uma dica simples é como utilizar o comando top no terminal para monitorar processos do Sistema Linux, o que pode fazer a diferença na rotina diária.
Dicas técnicas são como um canivete suíço: práticas, muito úteis para se aventurar no mundo Linux nas horas mais difíceis.
🔧 Terminal e Shell
-
1. Alias para Comandos Longos
Crie atalhos! Use
alias gs='git status'
no seu~/.bashrc
ou~/.zshrc
. Recarregue comsource ~/.bashrc
(ou.zshrc
). -
2. Busca Reversa de Comandos
Pressione
Ctrl + R
no terminal e digite parte de um comando anterior para encontrá-lo rapidamente no histórico. -
3. Pesquisar Histórico Específico
Use
history | grep apt
para encontrar todos os comandos que você executou que contêm "apt". Útil para relembrar o que fez. -
4. Tornar Scripts Executáveis
Após criar um script shell (ex:
meuscript.sh
), dê permissão de execução comchmod +x meuscript.sh
. Depois, rode-o com./meuscript.sh
. -
5. Monitoramento em Tempo Real
O comando
watch
executa um comando repetidamente e mostra a saída. Ex:watch -n 1 'df -h'
mostra o uso de disco a cada segundo. -
6. Auto-completar com TAB
Sempre use a tecla
TAB
para autocompletar nomes de arquivos, diretórios e comandos. Evita erros de digitação e economiza tempo. -
7. Navegar Diretórios Rapidamente
cd -
te leva de volta ao diretório anterior. Útil para alternar entre dois caminhos frequentemente usados. -
8. Limpar a Tela do Terminal
Use
clear
ou o atalhoCtrl + L
para limpar a tela do terminal, deixando-o mais organizado. -
9. Executar Comandos com `sudo`
Para executar um comando como superusuário, use
sudo
antes dele. Ex:sudo apt update
. Sempre use com cautela! -
10. Ver Conteúdo de Arquivos
Use
cat <arquivo>
para ver o conteúdo de um arquivo. Para arquivos grandes,less <arquivo>
é melhor (use setas eq
para sair). -
11. Renomear/Mover Arquivos
O comando
mv <origem> <destino>
serve tanto para mover quanto para renomear arquivos e diretórios. -
12. Copiar Arquivos e Diretórios
Use
cp <origem> <destino>
para copiar arquivos. Para copiar diretórios e seu conteúdo, usecp -r <origem_dir> <destino_dir>
. -
13. Remover Arquivos e Diretórios
rm <arquivo>
remove um arquivo. Para diretórios (e seu conteúdo), userm -r <diretorio>
. Cuidado, pois não vai para a lixeira! -
14. Criar Diretórios Aninhados
Use
mkdir -p pasta/subpasta/subsubpasta
para criar múltiplos diretórios aninhados de uma vez, sem precisar criar um por um. -
15. Mostrar o Manual de um Comando
Sempre que tiver dúvida sobre um comando, digite
man <comando>
para ver seu manual completo. Ex:man ls
. -
16. Redirecionar Saída para um Arquivo
Use
>
para redirecionar a saída de um comando para um arquivo (cria ou sobrescreve) e>>
para adicionar ao final do arquivo.ls -l > lista.txt echo "Nova linha" >> lista.txt
-
17. Utilizar Comandos com `&&` e `||`
comando1 && comando2
executa o `comando2` APENAS se `comando1` for bem-sucedido.comando1 || comando2
executa o `comando2` APENAS se `comando1` FALHAR. -
18. Executar Comandos em Segundo Plano
Adicione `&` ao final de um comando para executá-lo em segundo plano, liberando o terminal. Ex:
firefox &
. -
19. Matar Processos por Nome ou PID
Use
kill <PID>
para matar um processo pelo ID. Para matar por nome, usepkill <nome_do_processo>
oukillall <nome_do_processo>
. -
20. Ver Uso de Disco e Diretórios
df -h
mostra o espaço livre em partições.du -sh *
mostra o tamanho de cada pasta no diretório atual.
📦 Gerenciamento de Pacotes
-
21. Atualizar e Fazer Upgrade (Debian/Ubuntu)
Sempre use
sudo apt update && sudo apt upgrade -y
para manter seu sistema e pacotes atualizados e seguros. -
22. Limpar Pacotes Não Usados (Debian/Ubuntu)
Após desinstalar softwares, use
sudo apt autoremove
para remover dependências que não são mais necessárias e liberar espaço. -
23. Limpar Cache de Pacotes (Debian/Ubuntu)
Para liberar espaço, use
sudo apt clean
. Isso remove os arquivos de pacote (`.deb`) baixados que estão no cache. -
24. Instalar Pacotes Específicos (Debian/Ubuntu)
Use
sudo apt install <nome_do_pacote>
. Você pode instalar múltiplos pacotes de uma vez:sudo apt install firefox vlc
. -
25. Remover Pacotes (Debian/Ubuntu)
sudo apt remove <nome_do_pacote>
desinstala o programa. Adicione--purge
(sudo apt purge <pacote>
) para remover também os arquivos de configuração. -
26. Procurar Pacotes (Debian/Ubuntu)
Use
apt search <termo>
para encontrar pacotes disponíveis nos repositórios que correspondem à sua busca. -
27. Detalhes de um Pacote (Debian/Ubuntu)
Para ver informações detalhadas sobre um pacote antes de instalar, use
apt show <nome_do_pacote>
. -
28. Usar o Yay no Arch Linux (AUR)
No Arch e derivados, o
yay
é um helper para o AUR (Arch User Repository). Useyay -S <nome_do_pacote>
para instalar pacotes não oficiais. -
29. Limpar Cache no Fedora (DNF)
Para sistemas baseados em Fedora, use
sudo dnf clean all
para limpar o cache de pacotes baixados e metadados. -
30. Instalar Pacotes no Fedora (DNF)
O gerenciador de pacotes padrão é o DNF. Use
sudo dnf install <nome_do_pacote>
para instalar softwares. -
31. Desinstalar Pacotes no Fedora (DNF)
Para remoção um pacote no Fedora, utilize o comando
sudo dnf remove <nome_do_pacote>
. -
32. Atualizar Sistema no Fedora (DNF)
Mantenha seu Fedora atualizado com
sudo dnf upgrade --refresh
. -
33. Gerenciamento de Pacotes Universal (Snap)
Snaps são pacotes universais. Use
sudo snap install <app>
para instalar,snap remove <app>
para remover. Funcionam em várias distros. -
34. Gerenciamento de Pacotes Universal (Flatpak)
Flatpaks são outra opção universal. Use
flatpak install flathub <app>
. Eles oferecem isolamento e consistência entre distribuições. -
35. Ver Pacotes Instalados (Debian/Ubuntu)
Para listar todos os pacotes instalados em sistemas baseados em Debian, use
apt list --installed
.
🌐 Comandos de Rede
-
36. Encontrar Seu IP Local
Use
ip a
ouip addr
para ver seus endereços IP locais, interfaces de rede e seus estados. -
37. Encontrar Seu IP Público
Para saber seu IP que é visível na internet, use
curl ifconfig.me
oucurl ipinfo.io/ip
. -
38. Testar Conexão com a Internet
O comando
ping google.com
verifica se você tem conexão com a internet e mede o tempo de resposta. -
39. Ver Portas Abertas e Conexões
Use
sudo netstat -tulpn
para listar todas as portas de rede abertas e os programas que as estão usando. -
40. Traçar Rota de Pacotes
O comando
traceroute <destino>
(oumtr <destino>
) mostra o caminho que seus pacotes fazem até um destino, útil para diagnosticar problemas de rede. -
41. Testar Conectividade DNS
Use
dig <dominio>
ounslookup <dominio>
para consultar servidores DNS e verificar a resolução de nomes de domínio. -
42. Ver Status de Interfaces de Rede
O comando
ip link show
mostra o status de todas as suas interfaces de rede (ativas/inativas). -
43. Reiniciar o Serviço de Rede
Se tiver problemas de conexão, tente reiniciar o NetworkManager:
sudo systemctl restart NetworkManager
. -
44. Configurar um Endereço IP Temporário
Para configurar um IP manual e temporário em uma interface:
sudo ip a add 192.168.1.100/24 dev eth0
. -
45. Bloquear um IP com Iptables
Para realizar um comando de bloquear um IP, use:
sudo iptables -A INPUT -s <IP_a_bloquear> -j DROP
. Lembre-se de salvar as regras.
🛠️ Scripts e Automatização
-
46. Agendar Tarefas com Crontab
Edite seu crontab pessoal com
crontab -e
. Ex:@daily /caminho/do/seu/script.sh
executa o script uma vez por dia. -
47. Criar Backups com Rsync
O
rsync
é excelente para backups incrementais e sincronização:rsync -avz /origem /destino
. O `z` comprime dados. -
48. Compactar e Descompactar Arquivos
Use
tar -cvf backup.tar.gz /pasta_a_comprimir
para compactar etar -xvf backup.tar.gz
para descompactar. -
49. Criar um Serviço Customizado com Systemd
Crie um arquivo `.service` em
/etc/systemd/system/
para automatizar a inicialização de scripts ou aplicativos no boot. -
50. Filtrar Texto com `grep`
grep -r "termo" /caminho/da/pasta
busca recursivamente por "termo" em todos os arquivos da pasta. Use-i
para ignorar caixa. -
51. Transformar Texto com `sed`
O `sed` é um editor de fluxo. Ex:
sed 's/antigo/novo/g' arquivo.txt
substitui todas as ocorrências de "antigo" por "novo" em um arquivo. -
52. Processar Dados com `awk`
awk '{print $1}' arquivo.txt
imprime a primeira coluna de cada linha de um arquivo. Muito poderoso para relatórios e extração de dados. -
53. Laços de Repetição em Bash
Exemplo de loop `for`:
for i in $(ls); do echo "Arquivo: $i"; done
Itera sobre a saída do
ls
. -
54. Condicionais em Bash
Use `if` para lógica condicional:
if [ -f "arquivo.txt" ]; then echo "Existe!"; fi
Verifica se `arquivo.txt` é um arquivo.
-
55. Capturar Saída de Comando em Variável
Use `$()` ou backticks `` ` ``:
MINHA_VAR=$(ls -l)
. Isso armazena a saída do comando em uma variável para uso posterior no script.
🖥️ Desenvolvimento Web com Linux
-
56. Servidor HTTP Rápido para Testes
Para testar arquivos HTML/CSS/JS localmente, navegue até a pasta do seu projeto e execute
python3 -m http.server
. Acessehttp://localhost:8000
. -
57. Hospede Sites Grátis com Neocities
Neocities é uma excelente plataforma para hospedar sites estáticos gratuitamente. É perfeito para projetos pessoais e para aprender HTML/CSS.
-
58. Otimização SEO com Meta Tags
Utilize
<meta name="keywords">
e<meta name="description">
em seu HTML para ajudar motores de busca a entenderem o conteúdo da sua página. -
59. Instalar Node.js e NPM
Para desenvolvimento JavaScript, instale Node.js e NPM (Node Package Manager). Use `nvm` (Node Version Manager) para gerenciar múltiplas versões.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash nvm install node
-
60. Configurar Ambiente PHP/Apache
Para desenvolvimento PHP, instale Apache e PHP:
sudo apt install apache2 php libapache2-mod-php php-mysql
(Debian/Ubuntu). -
61. Usar Docker para Ambientes Dev Isolados
Crie ambientes de desenvolvimento web isolados usando Docker. Isso garante que suas dependências de projeto não entrem em conflito com as do sistema.
-
62. Ferramentas de Linha de Comando Web
Use
curl
para testar APIs,wget
para baixar arquivos,jq
para parsear JSON ehttpie
como um cliente HTTP amigável no terminal. -
63. Editores de Código para Web Dev
VS Code com suas extensões para HTML, CSS, JavaScript e frameworks é uma escolha excelente e popular para desenvolvimento web no Linux.
-
64. Versionamento de Código com Git
Use Git para controlar versões do seu código e colaborar em projetos. Essencial para qualquer desenvolvedor.
-
65. Live Reloading com BrowserSync
Para ver as mudanças no navegador automaticamente ao salvar arquivos (HTML, CSS, JS), instale e configure o BrowserSync (via npm).
🗄️ Sistema de Arquivos
-
66. Entender Permissões de Arquivos
As permissões são
rwx
(read, write, execute) para proprietário, grupo e outros. Usechmod
para alterá-las (ex:chmod 755 script.sh
). -
67. Alterar Proprietário e Grupo
Utilize
sudo chown <usuario>:<grupo> <arquivo>
para mudar o proprietário e o grupo de um arquivo ou diretório. -
68. Criar Links Simbólicos
ln -s <destino_original> <link_simbolico>
cria um atalho (link simbólico) para um arquivo ou diretório, útil para organizar o sistema. -
69. Montar Partições e Dispositivos
Use
sudo mount /dev/sdb1 /mnt/meu_pendrive
para montar dispositivos. Para desmontar,sudo umount /mnt/meu_pendrive
. -
70. Procurar Arquivos por Nome
O comando `find` é poderoso. Ex:
find /home -name "*.txt"
procura todos os arquivos `.txt` no diretório `/home`. -
71. Ver Tipo de Arquivo
Use
file <arquivo>
para determinar o tipo de um arquivo (texto, imagem, executável, etc.) com base no seu conteúdo. -
72. Compactar e Descompactar Tar.gz
Para criar:
tar -czvf arquivo.tar.gz /pasta/
. Para extrair:tar -xzvf arquivo.tar.gz
. -
73. Sincronizar Relógio do Sistema
Utilize `timedatectl set-ntp true` para sincronizar o relógio do sistema com servidores NTP (Network Time Protocol).
-
74. Alterar Senha de Usuário
Para mudar sua própria senha, use
passwd
. Para mudar a senha de outro usuário (como root), usesudo passwd <usuario>
. -
75. Listar Processos por Usuário
Use
ps -fu <usuario>
para listar todos os processos sendo executados por um usuário específico.
🔒 Segurança e Privacidade
-
76. Mantenha Seu Sistema Atualizado
A primeira linha de defesa. Atualizações trazem patches de segurança essenciais. Não ignore as notificações de update.
-
77. Use Senhas Fortes e Únicas
Combine letras maiúsculas/minúsculas, números e símbolos. Use um gerenciador de senhas como KeepassXC.
-
78. Habilite o Firewall (UFW)
Se sua distro não vem com um firewall ativado, use o UFW para controle simples e eficaz de portas.
sudo ufw enable
. -
79. Use Criptografia de Disco
Cripte seu disco rígido durante a instalação do Linux. Isso protege seus dados se o dispositivo for perdido ou roubado.
-
80. Acesse Remotamente com SSH Keys
Em vez de senha, use chaves SSH para acesso remoto. Mais seguro e conveniente. Gere com
ssh-keygen
. -
81. Verifique Logs do Sistema
Monitore logs em
/var/log/
ou usejournalctl
para procurar atividades suspeitas ou erros do sistema. -
82. Instale Software de Fontes Confiáveis
Prefira repositórios oficiais da sua distribuição ou Flatpaks/Snaps. Evite baixar executáveis de fontes desconhecidas.
-
83. Verifique Somas de Verificação (Checksums)
Ao baixar ISOs ou pacotes, verifique o checksum (MD5, SHA256) para garantir que o arquivo não foi corrompido ou adulterado.
sha256sum <arquivo.iso>
-
84. Desabilite Serviços Desnecessários
Serviços rodando em segundo plano podem ser um risco. Desabilite o que você não usa com
sudo systemctl disable <serviço>
. -
85. Tenha um Bom Backup Estratégico
A melhor segurança contra perda de dados. Siga a regra 3-2-1: 3 cópias, 2 mídias diferentes, 1 fora do local.
⚡ Hardware e Desempenho
-
86. Monitore Uso de CPU/Memória
Use
top
,htop
ou o monitor de sistema da sua interface gráfica para ver o uso de recursos em tempo real. -
87. Gerencie o Consumo de Energia
Instale
TLP
para otimizar o uso de bateria em notebooks:sudo apt install tlp tlp-rdw
esudo tlp start
. -
88. Verifique Informações do Hardware
Use
lshw
para listar informações detalhadas do hardware.lspci
para dispositivos PCI,lsusb
para USB. -
89. Otimize a Troca (Swap)
Ajuste o `swappiness` (padrão 60) para controlar a frequência de uso da swap. Um valor menor (ex: 10) faz o sistema preferir a RAM.
sudo sysctl vm.swappiness=10 echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
-
90. Limpe Arquivos Temporários
Regularmente limpe
/tmp
e caches de navegador para liberar espaço e melhorar o desempenho geral do sistema. -
91. Use um Ambiente de Desktop Leve
Se seu hardware é antigo, considere XFCE, LXQt, MATE. Eles consomem menos RAM e CPU que GNOME ou KDE Plasma.
-
92. Gerencie Início de Aplicativos
Desabilite aplicativos que iniciam automaticamente com o sistema e que você não usa. Isso acelera o boot e libera recursos.
-
93. Verifique a Saúde do Disco
Use
smartctl
(parte do pacote smartmontools) para verificar a saúde do seu SSD ou HDD. Ex:sudo smartctl -a /dev/sda
. -
94. Ajuste Prioridade de Processos (`nice` e `renice`)
Use `nice -n 10 <comando>` para iniciar um processo com menor prioridade, ou `renice -n 10 -p <PID>` para alterar a prioridade de um processo rodando.
-
95. Monitore Temperatura da CPU/GPU
Instale `lm-sensors` e `fancontrol`. Use `sensors` para ver temperaturas. Essencial para evitar superaquecimento, especialmente em notebooks.
⚙️ Admin e Servidores
-
96. Gerenciar Usuários e Grupos
sudo useradd <nome>
,sudo usermod -aG <grupo> <usuario>
,sudo userdel <nome>
são comandos essenciais para gerenciar contas de usuário. -
97. Comprimir Logs para Economizar Espaço
Configure `logrotate` para compactar e arquivar logs antigos, evitando que preencham seu disco. O padrão geralmente já está configurado.
-
98. Montar Partições Automaticamente
Edite o arquivo
/etc/fstab
para montar partições automaticamente no boot do sistema. Cuidado ao editar, um erro pode impedir o boot. -
99. Sincronizar Arquivos Entre Servidores
Use
rsync -avzP <origem> <usuario@destino:/caminho>
para copiar arquivos de forma eficiente e segura via SSH entre servidores. -
100. Ver Uso de Portas Abertas (Servidor)
Em servidores,
sudo lsof -i -P -n
pode mostrar quais processos estão usando quais portas. Útil para diagnóstico de serviços.