centosrm-rfでファイルを削除しても容量増えない

2016年10月15日更新 view: 159 view
http://www.tecmint.com/wp-content/uploads/2016/01/Compress-and-Optimize-Images-in-Linux.png

サーバーのデータが圧迫していたので削除しようと思っても、容量が増えない。

centos、linux独自の仕様らしい。
ファイルを削除した後、プロセスも削除する。
今回はその方法をまとめました。

まずは使用量を確認

df -h

のコマンドで容量を確認すると
以下のように表示される。

Filesystem      Size  Used Avail Use% Mounted on
/dev/vda3 97G 92G 16M 100% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vda1 243M 126M 105M 55% /boot

おや?
/dev/vda3 が多すぎるぞ。

どのフォルダが容量を食っているのか調べる。

du -h --max-depth=1 /*
スポンサードリンク
132M    /usr/lib
53M /usr/sbin
4.0K /usr/etc
3.1G /usr
4.0K /var/crash
4.0K /var/nmbd
1.1G /var/spool
16K /var/bkup
4.0K /var/nis
50G /var/spool/clientmqueue

今回は /var/spool/clientmqueue が容量を圧迫していた。
一応削除して良いフォルダかググってから

cd /var/spool/
rm -rf clientmqueue

上記でフォルダを削除できる。

しかし、これでだけではプロセスが残っているので容量が増えない。

Filesystem Size Used Avail Use% Mounted on
/dev/vda3 97G 92G 16M 100% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vda1 243M 126M 105M 55% /boot

プロセスを削除しよう。

まずは、どのプロセスが削除したフォルダを使っているのか調べる。

lsof | grep clientmqueue
sendmail    309     smmsp  cwd       DIR              252,3           0    1836236 /var/spool/clientmqueue (deleted)
sendmail 494 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 686 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 966 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 1610 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 3345 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 3789 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 3789 smmsp 3uW REG 252,3 74772938752 1836250 /var/spool/clientmqueue/dfu7DI81Ls003789 (deleted)
sendmail 4878 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 4893 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 4920 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)
sendmail 5090 smmsp cwd DIR 252,3 0 1836236 /var/spool/clientmqueue (deleted)

sendmail が悪さをしていることがわかる。
この deleted と書かれているのがゾンビプロセス。

つづいて、このプロセスを一気に削除したいので、sendmailを使っているプロセスを pgrep で一括検索。

pgrep sendmail
309
494
686
966
1610
3345
3789
4878
4893
4920
5090

プロセスIDが
lsof | grep clientmqueue
の結果正しいことを確認。

プロセスを一気にkill。

pkill -f sendmail

df -h で再度容量を見てみると・・・

Filesystem      Size  Used Avail Use% Mounted on
/dev/vda3 97G 22G 70G 24% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vda1 243M 126M 105M 55% /boot

一気に減りましたね。

スポンサードリンク

関連記事

関連カテゴリ