Voltar para blog
11 de fev. de 2025
8 min de leitura

Comandos essenciais para manutenção de sistemas Linux

Comandos Linux essenciais para manter sistemas Debian e Ubuntu atualizados, limpos, organizados e livres de problemas com pacotes e dependências.

Se você usa Linux para desenvolvimento, administração de servidores ou simplesmente no dia a dia, conhecer alguns comandos básicos de manutenção pode evitar muita dor de cabeça.

Este guia reúne os comandos mais úteis e atuais para sistemas baseados em Debian, como Debian e Ubuntu, utilizando principalmente o apt, que é a interface recomendada para operações interativas.

Atualizar a lista de pacotes

O primeiro passo antes de atualizar ou instalar qualquer pacote é atualizar o índice dos repositórios:

sudo apt update

Esse comando não atualiza os programas instalados. Ele apenas atualiza as informações sobre quais versões estão disponíveis nos repositórios.

Ver quais pacotes podem ser atualizados

Para verificar quais pacotes possuem novas versões disponíveis:

apt list --upgradable

É uma boa prática executar esse comando antes de uma atualização quando você quer saber exatamente o que será atualizado.

Atualizar os pacotes instalados

Para instalar as atualizações disponíveis sem remover pacotes existentes:

sudo apt upgrade

Esse costuma ser o comando mais seguro para atualizações rotineiras do sistema.

Fazer uma atualização completa

Quando uma atualização exige novas dependências ou alterações na instalação de outros pacotes, utilize:

sudo apt full-upgrade

O full-upgrade pode instalar novos pacotes ou remover pacotes quando isso for necessário para concluir a atualização corretamente. Ele é o equivalente moderno, na interface apt, ao antigo apt-get dist-upgrade.

Atualização completa + limpeza

Para uma manutenção periódica, você pode fazer:

sudo apt update
sudo apt full-upgrade
sudo apt autoremove

O autoremove remove dependências que foram instaladas automaticamente e que não são mais necessárias.

Instalar um pacote

Para instalar um programa:

sudo apt install nome-do-pacote

Por exemplo:

sudo apt install git

Você também pode instalar vários pacotes de uma vez:

sudo apt install git curl wget vim

Procurar um pacote

Se você não sabe exatamente o nome do pacote:

apt search termo

Por exemplo:

apt search docker

O apt search é especialmente útil para encontrar pacotes diretamente pelo terminal.

Ver informações de um pacote

Para consultar detalhes sobre determinado pacote:

apt show nome-do-pacote

Exemplo:

apt show git

Você poderá consultar informações como versão, descrição, dependências, tamanho e outras propriedades do pacote.

Ver a versão instalada

Para verificar a versão de um pacote instalado:

apt policy nome-do-pacote

Exemplo:

apt policy git

Esse comando é particularmente útil para descobrir qual versão está instalada e qual versão está disponível nos repositórios.

Corrigir dependências quebradas

Se o sistema apresentar problemas de dependências, tente:

sudo apt --fix-broken install

A opção --fix-broken tenta corrigir dependências quebradas e concluir instalações pendentes.

Depois, você pode verificar se ainda existem problemas:

sudo apt check

Concluir configurações de pacotes pendentes

Se uma instalação foi interrompida ou existem pacotes que ficaram parcialmente configurados:

sudo dpkg --configure -a

Depois disso, caso necessário:

sudo apt --fix-broken install

Uma sequência comum para recuperar um sistema após uma instalação interrompida é:

sudo dpkg --configure -a
sudo apt --fix-broken install
sudo apt update
sudo apt full-upgrade

Remover um pacote

Para remover um programa:

sudo apt remove nome-do-pacote

O remove desinstala o pacote, mas normalmente mantém seus arquivos de configuração.

Remover um pacote e suas configurações

Se quiser remover também os arquivos de configuração:

sudo apt purge nome-do-pacote

Use purge com atenção, especialmente em servidores, pois arquivos de configuração podem conter ajustes importantes.

Remover dependências que não são mais utilizadas

Para limpar pacotes que foram instalados automaticamente e não são mais necessários:

sudo apt autoremove

Se quiser também remover os arquivos de configuração desses pacotes:

sudo apt autoremove --purge

Limpar o cache de pacotes

Para remover os arquivos .deb armazenados no cache do APT:

sudo apt clean

