为什么 /proc 文件系统中有这些信息

为什么 /proc 文件系统中有这些信息

跑步:

lsof|grep delete

可以找到一些进程打开的fd,但是系统说它已被删除:

mingetty 2031 root txt REG 8,2 15256 49021039 /sbin/mingetty (deleted)

我查看 /proc 文件系统:

ls -l /proc/[pid]

lrwxrwxrwx 1 root root 0 9月  17 16:12 exe -> /sbin/mingetty (deleted)

但实际上,可执行文件(/sbin/mingetty)在/sbin/mingetty路径下是正常的。

一些插座出现了这种情况:

ls -l /proc/[pid]/fd

82 -> socket:[23716953]

但是,使用命令:netstat -ae|grep [socket id]可以找到它。

为什么操作系统会显示此信息?

答案1

也许您运行了yum update,mingetty 已经升级,而您观察到的 exe 是旧的、实际上已被删除的版本。

您可能知道也可能不知道,在 Linux 中,某些文件只有在使用该文件的所有文件句柄都关闭后才会被删除。旧的 mingetty 仍在运行并保留文件句柄。

相关内容