You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
2.3 KiB

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

fuser
===
使用文件或文件结构识别进程
## 补充说明
**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`  也用于系统映像。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->