Linux进程管理 lsof命令:列出进程调用或打开的文件信息
lsof命令
通过 ps 命令查询到系统中所有的进程, 通过lsof 命令可以知道这个进程到底在调用哪些文件。lsof 命令格式如下:
[root@localhost ~]# lsof [选项]
选项:
- -c 字符串: 只列出以字符串开头的进程打开的文件;
- +d 目录名: 列出某个目录中所有被进程调用的文件;
- -u 用户名: 只列出某个用户的进程打开的文件;
- -p pid: 列出某个 PID 进程打开的文件;
查询系统中所有进程调用的文件
[root@localhost ~]# lsof |more
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd root cwd DIR , /
systemd root rtd DIR , /
systemd root txt REG , /usr/lib/systemd/systemd
systemd root mem REG , /usr/lib64/libuuid.so.1.3.
按照 PID,从 1 号进程开始列出系统中所有的进程正在调用的文件名。
查询某个文件被哪个进程调用
[root@localhost ~]# lsof /usr/lib/systemd/systemd
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd root txt REG , /usr/lib/systemd/systemd
lsof 命令也可以查询某个文件被哪个进程调用。
查询某个目录下所有的文件是被哪些进程调用的
[root@localhost ~]# lsof +d /usr/lib
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rpc.idmap root mem REG , 279930 /usr/lib/libnfsidmap.so.0.3.
rpc.idmap root mem REG , 276696 /usr/lib/libevent-1.4.so.2.1.
avahi-dae avahi mem REG , 271310 /usr/lib/libavahi-common.so.3.5.
avahi-dae avahi mem REG , 283188 /usr/lib/libdaemon.so.0.5.
avahi-dae avahi mem REG , 268396 /usr/lib/libavahi-core.so.6.0.
avahi-dae avahi mem REG , 271310 /usr/lib/libavahi-common.so.3.5.
avahi-dae avahi mem REG , 283188 /usr/lib/libdaemon.so.0.5.
avahi-dae avahi mem REG , 268396 /usr/lib/libavahi-core.so.6.0.
cupsd root mem REG , 270210 /usr/lib/libtasn1.so.3.1.
使用“+d”选项可以搜索某个目录下所有的文件,查看到底哪个文件被哪个进程调用了。
查看以httpd开头的进程调用了哪些文件
[root@localhost ~]# lsof -c httpd
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd root cwd DIR , /
httpd root rtd DIR , /
httpd root txt REG , 2855 /usr/local/apache2/bin/httpd
httpd root mem REG , /lib/libfreebl3.so
httpd root mem REG , /lib/libnss_files-2.12.s
httpd root mem REG , /lib/ld-2.12.so
httpd root mem REG , /lib/libc-2.12.so
…省略部分输出…
使用“-c”选项可以查询以某个字符串开头的进程调用的所有文件,比如执行“lsof-c httpd”命令就会查询出以 httpd 开头的进程调用的所有文件。
查询PID是1的进程调用的文件
[root@localhost ~]# lsof -p
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
init root cwd DIR , /
init root rtd DIR , /
init root txt REG , /sbin/init
init root mem REG , /lib/ld-2.12.so
init root mem REG , /lib/libnss_files-2.12.so
当然,我们也可以按照 PID 查询进程调用的文件,比如执行“lsof -p 1”命令就可以查看 PID 为 1 的进程调用的所有文件。
按照用户名查询某个用户的进程调用的文件
[root@localhost ~]# lsof -u root
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
init root cwd DIR , /
init root rtd DIR , /
init root txt REG , /sbin/init
init root mem REG , /lib/ld-2.12.so
init root mem REG , /lib/libnss_files-2.12.s
init root mem REG , /lib/libnih-dbus.so.1.0.
…省略部分输出…
查看某个用户的进程调用了哪些文件。
Linux进程管理 lsof命令:列出进程调用或打开的文件信息的更多相关文章
- 1、进程管理常用命令和进程ID
常用命令 1. ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器. 详细介绍参照:https://www.runoob.com/linu ...
- 通过某个进程号显示该进行打开的文件 lsof -p 1 11. 列出多个进程号对应的文件信息 lsof -p 123,456,789 5. 列出某个用户打开的文件信息 lsof -u username
linux命令 — lsof 查看进程打开那些文件 或者 查看文件给那个进程使用 lsof命令是什么? 可以列出被进程所打开的文件的信息.被打开的文件可以是 1.普通的文件,2.目录 3.网络文件系 ...
- 熟练使用Linux进程管理类命令
进程管理类命令 – ps命令 ps命令主要用于查看系统的进程 该命令的语法为:ps [参数] ps命令的常用参数选项有: -a:显示当前控制终端的进程(包含其他用户的). -u:显示进程的用户名和启动 ...
- Linux进程管理(二、 进程创建)
通常使用fork创建进程, 也可以用vfork()和clone().fork.vfork和clone三个用户态函数均由libc库提供,它们分别会调用Linux内核提供的同名系统调用fork,vfork ...
- Linux学习之lsof命令
lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.所以如传输控制协议 ...
- Linux服务器管理: 系统的进程管理ps命令
源码包:2015-06-30 12:11:25 首先我们可以通过网络去下载相应的源码包:我们以apache为例: [root@localhostA1 opt]# wget http://archive ...
- Linux快速入门教程-进程管理ipcs命令学习
使用Linux系统必备的技能之一就是Linux进程管理,系统运行的过程正是无数进程在运行的过程.这些进程的运行需要占用系统的内存等资源,做好系统进程的管理,对于我们合理分配.使用系统资源有非常大的意义 ...
- linux进程管理常用命令
初始化进程在centos5,6,7中的发展: 在centos5中使用sysv init 是一个shell脚本,依靠依次执行脚本中的命令启动系统,只能串行执行. 在centos6中使用upstart,也 ...
- Linux进程管理:后台启动进程和任务管理命令
一.为什么要使程序在后台执行 我们的应用有时候要运行时间很长,如:几个小时甚至几个星期,我们可以让程序在后台一直跑. 让程序在后台运行的好处有: 终端关机不影响后台进程的运行.(不会终端一关机或者网络 ...
随机推荐
- log4j2设置日志文件读写权限(filePermissions)
spring-boot使用log4j2作为日志插件的时候需要设置日志文件的读写权限,可以File 上增加filePermissions,如: <File name="File" ...
- flex布局,input点击软键盘激活,底部按钮上移
安卓手机的问题,原本表单没有超出一屏的时候,上移的现象也是存才的,只是需要滑动body才能看得到,现在,超出一屏了,现象就很明显了 body明显上移: 点击input修改价格: 软键盘出现: 先尝试了 ...
- 升级PHP版本导致zabbix无法访问解决办法
故障现象:无法打开zabbix首页,提示缺少zabbix.conf配置文件 原因分析:升级yum安装php版本了,升级前卸载了原PHP5.4版本导致 解决办法: 重新安装zabbix yum inst ...
- poj1179 Polygon【区间DP】
Polygon Time Limit: 1000MS Memory Limit: 10000K Total Submissions:6633 Accepted: 2834 Descriptio ...
- Spring Boot 编写入门程序
1. SpringBoot 入门 快速创建独立运行的Spring项目以及与主流框架集成; 使用嵌入式的Servlet容器,应用无需打成WAR包; starters自动依赖与版本控制; 大量的自动配置, ...
- Kafka简介及使用
一.Kafka概述 离线部分: Hadoop->离线计算(hdfs / mapreduce) yarn zookeeper->分布式协调(动物管理员) hive->数据仓库(离线计算 ...
- 饭卡---hdu2546(01背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2546 这是一个变形的01背包问题,首先如果金额小于5元,剩余金额不变,为已有金额.如果大于等于5元 我 ...
- Powerdesigner显示列名
设置要修改的列 点击ok即可.
- 看我学习Apache+php+wordpress+phpMyAdmin的搭配配置
开场白:我不是这方面的"专家"或"菜鸟",因为我不懂,别问我为什么,我只是心血来潮好奇,东拼西凑写了这些文字. 1.php的配,使用免安装版本,要进行的设置, ...
- 如何用 PyCharm 调试 scrapy 项目
原理: 首先 scrapy 命令其实就是一个python脚本,你可以使用 which scrapy 查看该脚本的内容: from scrapy.cmdline import execute sys.a ...