web-dev-qa-db-ja.com

サーバーログがハードディスクをいっぱいにしているのですが、どうすれば修正できますか?

Apache httpdでWebアプリケーション(20 MB)を提供するUbuntu 12.04があります。パーティションテーブルは次のとおりです。

$ Sudo parted -l

Disk /dev/sda: 500GB
Partition Table: gpt

Number|Start|End|Size|File System|Name|Flag
1|17.4K|20.0MB|20.0MB|fat16| |boot
2|20.0MB|489GB|489GB|ext4
3|489GB|500GB|10.6GB|linux-swap(v1)

数日前、12.10にアップグレードしました。次に、1つのフォルダー(30 GB)をwwwフォルダーにコピーしました。突然サーバーがハングし、低グラフィックモードメッセージが表示されました。巨大なフォルダーを削除してコンピューターを再起動しましたが、同じメッセージが表示され、No Space Left on Device

$ Sudo du -h /var --max-depth=1

4.0K  /var/tmp
235M  /var/www
444G  /var/log

したがって、/ var/logは巨大です。

私は試した:

$ Sudo apt-get autoclean;Sudo apt-get autoremove
**Error! No space left on device**

アーカイブログを削除しましたが、最大のファイルが/var/log/cupsであることに変更はありません。そのファイルを一覧表示すると、次のようになりました。

-rw-r----- 1 root adm 758 DEC 30 07:37 access_log.1.gz
..
**-rw-r----- 1 root adm 444G JAN 5 08:09 error_log**
-rw-r----- 1 root adm 245 DEC 29 13:17 error_log.1.gz

私は試した:

$ Sudo service cups stop
Sudo: unable to write to /var/lib/Sudo/username/tty2: No space left on device

コンピューターのプラグを抜いてから再接続したとき。問題なく動作します。 /varサイズは完全に正常です。

私は再びそれに直面するのが怖いです。私の主な問題はパーティションが原因だと思います。 /home/rootは一緒になっており、分離されていません。 /homeの新しいパーティションを作成する必要がありますか?誰もディスクが再びいっぱいになるのを回避する別のアイデアを持っていますか?

6
Shadin

お気づきのとおり、ログフォルダーは巨大です。おそらくいくつかの古いログを削除したいでしょう。古いログは定期的にアーカイブされています。ログフォルダーを次のように調べた場合

cd /var/log
ls -lh

.gzで終わる多くのファイルが表示されます。これらのファイルはアーカイブログです。それらの前には、アーカイブの古さを示す数字があります。 .1.gzが最新です。古いログがもう必要ないことが確実な場合は、それらを削除します。

Sudo rm *.gz

その前に、なぜログがそんなに大きいのかを確認したいかもしれません。どのログファイルと対応するアーカイブが巨大であるかを見てください。あなたがそれらを見ていくつかを見つけた場合。ログエントリとは何ですか?それらのいくつかは非常に頻繁ですか?どのプロセス/プログラム/イベントが原因ですか?そのためにログレベルを安全に下げることはできますか?

編集

error_logを調べます。最後の数行を表示するにはtailを使用し、このような巨大なファイルを処理できることを期待する必要があります。そのファイルを削除してスペースを空けることもできますが、なぜそれが大きいのかを調べる必要があります。

8
André Stannek