首页 > 其他 > 详细

lsof之列出已打开的文件

时间:2019-02-19 16:12:46      阅读:147      评论:0      收藏:0      [点我收藏+]

 

lsof命令常用解析

    Linux中常用 lsof 来查看文件调用进程等相关信息,也可用来查看活跃的进程信息和端口监听进程信息等

 

1. lsof 命令介绍

NAME
    lsof - list open files
    
用法
    lsof [options] [filename]

常用选项
    -c    显示指定进程现在正在打开的文件
    -p    显示指定进程号现在正在打开的文件
    -g    显示指定gid号进程正在打开的文件
    -u    显示指定用户名启动的进程打开的文件
    +d    显示指定目录下被进程打开的文件(不包含子目录)
    +D    显示指定目录下被进程打开的文件(包含子目录)
    -d    显示指定fd文件描述符的进程
    -i    [46][proto][@host|addr][:svc_list|port_list]按以上条件获取进程信息
          [ipv4|ipv6][tcp|udp][@hostname|ipaddr][/etc/services定义的服务|服务端口port]
    -U : 获取UNIX套接口地址
    -t : 仅获取进程ID
    -l : 在输出显示用户ID而不是用户名

 

2. lsof 常见用法

    # 显示系统活跃进程打开的文件
    lsof
    
    # 显示调用/var/log/messages文件的进程
    lsof /var/log/messages
    
    # 显示crond进程打开的文件
    lsof -c crond
    
    # 显示进程号为1328的进程打开的文件
    lsof -p 1328
    
    # 显示gid号为1的进程打开的文件
    lsof -g 1
    
    # 显示用户root启用的进程打开的文件
    lsof -u root
    
    # 显示/var/log目录下被进程打开的文件
    lsof +d /var/log/        #(不包含子目录)
    lsof +D /var/log/        #(包含子目录)
    
    # 显示文件描述符fd为4的进程打开的文件
    lsof -d 4
    
    # 通过[46][proto][@host|addr][:svc_list|port_list]条件匹配进程信息输出
    lsof -i tcp:22
    

 

3. lsof使用实例

  磁盘空间不足

    Linux中httpd日志文件/httpd/access.log过大导致磁盘空间不足,"rm -f /httpd/access.log"删除了/httpd/access.log文件后,df -h发现磁盘空间仍旧没有释放,通过lsof发现httpd应用仍然占用着/httpd/access.log文件
    解决方法:重启应用即可解决/etc/init.d/httpd restart


 

lsof之列出已打开的文件

原文:https://www.cnblogs.com/Caiyundo/p/10401345.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!