pidof :找出某支正在执行的程序的 PID

pidof sshd

[root@rhel-11 ~]# pidof mysqld

2245

 

Fuser 由档案或文件系统查找正在使用该档案的程序

fuser -umv /mnt

-u 显示PID,并显示该程序的拥有者

-v 显示command的完整性

-m 根据后面的文档判定所以文件系统的最顶层,这个选项对umount设备很有用。

 

[root@kim ~]# fuser -uvm /linux

USER PID ACCESS COMMAND

/linux: root kernel mount (root)/linux

kim 2929 F.... (kim)VirtualBox

kim 2975 f.... (kim)acroread

 

然后再kill掉进程就可以,再umount设备。

 

 

查看文档开启的程序是那个

[root@rhel-11 ~]# fuser -uv /usr/local/mysql/tmp/mysql.sock

 

USER PID ACCESS COMMAND

/usr/local/mysql/tmp/mysql.sock:

mysql 2245 F.... (mysql)mysqld

 

[root@rhel-11 ~]# lsof /usr/local/mysql/tmp/mysql.sock

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

mysqld 2245 mysql 14u unix 0xddaae740 6444 /usr/local/mysql/tmp/mysql.sock

 

 

删除开启mysql.sock的程序

fuser -ki /usr/local/mysql/tmp/mysql.sock

 

 

 

 

Lsof 列出被程序开启的档案

d 找出目录下已经被开启的档案

[root@kim ~]# lsof +d /linux/

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

acroread 2975 kim 14r REG 253,0 23121212 1441828 /linux/books/Linux_vbird_v3.pdf

 

 

+D 搜索目录下的所有目录,时间相对较长

[root@kim ~]# lsof +D /linux

lsof: WARNING: can't stat() fuse.gvfs-fuse-daemon file system /run/user/kim/gvfs

Output information may be incomplete.

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

VirtualBo 2929 kim 31w REG 253,0 48757 2883813 /linux/virtual-os/rhel-9-xen-shell/Logs/VBox.log

VirtualBo 2929 kim 35u REG 253,0 4777480192 2883807 /linux/virtual-os/rhel-9-xen-shell/rhel-kernel.vdi

acroread 2975 kim 14r REG 253,0 23121212 1441828 /linux/books/Linux_vbird_v3.pdf

acroread 2975 kim 21u REG 253,0 368812 1441810 /linux/books/shell/003.PDF

 

 

查看目前系统所有已经开启的的档案

lsof

 

查看由root所有程序开启的档案

lsof -u root

 

查年端口:22开启的情况

lsof -i :22

 

 

查看mysql用户程序所开启的档案(-a -U 表示mysql开启的socket档案)

[root@rhel-11 ~]# lsof -u mysql -a -U

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

mysqld 2245 mysql 14u unix 0xddaae740 6444 /usr/local/mysql/tmp/mysql.sock