18个实例掌握 lsof 命令( 二 )


# lsof -u linuxtechi | moreOr# lsof -l -u linuxtechi | more

18个实例掌握 lsof 命令

文章插图
 
要列出除 root 外的所有打开的文件
# lsof -u ^root | more
18个实例掌握 lsof 命令

文章插图
 
5) 列出所有开放的 Inte.NET 和 UNIX 域文件
使用 -i -U 选项列出系统上所有打开的 internet 和 UNIX 域文件,示例如下
# lsof -i -U
18个实例掌握 lsof 命令

文章插图
 
6) 列出所有打开的 IPv4 网络文件
使用-i -4 选项列出 IPv4 所有打开的网络文件
# lsof -i 4
18个实例掌握 lsof 命令

文章插图
 
列出特定进程所有打开的 IPv4 网络文件
语法如下 :
lsof -i 4 -a -p {process_pid}
# lsof -i 4 -a -p 1633COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMErpcbind 1633 rpc 4u IPv4 16576 0t0 TCP *:sunrpc (LISTEN)rpcbind 1633 rpc 5u IPv4 16577 0t0 UDP *:sunrpcrpcbind 1633 rpc 10u IPv4 16649 0t0 UDP *:9607) 列出所有 ipv6 打开的网络文件
假设支持 ipv6 域,则可以使用 -i 6 选项列出打开的网络文件 。
# lsof -i 6
18个实例掌握 lsof 命令

文章插图
 
8) 列出在特定端口上运行的所有 TCP 和 UDP 进程
语法如下:
lsof -i TCP/UDP:port
假设我们想要列出 80 端口上运行的所有 TCP 进程,使用下面的命令
【18个实例掌握 lsof 命令】# lsof -i TCP:80COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEhttpd 2594 root 4u IPv6 22703 0t0 TCP *:http (LISTEN)httpd 2595 Apache 4u IPv6 22703 0t0 TCP *:http (LISTEN)httpd 2596 apache 4u IPv6 22703 0t0 TCP *:http (LISTEN)httpd 2597 apache 4u IPv6 22703 0t0 TCP *:http (LISTEN)httpd 2598 apache 4u IPv6 22703 0t0 TCP *:http (LISTEN)httpd 2599 apache 4u IPv6 22703 0t0 TCP *:http (LISTEN)[root@linuxtechi ~]#
列出 TCP 端口范围(1 到 1048)上所有打开的文件
# lsof -i TCP:1-1048
18个实例掌握 lsof 命令

文章插图
 
列出在特定端口上运行的所有 UDP 进程
# lsof -i UDP:16498COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEdhclient 2494 root 21u IPv6 20952 0t0 UDP *:16498
注意:要列出 linux 系统上所有打开的 UDP 进程,请使用 lsof -i UDP 命令
9) 查看指定设备的所有打开文件
语法如下:
lsof
查看设备 /dev/sda2 打开的文件
# lsof /dev/sda2
18个实例掌握 lsof 命令

文章插图
 
10) 查看 NFS 文件系统中已打开文件的进程
在某些情况下,您已经在 linux 机器上挂载了 nfs 文件系统,但是 nfs 服务器无法访问,并且希望列出该 nfs 文件系统上打开的所有进程
# lsof -b11) 显示终端相关的打开文件
下面的命令用于终端上所有打开的文件
lsof /dev/tty {number}
# lsof /dev/tty1COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEbash 2442 root 0u CHR 4,1 0t0 4689 /dev/tty1bash 2442 root 1u CHR 4,1 0t0 4689 /dev/tty1bash 2442 root 2u CHR 4,1 0t0 4689 /dev/tty1bash 2442 root 255u CHR 4,1 0t0 4689 /dev/tty112) 列出与应用程序关联的打开文件
假设我们想要列出所有与 httpd 相关的打开文件
# lsof -c httpd
18个实例掌握 lsof 命令

文章插图
 
13) 列出所有网络连接
使用 -i 选项列出所有与网络相关的进程,示例如下


推荐阅读