查文件被谁占用 linux,linux查文件被哪些程序占用—fuser和lsof的使用

这种场景经常见到,比如执行umount,发现被占用,想找到被谁占用。

使用fuser来查文件或目录被谁占用

fuser /proc

/proc:                2454rc

参数:-v 显示用多信息,-u 显示用户

# fuser -uv /proc

用户     进程号 权限   命令

/proc:               rtkit      2454 .rc.. (rtkit)rtkit-daemon

想要显示/proc目录下所有文件和目录被占用情况,加-m参数

# fuser -uvm /proc

用户     进程号 权限   命令

/proc:               root       1311 f.... (root)rsyslogd

root       1667 f.... (root)vmtoolsd

root       2028 f.... (root)acpid

haldaemon   2040 f.... (haldaemon)hald

root       2297 F.... (root)Xorg

rtkit      2454 .rc.. (rtkit)rtkit-daemon

root       2659 f.... (root)nautilus

root       2673 f.... (root)udisks-daemon

root       2712 f.... (root)gnome-power-man

使用删除某个PID,加-k参数,加入-i,配合-k会询问用户意愿

# fuser -ki /proc

/proc:                2454rc

杀死进程 2454 ? (y/N) n

lsof的使用

lsof列出被进程所打开的文件,直接运行,输出内容很多

加参数-u找某个用户的进程

# lsof -u root|more

COMMAND     PID USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME

init          1 root  cwd       DIR              253,0      4096          2 /

init          1 root  rtd       DIR              253,0      4096          2 /

init          1 root  txt       REG              253,0    150352       4560 /sbi

n/init

...

+d 参数,找某个目录被打开的文件

-a 多个条件同时成立,例如找root用户打开/proc的情况

# lsof +d /proc -a -u root

COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF       NODE NAME

rsyslogd   1311 root    3r   REG    0,3        0 4026532038 /proc/kmsg

vmtoolsd   1667 root   16r   REG    0,3        0 4026532032 /proc/meminfo

vmtoolsd   1667 root   17r   REG    0,3        0 4026532033 /proc/stat

vmtoolsd   1667 root   18r   REG    0,3        0 4026532020 /proc/vmstat

Xorg       2297 root    5w   REG    0,3        0 4026531957 /proc/mtrr

udisks-da  2673 root    7r   REG    0,3        0 4026531977 /proc/mdstat

gnome-pow  2712 root   15r   REG    0,3        0 4026532033 /proc/stat

lsof      24962 root    3r   DIR    0,3        0          1 /proc

还有个参数-U ,用来列出socket文件类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值