某天,登陸某台服務器,發現以下詭異情景:
:~> df -h
Filesystem Size Used Avail Use% Mounted on
/dev/cciss/c0d0p1 9.9G 1.5G 7.9G 16% /
udev 16G 164K 16G 1% /dev
/dev/cciss/c0d0p3 20G 261M 19G 2% /usr/local
/dev/cciss/c0d0p4 104G 42G 56G 43% /data
:/data # du -sh ./*
4.0K ./corefile
4.0K ./iostat.tmp
4.0K ./log_manager
4.0K ./log_manager1
16K ./lost+found
2.2G ./web
明明data目錄下只有2.2G的占用,為何在df下看到42個G呢?
經過檢查,原來是某些被刪除過的進程干的好事
#lsof |grep delete
ttserver 30316 REG 104,4 2946659 7979020 /data/ttserver/bin/ttserver (deleted)
ttserver 30316 REG 104,4 70393 8028168 /data//tt_feeds/log/tt.log (deleted)
ttserver 30316 REG 104,4 42446163552 8028170 /data/pet50/ttserver/tt_feeds/data/tt_feeds.tch (deleted)
data目錄下的進程沒有停止,然後就刪除了文件,使得已經在內存的進程不斷跑,不斷寫磁盤~~~
如果你也發現你的磁盤無端端變小了,是否也存在同樣的問題