前言
- 之前连公司堡垒机的时候发现连不上,找运维排查是建立的链接数太多,很多超时链接没有断掉,导致不能再创建链接
- 此时,需要手动断开用户终端链接,然后百度搜到 fuser 可以断开用户终端链接
命令作用
有三种解释
- 使用文件或 socket 识别进程
- 显示哪些进程使用命名文件、socket 或文件系统
- 显示使用指定文件或文件的进程的 pid 系统
总的来说就是文件+进程
语法格式
fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] NAME...
参数列表
| 参数 | 作用 |
| -a,--all | 显示未使用的文件 |
| -i,--interactive | 杀死前的交互式询问(忽略而不使用-k) |
| -k,--kill | 终止访问命名文件的进程 |
| -l,--list | 列出可用的信号名称 |
| -m,--mount | 显示使用命名文件系统或块设备的所有进程 |
| -M,--ismountpoint | 仅当NAME是挂载点时满足请求 |
| -n,--namespace | 在此名称空间中搜索命名空间(文件、udp或tcp) |
| -s,--silent | 静默操作 |
| -SIGNAL | 发送这个信号而不是SIGKILL |
| -u,--user | 显示用户ID |
| -v,--verbose | 详细输出 |
| -w,--writeonly | 杀死具有写访问权限的进程 |
| -V,--version | 版本信息 |
| -4,--ipv4 | 搜索ipv4 socket |
| -6,--ipv6 | 搜索ipv6 socket |
| - reset | 重置 |
不会所有参数都讲
基础用法
fuser /root PID后跟的字符说明了进程以何种方式与该目录/文件关联
- c 指示进程的工作目录
- e 指示该文件为进程的可执行文件(即进程由该文件拉起)
- f 指示该文件被进程打开,默认情况下f字符不显示
- F 指示该文件被进程打开进行写入,默认情况下F字符不显示
- r 指示该目录为进程的根目录
- m 指示进程使用该文件进行内存映射,抑或该文件为共享库文件,被进程映射进内存
- . 占位符,默认显示模式中省略
详细输出
fuser -v /root
杀掉进程
fuser -k /dev/pts/0
这是断开本地 ssh 连接阿里云服务器的终端
杀掉进程并询问
fuser -v -i -k /dev/pts/0

京公网安备 11010502036488号