fuser
[功能]
fuser 可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息.
[描述]
fuser显示使用指定文件或者文件系统的进程ID.默认情况下每个文件名后面跟一个字母表示访问类型。
访问类型如下:
c 代表当前目录
e 可执行的被运行
f 打开的文件。默认不显示。
F 打开的文件,用于写操作。默认不显示。
r 根目录。
m 映射文件或者共享库。
当指定的文件没有被访问,或者出现错误的时候,fuser会返回非零。
为了查看使用tcp和udp套接字的进程,需要-n选项并指定名称空间。默认IpV4和IpV6都会显示。套接字可以是本地的或者是远程的端口,和远程的地址。所有的域是可选的,但是其前面的','必须存在。如下:
[lcl_port][,[rmt_host][,[rmt_port]]]
对于ip地址和port,名称和数字表示都可以使用。
fuser只把PID输出到标准输出,其他的都输出到标准错误输出。
一些常用选项:
-a 显示所有命令行中指定的文件,默认情况下被访问的文件才会被显示。
-c 和-m一样,用于POSIX兼容。
-k 杀掉访问文件的进程。如果没有指定-signal就会发送SIGKILL信号。
-i 杀掉进程之前询问用户,如果没有-k这个选项会被忽略。
-l 列出所有已知的信号名称。
-m name 指定一个挂载文件系统上的文件或者被挂载的块设备(名称name)。这样所有访问这个文件或者文件系统的进程都会被列出来。如果指定的是一个目录会自动转换成"name/",并使用所有挂载在那个目录下面的文件系统。
-n space 指定一个不同的命名空间(space).这里支持不同的空间文件(文件名,此处默认)、tcp(本地tcp端口)、udp(本地udp端口)。对于端口,可以指定端口号或者名称,如果不会引起歧义那么可以使用简单表示的形式,例如:name/space (即形如:80/tcp之类的表示)。
-s 静默模式,这时候-u,-v会被忽略。-a不能和-s一起使用。
-signal 使用指定的信号,而不是用SIGKILL来杀掉进程。可以通过名称或者号码来表示信号(例如-HUP,-1),这个选项要和-k一起使用,否则会被忽略。
-u 在每个PID后面添加进程拥有者的用户名称。
-v 详细模式。输出似ps命令的输出,包含PID,USER,COMMAND等许多域,如果是内核访问的那么PID为kernel.
-V 输出版本号。
-4 使用IPV4套接字,不能和-6一起应用,只在-n的tcp和udp的命名存在时不被忽略。
-6 使用IPV6套接字,不能和-4一起应用,只在-n的tcp和udp的命名存在时不被忽略。
- 重置所有的选项,把信号设置为SIGKILL.
man手册待继续阅读。
[举例]
*显示使用某个文件的进程信息:
$ fuser -um /dev/sda2
输入之后,输出如下:
/dev/sda2: 6378c(quietheart) 6534c(quietheart) 6628(quietheart) 6653c(quietheart) 7429c(quietheart) 7549c(quietheart) 7608c(quietheart)
这个命令在umount的时候很有用,可以找到还有哪些用到这个设备了。
*杀掉打开readme文件的程序,在确定之前有提示:
$fuser -m -k -i readme
或$fuser -kmi readme
这里,会在kill之前询问是否确定。最好加上-v以便知道将要杀那个进程。
*查看那些程序使用tcp的80端口:
$fuser -n tcp 80
或$fuser -v -n tcp 80
或$fuser -v 80/tcp
这里,后两种方式显示的信息比较全,因为有了-v选项。
[其他]
*假设无法卸载的设备为/dev/sdb1
1)运行下面命令看一下哪个用户哪个进程占用着此设备
fuser -m -v /dev/sdb1
2)运行下面命令杀掉占用此设备的进程
fuser -m -v -k /dev/sdb1
或者fuser -m -v -k -i /dev/sdb1(每杀掉一下进程会让你确认)
3)再umount
*杀掉所有以任何形式访问文件系统 /home的进程:
$fuser -km /home
分享到:
相关推荐
`psmisc`是一个非常实用的工具集,它包含了多个用于系统监控和管理的命令,比如`ps`、`kill`、`fuser`等。这些命令使得用户可以查看、控制和分析运行中的进程。在给定的压缩包`psmisc_fuser_psmisc_`中,我们重点...
在Linux操作系统中,`fuser`是一个非常实用的命令行工具,它可以帮助用户查找哪些进程正在使用特定的文件或文件系统。在给定的压缩包`fuser-bin-sourcecode.zip`中,包含了编译和构建Android平台上`fuser`工具所需的...
HP-LaserJet-3015-50-fuser-error-报错--
### Linux Fuser 命令详解 #### 功能概述 `fuser` 是 Linux 下一个非常实用的命令工具,主要用于查找哪些进程正在使用特定的文件、目录或网络端口,并提供这些进程的详细信息。这对于解决文件锁定问题、调试网络...
查询进程打开的文件,fuser 和 lsof 命令 在 Linux 系统中,经常会遇到某个进程打开的文件或目录被占用的情况,导致无法卸载或删除该文件或目录。这时,需要使用特殊的命令来查询当前打开的文件或目录。其中,fuser...
Linux 中的 fuser 工具使用指南 fuser 工具是 Linux 中的一个强大工具,能够查询文件的用户、目录、socket 端口和文件系统的使用进程,并可以使用 fuser 关闭进程。在 Linux 中,fuser 工具的使用场景非常广泛,...
Fuser 软件在 Linux 系统下的使用方法 Fuser 是一个功能强大的命令行工具,在 Linux 系统中用于查询文件的用户和进程信息,同时也可以关闭访问指定文件的进程。在本文中,我们将详细介绍 Fuser 工具的使用方法和...
Linux系统中的Fuser命令是一个强大的工具,用于查找哪些进程正在使用特定的文件、目录或网络套接字。这个命令能够帮助系统管理员跟踪资源占用情况,定位占用特定文件的进程,以便进行故障排查或管理任务。下面我们将...
Fuser可谓是Skyline中的神器,Fuser配合TerraBuilder可以实现联机工作,大大的提高出图的效率,TerraGate有了它可以实现直连功能,省工省力更省时间。这个程序不需要lic,可以直接使用。 在使用时,请确保安装...
Fuser可谓是Skyline中的神器,Fuser配合TerraBuilder可以实现联机工作,大大的提高出图的效率,TerraGate有了它可以实现直连功能,省工省力更省时间。这个程序不需要lic,可以直接使用。 在使用时,请确保安装...
Fuser可谓是Skyline中的神器,Fuser配合TerraBuilder可以实现联机工作,大大的提高出图的效率,TerraGate有了它可以实现直连功能,省工省力更省时间。这个程序不需要lic,可以直接使用。
**fuser命令详解** 在Linux操作系统中,`fuser`是一个强大的工具,它能够帮助用户查找正在使用某个文件、挂载点或网络端口的进程。这个命令在系统管理、故障排查以及日常维护中十分有用,因为它能提供关于进程与...
lsof和fuser的使用方法
install_github( ' FrankD/fuser ' ) 例子 另请参阅随附的插图。 library( fuser ) set.seed( 123 ) # Generate simple heterogeneous dataset k = 4 # number of groups p = 100 # number of covariates n.group = ...
我的分公司的分公司大范甘迪fuser.png
fuser用于标识访问文件或socket的进程信息。下面以经常会遇到的不能卸载光驱为例,讨论fuser的用法: 1).卸载光驱文件系统: [root@vserver01 ~]# umount /mnt umount: /mnt: device is busy umount: /...
【fuser-开源】是一个专为OpenBSD操作系统设计的开源工具,它的主要目的是简化源代码包的下载、编译和安装过程。OpenBSD是一个著名的类Unix操作系统,以其安全性、稳定性和开源精神而闻名。fuser项目的诞生,是为了...
NanoPi-fuser-win32 该工具旨在将磁盘映像,引导加载程序,u-boot环境和/或内核写入microSD卡,以便在Windows下引导FriendlyARM NanoPi。 请查看以下载此工具的预编译版本。 要运行此工具,需要Windows XP或更高版本...