use*_*732 5 linux lsof
在Linux 2.6.27中:
从"lsof"输出我看到一个进程保持打开fd与(已删除)文件.奇怪的是,我仍然可以使用"ls"在文件系统中看到该文件.这是为什么?
谢谢.
fef*_*efe 6
删除文件时,文件系统上不会显示该文件.但是,很可能在同一位置创建具有相同文件名的另一个文件.
您可以检查显示的节点号,lsof并ls -i检查它们是否真的是同一个文件.
lsof
ls -i
moh*_*hit 5
只要某个进程打开了该文件,该文件就不会被删除。当文件关闭时,内核首先检查打开文件的进程数。如果此计数已达到 0,则内核会检查链接计数;如果为 0,则删除文件内容。
引用 man unlink:
如果名称是文件的最后一个链接,但任何进程仍然打开该文件,则该文件将一直存在,直到最后一个引用它的文件描述符关闭。
归档时间:
12 年,6 月 前
查看次数:
23098 次
最近记录:
12 年,3 月 前