一个很好用的系统管理的命令lsof(转载)

最近发现LOSF 命令在系统管理方面特别有用,把我搜集的资料总结如下

1、当在lsof后边没有跟任何参数时,该命令将会列出当前系统中被所有进程打开的所有文件
#lsof|nl
#nl命令打印出行号

2、下边这几个命令指出打开某文件的进程

#lsof `which httpd`
#那个进程在使用apache的可执行文件
#lsof /etc/passwd #那个进程在占用/etc/passwd
#lsof
/dev/hda6 #那个进程在占用hda6
#lsof /dev/cdrom
#那个进程在占用光驱

3、下边将会打印出占用httpd可执行文件的进程的进程号(仅仅是进程号,在编写shell脚本是有用)
#lsof -t
`which httpd`

4、显示出那些文件被以k打头的进程名的进程打开,以bash打头,和以init打头:
#lsof -c
k
#lsof -c bash
#lsof -c
init

5、显示出那些文件被以courier打头的进程打开,但是并不属于用户‘zahn’
#lsof -c courier -u
^zahn

6、显示被zahn和apache打开的文件
#lsof -u
apache,zahn

7、显示那些文件被pid为30297的进程打开:
#lsof +p
30297

8、显示所有在/tmp文件夹中打开的instance和文件的进程。但是symbol文件并不在列
#lsof -D
/tmp

9、显示所有打开的端口
#lsof -i
10、显示所有打开80端口的进程
#lsof -i
:80

11、显示所有打开的端口和UNIX domain文件:
#lsof -i -U

12、显示那些进程打开了到www.akadia.com的UDP的123(ntp)端口的链接:
#[email protected]:123

13、列出Internet,
x.25 (HP-UX), and UNIX domain 文件:
#lsof -i
-U

14、列出指定进程打开的IPv4文件:
#lsof -i 4 -a -p 1234 (-a 参数被视为 AND

15、列出指定进程打开的IPv4文件:
#lsof -i 6

16、列出使用 /dev/log的文件:
#lsof
/dev/log

17、获取每个进程的PID,命令名。进程每个文件的文件描述符,文件设备号,文件inode :
#lsof
–FpcfDi

18、获取工作目录的第3个字符是‘o‘ or ‘O‘的进程:
#lsof -c /^..o.$/i -a -d
cwd (-a 参数被视为 AND )

19、获取和指定IP有关的socket 文件:
#[email protected]

20、Unlinked的打开文件:
#lsof
+L1

21、查找监听的socket
#lsof –i
#[email protected]
#[email protected]:ftp-data

22、查找指定进程号或进程名使用的文件
lsof
-p

23、远程登陆侦测
#lsof /dev/pts/0

24、NFS文件

$ lsof –N

25、指定用户打开的文件

lsof -u ^root

时间: 2024-11-05 12:13:30

一个很好用的系统管理的命令lsof(转载)的相关文章

Linux系统管理常用命令

Linux系统管理常用命令 分类: Linux2011-01-10 18:26 1538人阅读 评论(0) 收藏 举报 linuxcommandservicenginxuserunix 目录(?)[+] 1. 时间date 1)显示当前时间: date .//Wed Jul 29 11:05:11 CST 2009  2)date修改时间:date -s  date 修改时间2007-08-29 14:41 date -s 14:36:30   //时间为14点36分30秒 date 08291

Linux系统管理常用命令学习

在前面的Blog中给大家介绍了Linux安装和目录结构的相关知识,今天我们将正式的走进Linux系统,本期的内容如下: 1.Linux命令功能简单介绍 2.Linux系统管理常用命令 3.Linux系统管理常用热键 4.获取Linux命令帮助 5.内容总结 一.Linux命令功能介绍 首先介绍一个名词"控制台(console)",它就是我们通常见到的使用字符操作界面的人机接口,例如dos.我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令,例如dos命令就是控制台命令.我们现

linux系统管理常用命令--top

linux系统管理常用命令--top top显示进程所占的系统资源,具体用法介绍如下: top命令用于动态监控进程所占的系统资源,默认每隔3秒变一次.它的特点是把占用系统资源(CPU.内存.磁盘I/O等)最高的进程放到最前面!上例中,top命令打印出了很多信息.包括系统负载(loadaverage).进程数(Tasks).CPU使用情况.内存(Mem)使用情况以及交换分区使用情况. 其中,VIRT这一项表示进程所占的虚拟内存,RES这一项为进程所占的真实内存大小,而%MEM这一项为使用内存的百分

Mybatis_reveiw之Mybatis官方的一个很简单的Demo

上学的时候,一个老师讲了个故事,这个故事的大意是,我们有很多种方式去削苹果,第一种方式,使用指甲刀,第二种方式,使用机床,第三种方式,使用手摇的那种削平果小工具.我们当然都能够完成这个简单的需求,但是使用指甲刀削出来的苹果一定比较坑坑洼洼,不够美观,而且可能会让人感觉到有点没啥食欲.使用机床呢?可能会造成大量的浪费,原本一个美观大方的苹果变成了只能啃几口的正方形.第三个,因为是专门为了削苹果皮而设计的,理论上是最合适用来解决削苹果这个问题的解决方案. 一个好的架构,其实要做的事情是非常简单的,除

Linux系统管理——基础命令篇

终于开始接触Linux,现在是一个标准的菜鸟,那么就踏踏实实,一步一步开始进阶,希望我的博客慢慢可以给后来人带来帮助. 废话少说,下面就是我所接触的Linux系统管理的一些基础命令,以及我个人添加的命令的释义,还望大大们多多指教. 一.Linux命令行基础 [[email protected] ~]# uname -r       //查看内核版本 [[email protected] ~]# uname -a       //查看内核相关详细信息 [[email protected] ~]#

android:分享 一个很强大的LOG开关---Log.isLoggable

1.API亮点: 此API可以实现不更换APK,在出问题的手机上就直接能抓到有效log,能提升不少工作效率. 2.API介绍 最近在解决短信问题时,看到一个很强大的LOG开关---Log.isLoggable 1. if (Log.isLoggable(LogTag.TRANSACTION, Log.VERBOSE)) { 2.     Log.v(TAG, "Creating TransactionService"); 3. } 进入framework中查看isLoggable方法的

VI一个终端编辑多个文件的命令

可分两种情况: 在不同窗口中打开多个文件: 如果已经打开一个了一个文件, 则在vi的命令输入状态下输入 :sp 另外一个文件的路径及文件名, 如此就可以在一个窗口打开多个文件了. 可以使用 ctrl + 两次按 w 或者ctrl + w 然后按上下键在上下窗口间切换. 2.窗口分割实现编辑多文件 *先使用vi打开一个文件,例如vi actinia_proenrule.sh *分割窗口打开另外的文件 命令行模式下输入  sp 另外一个文件 就可以水平分割继续打开第二个文件,如果想纵向分割,可以使用

[C语言]一个很实用的服务端和客户端进行TCP通信的实例

本文给出一个很实用的服务端和客户端进行TCP通信的小例子.具体实现上非常简单,只是平时编写类似程序,具体步骤经常忘记,还要总是查,暂且将其记下来,方便以后参考. (1)客户端程序,编写一个文件client.c,内容如下: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <string.h> #include <sys/types.h> #include <

一个很不错的bash脚本编写教程

转自 http://blog.chinaunix.net/uid-20328094-id-95121.html 一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂! 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用.所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行). 如同其