使用文件或文件结构识别进程
fuser命令 用于报告进程使用的文件和网络套接字。fuser命令列出了本地进程的进程号,那些本地进程使用file,参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。
每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。
c
:指示进程的工作目录。e
:指示该文件为进程的可执行文件(即进程由该文件拉起)。f
:指示该文件被进程打开,默认情况下f字符不显示。F
:指示该文件被进程打开进行写入,默认情况下F字符不显示。r
:指示该目录为进程的根目录。m
:指示进程使用该文件进行内存映射,抑或该文件为共享库文件,被进程映射进内存。fuser(选项)(参数)
-a:显示命令行中指定的所有文件;
-k:杀死访问指定文件的所有进程;
-i:杀死进程前需要用户进行确认;
-l:列出所有已知信号名;
-m:指定一个被加载的文件系统或一个被加载的块设备;
-n:选择不同的名称空间;
-u:在每个进程后显示所属的用户名。
文件:可以是文件名或者TCP、UDP端口号。
要列出使用/etc/passwd
文件的本地进程的进程号,请输入:
fuser /etc/passwd
要列出使用/etc/filesystems
文件的进程的进程号和用户登录名,请输入:
fuser -u /etc/filesystems
要终止使用给定文件系统的所有进程,请输入:
fuser -k -x -u -c /dev/hd1 或者 fuser -kxuc /home
任一命令都列出了进程号和用户名,然后终止每个正在使用/dev/hd1 (/home)
文件系统的进程。仅有root用户能终止属于另一用户的进程。如果您正在试图卸下/dev/hd1
文件系统,而一个正在访问/dev/hd1
文件系统的进程不允许这样,您可能希望使用此命令。
要列出正在使用已从给定文件系统删除的文件的全部进程,请输入:
fuser -d /usr文件
/dev/kmem
用于系统映像。/dev/mem
也用于系统映像。