Como limpar arquivos temporários e liberar espaço em disco no Ubuntu com segurança: cache do apt, logs, kernels antigos, snaps e o /tmp.
Disco cheio derruba banco de dados, trava atualizações e impede o login em alguns casos. Antes de sair apagando, descubra onde está o espaço: na maioria das vezes o culpado é um só (logs, cache do apt, um backup esquecido) e não os arquivos temporários. A ordem abaixo vai do mais seguro para o mais específico.
1. Veja quanto espaço sobra e onde ele está
df -h /
sudo du -xh --max-depth=1 / 2>/dev/null | sort -h | tail -n 15
O df mostra o uso da partição; o du lista as pastas que mais ocupam. Repita o du dentro da maior (por exemplo /var) até achar o responsável. Para navegar de forma visual, instale o ncdu:
sudo apt install ncdu
sudo ncdu -x /
2. Limpe o cache do apt e os pacotes que sobraram
sudo apt clean
sudo apt autoremove --purge
O apt clean apaga os pacotes já baixados em /var/cache/apt/archives. O autoremove --purge remove dependências que ninguém usa mais e kernels antigos, mantendo o atual e o anterior. Leia a lista antes de confirmar.
3. Reduza os logs do journal
journalctl --disk-usage
sudo journalctl --vacuum-size=200M
Isso apaga os registros mais antigos até o journal caber em 200 MB. Para manter esse limite, edite /etc/systemd/journald.conf, defina SystemMaxUse=200M e rode sudo systemctl restart systemd-journald.
4. Remova versões antigas de snaps
O Ubuntu guarda versões anteriores de cada snap. Para listar e remover as desativadas:
snap list --all | awk '/disabled/{print $1, $3}' | while read nome rev; do sudo snap remove "$nome" --revision="$rev"; done
E para guardar só duas versões de cada daqui para a frente: sudo snap set system refresh.retain=2.
5. Arquivos temporários: /tmp e /var/tmp
No Ubuntu e no Debian 12 o /tmp já é esvaziado a cada reinicialização; o /var/tmp não. Num servidor que fica meses ligado, apague só o que está parado há mais de 10 dias:
sudo find /tmp /var/tmp -xdev -type f -atime +10 ! -path '*/systemd-private-*' -delete
rm -rf /tmp/* com o servidor em uso. Programas em execução guardam ali sessões, arquivos de trabalho e sockets; apagar tudo pode derrubar sites e serviços. As pastas systemd-private-* pertencem a serviços ativos.6. No Ubuntu Desktop: miniaturas, lixeira e cache
rm -rf ~/.cache/thumbnails/*
rm -rf ~/.local/share/Trash/*
O ~/.cache inteiro também pode ser apagado com os programas fechados; os aplicativos recriam o que precisarem.
7. Arquivos grandes esquecidos
sudo find / -xdev -type f -size +500M -exec du -h {} + 2>/dev/null | sort -h
Costumam aparecer backups antigos, dumps de banco, imagens ISO e relatórios de travamento em /var/crash (podem ser apagados com sudo rm -f /var/crash/*.crash). Se você usa Docker, veja o espaço com docker system df e limpe o que não está em uso com docker system prune, lendo o aviso antes de confirmar.
O que não fazer
- Apagar
/usr/share/docna mão (o artigo antigo sugeria): economiza pouco e alguns pacotes guardam ali arquivos de exemplo usados na configuração. - Apagar um log em uso com
rm. O programa continua gravando no arquivo apagado e o espaço não volta. Para zerar um log, usesudo truncate -s 0 /var/log/arquivo.log.
Problemas comuns
Apaguei arquivos e o espaço não voltou
Algum processo ainda segura o arquivo aberto. Liste com sudo lsof +L1 e reinicie o serviço que aparece (por exemplo sudo systemctl restart apache2).
No space left on device, mas o df mostra espaço livre
Acabaram os inodes (a quantidade de arquivos), não os bytes. Confira com df -i. A causa costuma ser uma pasta com milhões de arquivos pequenos, como sessões de PHP ou cache de algum sistema.
O apt falha porque a partição /boot está cheia
Kernels antigos lotaram o /boot. Rode sudo apt autoremove --purge; se o apt estiver travado no meio de uma instalação, rode antes sudo apt --fix-broken install.