1 | fuser
|
2 | ===
|
3 |
|
4 | 使用文件或文件结构识别进程
|
5 |
|
6 | ## 补充说明
|
7 |
|
8 | **fuser命令** 用于报告进程使用的文件和网络套接字。fuser命令列出了本地进程的进程号,那些本地进程使用file,参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。
|
9 |
|
10 | 每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。
|
11 |
|
12 | * `c` :指示进程的工作目录。
|
13 | * `e` :指示该文件为进程的可执行文件(即进程由该文件拉起)。
|
14 | * `f` :指示该文件被进程打开,默认情况下f字符不显示。
|
15 | * `F` :指示该文件被进程打开进行写入,默认情况下F字符不显示。
|
16 | * `r` :指示该目录为进程的根目录。
|
17 | * `m` :指示进程使用该文件进行内存映射,抑或该文件为共享库文件,被进程映射进内存。
|
18 |
|
19 | ### 语法
|
20 |
|
21 | ```shell
|
22 | fuser(选项)(参数)
|
23 | ```
|
24 |
|
25 | ### 选项
|
26 |
|
27 | ```shell
|
28 | -a:显示命令行中指定的所有文件;
|
29 | -k:杀死访问指定文件的所有进程;
|
30 | -i:杀死进程前需要用户进行确认;
|
31 | -l:列出所有已知信号名;
|
32 | -m:指定一个被加载的文件系统或一个被加载的块设备;
|
33 | -n:选择不同的名称空间;
|
34 | -u:在每个进程后显示所属的用户名。
|
35 | ```
|
36 |
|
37 | ### 参数
|
38 |
|
39 | 文件:可以是文件名或者TCP、UDP端口号。
|
40 |
|
41 | ### 实例
|
42 |
|
43 | 要列出使用`/etc/passwd`文件的本地进程的进程号,请输入:
|
44 |
|
45 | ```shell
|
46 | fuser /etc/passwd
|
47 | ```
|
48 |
|
49 | 要列出使用`/etc/filesystems`文件的进程的进程号和用户登录名,请输入:
|
50 |
|
51 | ```shell
|
52 | fuser -u /etc/filesystems
|
53 | ```
|
54 |
|
55 | 要终止使用给定文件系统的所有进程,请输入:
|
56 |
|
57 | ```shell
|
58 | fuser -k -x -u -c /dev/hd1 或者 fuser -kxuc /home
|
59 | ```
|
60 |
|
61 | 任一命令都列出了进程号和用户名,然后终止每个正在使用`/dev/hd1 (/home)`文件系统的进程。仅有root用户能终止属于另一用户的进程。如果您正在试图卸下`/dev/hd1`文件系统,而一个正在访问`/dev/hd1`文件系统的进程不允许这样,您可能希望使用此命令。
|
62 |
|
63 | 要列出正在使用已从给定文件系统删除的文件的全部进程,请输入:
|
64 |
|
65 | ```shell
|
66 | fuser -d /usr文件
|
67 | ```
|
68 |
|
69 | `/dev/kmem` 用于系统映像。
|
70 | `/dev/mem` 也用于系统映像。
|
71 |
|
72 |
|