Linux lsof命令的用法
lsof 命令的基本格式如下:
[root@bogon ~]# lsof [选项]
lsof 命令常用选项及作用如表 1 所示。选 项 | 作 用 |
---|---|
-c 字符串 | 只列出以字符串开头的进程打开的文件 |
+d 目录名 | 列出某个目录中所有被进程调用的文件 |
-u 用户名 | 只列出某个用户的进程打幵的文件 |
-p pid | 列出某个 PID 进程打开的文件 |
【例 1】查询系统中所有进程调用的文件。
在终端页面输入如下命令:
[root@bogon ~]# lsof | more COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME init 1 root cwd DIR 8,2 4096 2 / init 1 root rtd DIR 8,2 4096 2 / init 1 root txt REG 8,2 150352 651568 /sbin/init init 1 root mem REG 8,2 65928 260642 /lib64/libnss_files-2.12.so
打印信息中有很多的输出,但系统会按照 PID,从 1 号进程开始列出系统中所有的进程正在调用的文件名。
同样,我们可以按照 PID 查询进程调用的文件。例如:执行 lsof -p 1 命令就可以查看 PID 为 1 的进程调用的所有文件。
【例 2 】查询 PID 是 1 的进程调用的文件。
[root@bogon ~]# lsof -p 1 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME init 1 root cwd DIR 8,2 4096 2 / init 1 root rtd DIR 8,2 4096 2 / init 1 root txt REG 8,2 150352 651568 /sbin/init init 1 root mem REG 8,2 65928 260642 /lib64/libnss_files-2.12.so
另外还可以查看某个用户的进程调用了哪些文件。
【例 3】按照用户名查询某个用户的进程调用的文件。在终端页面输入如下命令:
[root@bogon ~]# lsof -u root
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
lsof 2962 root rtd DIR 8,2 4096 2 /
lsof 2962 root txt REG 8,2 145872 807484 /usr/sbin/lsof
lsof 2962 root mem REG 8,2 156928 268283 /lib64/ld-2.12.so
lsof 2962 root mem REG 8,2 22536 268293 /lib64/libdl-2.12.so
lsof 2962 root mem REG 8,2 1926800 268285 /lib64/libc-2.12.so
......
声明:《Linux系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。