某天,登陆某台服务器,发现以下诡异情景:
:~> 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目录下的进程没有停止,然后就删除了文件,使得已经在内存的进程不断跑,不断写磁盘~~~
如果你也发现你的磁盘无端端变小了,是否也存在同样的问题?