@gy-ban
2016-12-04T08:26:58.000000Z
字数 539
阅读 1326
技术
最近在清理一台服务器日志的时候,发现用rm命令删除文件之后,硬盘容量并没有变化,删除的文件大概有10G左右,然后使用du -sh命令之后,还是原来的大小。这就很奇怪了,google之后才发现另有原因。
在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用
使用命令lsof进行查看
[bhuser@boohee-qa log]$ lsof | grep deleteruby 6787 bhuser 7w REG 253,2 236179162 4852433 /home/apps/light/shared/log/qa.log (deleted)ruby 16456 bhuser 7w REG 253,2 236179162 4852433 /home/apps/light/shared/log/qa.log (deleted)ruby 16688 bhuser 7w REG 253,2 236179162 4852433 /home/apps/light/shared/log/qa.log (deleted)
然后将该进程kill掉即可。
