li
  当前位置:主页 > 操作系统IBM AIX > 文章内容
li
lsof aix 使用 lsof 查找打开的文件
来源: www.ixdba.net  作者: IXDBA.NET官方    时间:2008-03-19   阅读:43  
本文章共8590字,分6页,当前第1页,快速翻页:
 

通过查看打开的文件,了解更多关于系统的信息。了解应用程序打开了哪些文件或者哪个应用程序打开了特定的文件,作为系统管理员,这将使得您能够作出更好的决策。例如,您不应该卸载具有打开文件的文件系统。使用 lsof,您可以检查打开的文件,并根据需要在卸载之前中止相应的进程。同样地,如果您发现了一个未知的文件,那么可以找出到底是哪个应用程序打开了这个文件。

在 UNIX® 环境中,文件无处不在,这便产生了一句格言:“任何事物都是文件”。通过文件不仅仅可以访问常规数据,通常还可以访问网络连接和硬件。在有些情况下,当您使用 ls 请求目录清单时,将出现相应的条目。在其他情况下,如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字,不存在相应的目录清单。但是在后台为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。

因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,所以能够查看这个列表将是很有帮助的。完成这项任务的实用程序称为 lsof,它对应于“list open files”(列出打开的文件)。几乎在每个 UNIX 版本中都有这个实用程序,但奇怪的是,大多数供应商并没有将其包含在操作系统的初始安装中。要获取更多关于 lsof 的信息,请参见参考资料部分。

lsof 简介

只需输入 lsof 就可以生成大量的信息,如清单 1 所示。因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能。


清单 1. lsof 的示例输出
bash-3.00# lsof 
COMMAND    PID   USER   FD   TYPE        DEVICE SIZE/OFF      NODE NAME
sched        0   root  cwd   VDIR         136,8     1024         2 /
init         1   root  cwd   VDIR         136,8     1024         2 /
init         1   root  txt   VREG         136,8    49016      1655 /sbin/init
init         1   root  txt   VREG         136,8    51084      3185 /lib/libuutil.so.1
vi        2013   root    3u  VREG         136,8        0      8501 /var/tmp/ExXDaO7d
...

每行显示一个打开的文件,除非另外指定,否则将显示所有进程打开的所有文件。CommandPIDUser 列分别表示进程的名称、进程标识符 (PID) 和所有者名称。DeviceSIZE/OFFNodeName 列涉及到文件本身的信息,分别表示指定磁盘的名称、文件的大小、索引节点(文件在磁盘上的标识)和该文件的确切名称。根据 UNIX 版本的不同,可能将文件的大小报告为应用程序在文件中进行读取的当前位置(偏移量)。清单 1 来自一台可以报告该信息的 Sun Solaris 10 计算机,而 Linux® 没有这个功能。

FDType 列的含义最为模糊,它们提供了关于文件如何使用的更多信息。FD 列表示文件描述符,应用程序通过文件描述符识别该文件。Type 列提供了关于文件格式的更多描述。我们来具体研究一下文件描述符列,清单 1 中出现了三种不同的值。cwd 值表示应用程序的当前工作目录,这是该应用程序启动的目录,除非它本身对这个目录进行更改。txt 类型的文件是程序代码,如应用程序二进制文件本身或共享库,再比如本示例的列表中显示的 init 程序。最后,数值表示应用程序的文件描述符,这是打开该文件时返回的一个整数。在清单 1 输出的最后一行中,您可以看到用户正在使用 vi 编辑 /var/tmp/ExXDaO7d,其文件描述符为 3。u 表示该文件被打开并处于读取/写入模式,而不是只读 (r) 或只写 (w) 模式。有一点不是很重要但却很有帮助,初始打开每个应用程序时,都具有三个文件描述符,从 0 到 2,分别表示标准输入、输出和错误流。正因为如此,大多数应用程序所打开的文件的 FD 都是从 3 开始。



阅读更多内容1 · 2 · 3 · 4 · 5 · 6 · 下一页>>


  上一篇: AIX 5.3主机性能评估-结合案例分...   下一篇: AIX 常用命令汇总
li
 §相关评论  
 热点文章

·Oracle补丁3028673,解决单进程
·最近被aix 5305给折腾死了
·在AIX 5L上配置NFS Server/Cli
·在AIX 5L上配置与管理路由
·这个补丁影响的范围还是比较大
·在AIX 5L上使用绑定网卡(ethe
·AIX 5.3主机性能评估-CPU性能评
·AIX 5.3主机性能评估-Memory性
·AIX 5.3主机性能评估-磁盘的I/
·AIX 5.3主机性能评估-NETWORK性
·AIX 5.3主机性能评估-topas的使
li
 编辑推荐
·Oracle补丁3028673,解决单进程
·最近被aix 5305给折腾死了
·在AIX 5L上配置NFS Server/Cli
·在AIX 5L上配置与管理路由
·这个补丁影响的范围还是比较大
·在AIX 5L上使用绑定网卡(ethe
·AIX 5.3主机性能评估-CPU性能评
·AIX 5.3主机性能评估-Memory性
·AIX 5.3主机性能评估-磁盘的I/
·AIX 5.3主机性能评估-NETWORK性
·AIX 5.3主机性能评估-topas的使
li
 相关篇章
·AIX 5.3主机性能评估-结合案例分...
·AIX 5.3主机性能评估-主机日常检...
·AIX 5.3主机性能评估-topas的使用...
·AIX 5.3主机性能评估-NETWORK性能...
·AIX 5.3主机性能评估-磁盘的I/O性...
·AIX 5.3主机性能评估-Memory性能...
·AIX 5.3主机性能评估-CPU性能评估
·怎么样管理AIX 5L的交换空间(Pag...
·在AIX 5L中,怎么创建没有头部偏...
·怎么样在AIX 5L上管理物理卷(PV...
·AIX 常用命令汇总
·AIX FAQ手册(1)
·IBM AIX V5.3系统管理认证指南:启...
·IBM AIX V5.3系统管理认证指南:启...
·超经典的AIX系统管理手册之一(A...
·超经典的AIX系统管理手册之二(A...
·超经典的AIX系统管理手册之三(v...
·超经典的AIX系统管理手册之四(A...
·超经典的AIX系统管理手册之五(RS...
·超经典的AIX系统管理手册之六(HA...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接