まあ、大きくなりすぎて削除/バックアップする必要がある 1 つ (または複数) のログファイルだと思います。最初に大きなファイルを探すことをお勧めします。したがって、10 MB
より大きいすべてのファイルを見つけます (10 MB で十分なファイル サイズです。同様に 1 MB の場合は +1M を選択できます)
sudo find / -type f -size +10M -exec ls -lh {} \;
これで、問題の原因を特定し、それに応じて対処できるようになりました。
元の du -a / | sort -n -r | head -n 10
について サイズで並べ替えているため、このコマンドは機能しません。そのため、大きなファイルのすべての祖先ディレクトリはピラミッドを上っていきますが、個々のファイルはおそらく見落とされます。
注:見つけたファイルの場所に同様の他のログ ファイル/バイナリが発生していることに気付くのは非常に簡単なはずなので、提案として cd
を実行してください。 元のファイルを含むディレクトリに移動して、同じ種類のファイルをさらにクリーンアップします。サイズが 1MB
を超えるファイルに対してコマンドを繰り返し使用することもできます 次、など。
巨大なファイルを見つけることができない場合は、いくつかのプロセスを強制終了すると問題が解決する可能性があります(私にとってはうまくいきました。理由を知るには完全な回答を読んでください)
以前:
/dev/xvda1 8256952 7837552 0 100% /
今
/dev/xvda18256952 1062780 6774744 14% /
理由: rm <filename>
を実行する場合 現在任意のプロセスによって開かれているファイルでは、ファイルは削除されず、プロセスはまだファイルに書き込んでいる可能性があります。これらのゴースト ファイルは find
では見つかりません コマンドで削除できません。このコマンドを使用して、削除されたファイルを使用しているプロセスを見つけます:
lsof +L1
プロセスを強制終了してファイルを解放します。ファイルを使用しているすべてのプロセスを強制終了するのが難しい場合があります。システムを再起動してみてください (気分が悪いですが、削除されたファイルを使用するプロセスがないことを確認するための簡単な解決策です)
これを読んでください:https://serverfault.com/questions/232525/df-in-linux-not-showing-correct-free-space-after-file-removal/232526
/
で 、 du -hs *
と入力します root
として :
$ sudo su -
cd /; du -hs *
すべてのフォルダのフル サイズが表示され、より大きなフォルダが識別されます。