Guia · Servidores Linux

Disco cheio em servidor Linux:descubra o que está usando o espaço

Um disco cheio geralmente tem uma ou duas causas óbvias. Trabalhe de cima para baixo, leia antes de apagar e nunca remova arquivos em /var/lib manualmente, a menos que saiba a qual serviço eles pertencem.

← Todos os guias

1. Confirme qual sistema de arquivos está cheio

Execute df -h. Observe a coluna Use% e a coluna Mounted on: o sistema de arquivos cheio pode ser o / ou uma montagem separada, como /var, /home ou /data, e limpar o errado não muda nada.

Execute também df -i. Um sistema de arquivos pode ter espaço livre, mas nenhum inode livre, o que acontece quando milhões de arquivos pequenos se acumulam (sessões, filas de e-mail, arquivos de cache). Se IUse% estiver perto de 100%, você está procurando muitos arquivos pequenos, não alguns arquivos grandes.

2. Encontre os maiores diretórios

Execute sudo du -xh --max-depth=1 / | sort -h e leia as últimas linhas. A opção -x permanece em um único sistema de arquivos, então discos montados e sistemas de arquivos virtuais não distorcem o resultado. Repita dentro do maior diretório, por exemplo sudo du -xh --max-depth=1 /var | sort -h.

Se o ncdu estiver instalado (sudo apt install ncdu no Debian e no Ubuntu), sudo ncdu -x / permite navegar pelos mesmos dados de forma interativa.

3. Verifique se há arquivos excluídos que ainda estão abertos

Se o du mostra bem menos que o df, algum processo pode ainda estar mantendo aberto um arquivo excluído, geralmente um log grande. sudo lsof +L1 lista os arquivos abertos com contagem de links igual a zero. O espaço é liberado quando esse processo fecha o arquivo, o que normalmente significa reiniciar o serviço responsável por ele. Faça isso em um momento tranquilo, não no meio de um pico de requisições.

4. Revise os suspeitos de sempre

Logs: verifique /var/log e consulte o journal com journalctl --disk-usage. Veja nosso guia sobre como limitar o tamanho do journald se ele estiver grande.

Pacotes: sudo apt clean remove os arquivos de pacotes baixados; sudo apt autoremove lista pacotes e kernels antigos que não são mais necessários e mostra o que será removido antes de você confirmar. Mantenha o kernel em execução e uma versão anterior.

Docker: docker system df mostra imagens, contêineres, volumes e cache de build. docker system prune remove contêineres parados, redes não utilizadas e imagens pendentes (dangling); não remove volumes, a menos que você adicione --volumes, então leia o aviso antes de responder.

Snap: snap list --all mostra revisões antigas de snaps que estão desativadas e que podem ser removidas uma a uma com snap remove NAME --revision=NUMBER.

5. Depois de liberar espaço

Execute df -h novamente e verifique se os serviços que pararam por causa do disco cheio estão em execução (systemctl --failed). Um banco de dados que chegou a um disco cheio pode precisar de uma reinicialização ou de uma verificação antes de você confiar nele.

Em seguida, defina um limite para que isso não se repita: rotação de logs, um limite do journald e um alerta antes que o disco chegue a 90%.

Want a clearer view of storage and maintenance across your Linux servers?RainServer combines a lightweight agent with a cloud dashboard for VPS monitoring and maintenance.Try RainServer free for 7 days →  ·  All guides →

Última atualização: 2026-10-03

Perguntas rápidas

Leia a seguir

Baixar

Experimente na sua própria máquina.

Grátis, sem conta, sem assinatura. Windows 10 e 11.