web-dev-qa-db-ja.com

Ubuntu 18.04サーバーパーティションがランダムにいっぱいになる

次の問題が発生しています。

パーティション/dev/sda1は90%または100%ランダムに使用されています。通常は47%と50%ですが、なぜ100%になることがあるのか​​わかりません。

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           796M  692K  795M   1% /run
/dev/sda1        29G   14G   16G  48% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda15      105M  3.6M  101M   4% /boot/efi
tmpfs           796M     0  796M   0% /run/user/1000

これは少なくとも週末に1回発生します。私の解決策は、rebootと入力して、コマンドラインからOSを再起動することですが、サーバーにとってそれは正常ではありません。

その理由は何でしょうか?

1
Oscar Vazquez

あなたの説明に合うものは:

/tmpディレクトリは、サーバーで実行されているアプリケーションによって使い果たされ、いっぱいになります。 /tmpディレクトリは再起動時に空になります...したがって、パーティションサイズが小さくなります。

/tmpディレクトリの使用状況を確認するには、ターミナルで次のコマンドを実行します。

Sudo du -hsc /tmp

/tmpディレクトリの使用状況をリアルタイムで監視するには、ターミナルで次のコマンドを実行してください:

Sudo watch du -hsc /tmp

リアルタイムで終了するには、を押してください CtrlC


再起動せずに/tmpディレクトリを空にするには、ターミナルで次のコマンドを実行してください:

Sudo rm -rf /tmp/{*,.??*}

bash: /usr/bin/Sudo: Argument list too longのようなエラーが発生した場合、これは/tmpディレクトリにさらにファイルが含まれており、rmが一度に処理できることを意味します。これを克服するには、ターミナルで次のコマンドを実行してください:

Sudo find /tmp/{*,.??*} -exec rm -rf {} \;

この操作中にNo such file or directory.のようなエラーが発生した場合は、/tmpディレクトリでシステムによってファイルが常に追加および削除されているため、それらを無視してください。


これで問題が解決する場合:

Cronjobを追加して、空のコマンドを毎日実行できます。


そうでない場合:

ターミナルで次のコマンドを実行して、何がスペースを消費しているかを調査することをお勧めします。

Sudo du -hca --time / | grep -E "^[0-9\.]*[G]"

これにより、システム上のすべてのディレクトリとファイルが1Gを超えるサイズで、変更日とともに一覧表示されます。

特定のサイズを確認するには:

たとえば、onlyディレクトリをGサイズで一覧表示するには、次のコマンドを使用してください:

Sudo du -hca --time / | grep -E "^[3][0-9\.]*[G]"

次のように、数値[3]を変更して、たとえば5Gサイズのディレクトリを確認できます。

Sudo du -hca --time / | grep -E "^[5][0-9\.]*[G]"

等々。

最近変更されたものに焦点を当てて出力を検査し、標準から何かが見えるかどうか確認してください。

パーティションがほぼいっぱいになる瞬間に到達するまで、サイズの変化を監視し、記録する必要があるかもしれません。その後、この問題の原因をよりよく理解し、決定を下すことができます。

2
Raffa