‘No space left on device’ nem sempre significa que ficheiros grandes ocuparam toda a capacidade. Os inodes disponíveis também podem esgotar-se. Estes comandos de leitura aplicam-se a GNU/Linux com GNU Coreutils. Substitua /var pelo caminho existente afetado.
Passo a passo
- Registe o erro completo e o caminho onde a aplicação tentou escrever. Use
df -h /varpara examinar o respetivo sistema de ficheiros. Veja espaço disponível e ponto de montagem; espaço livre noutro sistema de ficheiros não ajuda aqui. - Execute
df -i /var. Compare IFree e IUse% com a utilização de blocos. Muitos ficheiros pequenos podem esgotar os inodes. Nem todos os sistemas de ficheiros apresentam um limite fixo de inodes da mesma forma. - Localize o uso com
du -x -h --max-depth=1 /var. O comando soma ficheiros acessíveis e permanece nesse sistema de ficheiros. Pode ler muitos diretórios e demorar em discos grandes. Falta de permissões de leitura torna o resultado incompleto. - Para muitos ficheiros pequenos,
du -x --inodes --max-depth=1 /varpode ajudar a comparar diretórios. Aprofunde apenas a árvore suspeita. Não remova indiscriminadamente ficheiros de registos, bases de dados ou contentores. - Documente diferenças grandes entre df e du. Ficheiros apagados ainda abertos, snapshots, espaço reservado, permissões distintas ou contabilidade específica exigem análise direcionada. Não reinicie serviços imediatamente por esse motivo.
Verificar o resultado
Repita df -h e df -i no mesmo caminho depois de uma limpeza ou expansão justificada, planeada e executada separadamente. Teste a aplicação original. Se persistir, verifique quotas, montagens só de leitura e o sistema de ficheiros do ambiente real, como um contentor.
Reverter e limitações
Estes comandos de diagnóstico não apagam dados. Conserve os resultados, mas reveja nomes de caminhos confidenciais antes de partilhar. Apagar não é automaticamente reversível: esclareça primeiro responsabilidade, retenção e recuperação.