Isso pode liberar espaço em disco, especialmente em sistemas que recebem muitas atualizações.

Limpar pacotes antigos do cache

Uma alternativa mais conservadora é:

sudo apt autoclean

Ela remove apenas arquivos de pacotes que não podem mais ser baixados dos repositórios.

Verificar se o sistema precisa ser reiniciado

Depois de algumas atualizações, principalmente de kernel e componentes importantes do sistema, pode ser necessário reiniciar.

No Ubuntu, você pode verificar:

test -f /run/reboot-required && echo "Reinicialização necessária" || echo "Não é necessário reiniciar"

Se for necessário:

sudo reboot

Verificar espaço em disco

Para descobrir quanto espaço está sendo utilizado:

df -h

Para descobrir quais diretórios estão ocupando mais espaço:

sudo du -sh /var/* 2>/dev/null

E para analisar o diretório atual:

du -sh ./* 2>/dev/null | sort -h

Esses comandos são bastante úteis quando o sistema começa a apresentar problemas por falta de espaço.

Verificar processos em execução

Para uma visão rápida dos processos:

ps aux

Para acompanhar processos em tempo real:

top

Se você tiver o htop instalado:

htop

Para instalar:

sudo apt install htop

Consultar serviços do sistema

Em distribuições modernas que utilizam systemd, você pode verificar o estado de um serviço com:

systemctl status nome-do-servico

Por exemplo:

systemctl status ssh

Para iniciar um serviço:

sudo systemctl start nome-do-servico

Para parar:

sudo systemctl stop nome-do-servico

Para reiniciar:

sudo systemctl restart nome-do-servico

E para habilitá-lo durante a inicialização:

sudo systemctl enable nome-do-servico

Você também pode combinar enable e start:

sudo systemctl enable --now nome-do-servico

Consultar logs do sistema

O journalctl é uma das ferramentas mais importantes para investigar problemas em sistemas Linux que utilizam systemd.

Ver os logs mais recentes:

journalctl -xe

Ver os logs do boot atual:

journalctl -b

Acompanhar os logs em tempo real:

journalctl -f

Ver os logs de um serviço específico:

journalctl -u nome-do-servico

Por exemplo:

journalctl -u ssh

Verificar a versão do sistema

Para descobrir informações sobre a distribuição:

cat /etc/os-release

Em Ubuntu, também é possível usar:

lsb_release -a

E para verificar a versão do kernel:

uname -r

Para obter informações mais completas:

uname -a

Um fluxo simples de manutenção

Para uma manutenção periódica em uma máquina Debian ou Ubuntu, uma sequência prática é:

sudo apt update
sudo apt upgrade
sudo apt autoremove
sudo apt autoclean

Se você quiser fazer uma atualização mais completa:

sudo apt update
sudo apt full-upgrade
sudo apt autoremove

Depois, verifique se é necessário reiniciar:

test -f /run/reboot-required && echo "Reinicialização necessária" || echo "Sistema atualizado"

Resumo dos principais comandos

ObjetivoComando
Atualizar índicessudo apt update
Ver atualizaçõesapt list --upgradable
Atualizar pacotessudo apt upgrade
Atualização completasudo apt full-upgrade
Instalar pacotesudo apt install pacote
Procurar pacoteapt search termo
Ver informaçõesapt show pacote
Ver versão/disponibilidadeapt policy pacote
Corrigir dependênciassudo apt --fix-broken install
Verificar pacotessudo apt check
Corrigir instalação interrompidasudo dpkg --configure -a
Remover pacotesudo apt remove pacote
Remover pacote + configuraçõessudo apt purge pacote
Remover dependências desnecessáriassudo apt autoremove
Limpar cachesudo apt clean
Limpar cache antigosudo apt autoclean
Reiniciar sistemasudo reboot

Conclusão

Com esses comandos, você consegue realizar praticamente toda a manutenção básica de um sistema Linux baseado em Debian, desde atualizar pacotes e instalar ferramentas até corrigir dependências, analisar serviços, consultar logs e liberar espaço em disco.

Para quem trabalha com desenvolvimento, vale a pena dominar principalmente:

apt
dpkg
systemctl
journalctl
df
du
ps
top

E lembre-se: apt update atualiza a lista de pacotes; apt upgrade atualiza os pacotes instalados; e apt full-upgrade permite alterações mais completas nas dependências do sistema.