- 浏览: 326689 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
longge424:
你好,可否将saml与spring security结合使用的 ...
SAML介绍 -
bnmnba:
mark
(转)Ant 学习笔记(一) -
redhacker:
写的还不错!谢谢!
SAML介绍 -
linluxian:
SAML介绍 -
hyj1254:
有效,good.
Linux创建目录与删除目录命令具体分析
导读:
一、用事实说话
二、关于LSOF命令的其它用法:
三、参考文档:
正文:
lsof:Finding open files with lsof
作用:查看文件被哪些进程打开
一、用事实说话
【实验】Linux下文件删除、句柄与空间释放问题
窗口1:创建test文件,并用less命令打开它
[root@monitor monitor]# echo "zhengBin is Bkeep" >> test
[root@monitor monitor]# ls –sortk
8 -rw-r--r—1 root 1 Dec 9 16:02 error.txt
120 -rw-r--r—1 root 112 Dec 10 16:38 test
[root@monitor monitor]# less test
zhengBin is Bkeep
(END)
窗口2:使用lsof命令排查问题
[root@monitor monitor]# rm –rf test
[root@monitor monitor]# lsof |grep test //注意,这里test文件已被标记为 “deleted”,但仍然被less进程锁定(pid:23253)
less 23253 root 4r REG 253,0 18 2850936 /usr/monitor/test (deleted)
[root@monitor ~]# ps -ef |grep 23253 //查看less进程的系统用户,为root!
root 23253 23042 0 17:16 pts/1 00:00:00 less test
root 23291 23256 0 17:17 pts/0 00:00:00 grep 23253
[root@monitor ~]# kill -9 23253 //杀掉该进程,系统才会释放test占用的磁盘空间。(重启系统或服务也行)
[root@monitor ~]# lsof |grep test
没有了,说明空间已被释放!
二、关于lsof命令的其它用法:
1,查看目录和文件正在被那些进程使用。
[root@monitor monitor]# umount /
umount: /: device is busy
umount: /: device is busy
[root@monitor monitor]# lsof /
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
init 1 root cwd DIR 253,0 4096 2 /
init 1 root rtd DIR 253,0 4096 2 /
init 1 root txt REG 253,0 38620 9306178 /sbin/init
init 1 root mem REG 253,0 125736 6686192 /lib/ld-2.5.so
init 1 root mem REG 253,0 1602128 6686193 /lib/libc-2.5.so
init 1 root mem REG 253,0 16428 6686196 /lib/libdl-2.5.so
init 1 root mem REG 253,0 93508 6686210 /lib/libselinux.so.1
init 1 root mem REG 253,0 242880 6686209 /lib/libsepol.so.1
migration 2 root cwd DIR 253,0 4096 2 /
migration 2 root rtd DIR 253,0 4096 2 /
ksoftirqd 3 root cwd DIR 253,0 4096 2 /
ksoftirqd 3 root rtd DIR 253,0 4096 2 /
2,查看远程ip调用了系统那些进程
[root@monitor monitor]# netstat -natp
tcp 0 1008 ::ffff:192.168.254.51:22 ::ffff:192.168.254.149:1066 ESTABLISHED 22779/0
[root@monitor monitor]# lsof -i @192.168.254.149
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 22779 root 3u IPv6 98877 TCP 192.168.254.51:ssh->192.168.254.149:fpo-fns (ESTABLISHED)
3,根据端口号查看服务名
[root@monitor monitor]# lsof -i :25
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sendmail 4653 root 4u IPv4 9307 TCP monitor:smtp (LISTEN)
4,谁在打开sendmail.pid文件?
[root@monitor run]# lsof /var/run/sendmail.pid
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sendmail 4653 root 5wW REG 253,0 33 9667079 /var/run/sendmail.pid
5,【重要】查看某个进程号所打开的所有系统文件
参数说明:
-a,所有参数都必须持有真实的文件显示
-p,进程号
-d,txt记录将被过滤掉;^ 排除的意思 (the carat [^] means exclude).
[root@monitor run]# lsof -a -p 4653 -d ^txt //【重要】
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sendmail 4653 root cwd DIR 253,0 4096 9666678 /var/spool/mqueue
sendmail 4653 root rtd DIR 253,0 4096 2 /
sendmail 4653 root mem REG 253,0 6684758 /lib/libdb-4.3.so (path inode=6684892)
sendmail 4653 root DEL REG 253,0 2107155 /usr/lib/liblber-2.3.so.0.2.15.#prelink#.1kBcGu
sendmail 4653 root DEL REG 253,0 2107070 /usr/lib/libgssapi_krb5.so.2.2.#prelink#.Y8RNd8
sendmail 4653 root mem REG 253,0 2101464 /usr/lib/libz.so.1.2.3 (path inode=2117529)
sendmail 4653 root mem REG 253,0 46680 6684713 /lib/libnss_files-2.5.so
sendmail 4653 root mem REG 253,0 14596 2162994 /usr/lib/sasl2/libanonymous.so.2.0.22
sendmail 4653 root mem REG 253,0 905200 2164220 /usr/lib/sasl2/libsasldb.so.2.0.22
sendmail 4653 root mem REG 253,0 6684723 /lib/libresolv-2.5.so (path inode=6686208)
sendmail 4653 root mem REG 253,0 6684701 /lib/libcrypt-2.5.so (path inode=6686216)
sendmail 4653 root mem REG 253,0 6684759 /lib/libkeyutils-1.2.so (path inode=6686207)
sendmail 4653 root 2w CHR 1,3 1449 /dev/null
sendmail 4653 root 3u unix 0xd45eb740 9306 socket
sendmail 4653 root 4u IPv4 9307 TCP monitor:smtp (LISTEN)
sendmail 4653 root 5wW REG 253,0 33 9667079 /var/run/sendmail.pid
6,ls命令参数解释
[root@monitor monitor]# ls –sortk
8 -rw-r--r—1 root 1 Dec 9 16:02 error.txt
120 -rw-r--r—1 root 112 Dec 10 16:38 test
参数说明:
s:第一列显示的块大小(个);o:类似l 但不显示group; S:按文件大小排序
r:倒序; t:按时间排序 k:字节数按KB来显示
发表评论
-
一个不错的shell 脚本教程
2015-12-16 17:01 0Linux中有好多中不同的shell,但是通常我们使用bas ... -
Linux下查看文件和文件夹大小
2015-08-27 17:16 720当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令 ... -
(转)Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
2015-06-04 16:49 1814互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已 ... -
AWK处理两个文件公共字段
2015-06-03 16:36 4160在文件score.txt中存有如下数据:(姓名 分数) ... -
linux awk的使用详解(收藏)
2014-09-03 16:04 678简介 awk是一个强大的文本分析工具,相对于grep的查 ... -
linux下通过JNI用C/C++中调用JAVA类
2012-07-20 16:15 1741最近工作中完成 ... -
Linux环境变量的设置和查看方法
2011-10-23 21:40 1702Linux是一个多用户的操作系统。每个用户登录系统后,都 ... -
Linux创建目录与删除目录命令具体分析
2010-12-13 09:40 4032最近被人问到如何在linux下创建多层目录结构,当时只是知道m ... -
linux下查看端口的状态
2010-12-01 23:02 1530netstat -tln 命令是用来查看linux的端口使用情 ... -
SUSE Linux 立即关闭防火墙的命令和指定开放某些端口(转载)
2010-08-11 14:42 8807转载自:http://www.justwinit.cn/pos ... -
xhost unable to open display解决方法
2010-08-09 09:54 4486在ixpub上看到很多朋友遇到关于xhost 命令的 ... -
守护进程
2010-07-28 17:58 969在linux或者unix操作系统中在系统的引导的时候会开启 ... -
vi 的查找替换
2010-07-28 10:40 1265vi替换命令用法详解 : ranges /pat1/pa ... -
(转)使用 syslog-ng 搭建安全的日志集中服务器
2010-07-21 15:26 5783管理Linux系统以及应用 ... -
深入分析配置静态路由与相关命令
2010-07-21 15:16 1922配置静态路由的步骤还很简单的。由于路由器Router3除了 ... -
SUSE下使用syslog-ng部署日志服务器指导
2010-07-21 12:50 4847摘要: 日志文件集中存储是网络安全的必要手段,可将 ... -
[转]在Linux中使能IP转发
2010-07-20 17:03 2408Linux系统缺省并没有打开IP转发功能,要确认IP转发功能的 ... -
Tcpdump的使用
2010-07-15 17:56 1500实际用例: 监测192.16.0.100到192.16.0.1 ... -
Linux命令之Ethtool
2010-07-06 10:42 1568描述:Ethtool是用于查询及设置网卡参数的命令。 概要 ... -
Linux系统的文件句柄数量问题
2010-07-01 17:40 2403在Linux下面部署应用的时候,有时候会遇上Socket/F ...
相关推荐
linux lsof命令详解.docx
主要给大家介绍了关于在linux中利用lsof命令如何查看文件打开情况的相关资料,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
lsof全名,list opened files,也就是列举系统中已经被打开的文件。用好lsof命令,对日常的linux管理非常有帮助。
NULL 博文链接:https://paninxb.iteye.com/blog/951912
linux lsof源码
在Linux系统中,通过rm删除文件将会从文件系统的目录结构上解除链接(unlink),如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件磁盘空间也一直被占用 这样会导致我们明明删除了文件,...
主要介绍了linux lsof命令详解的相关资料,lsof是一个列出当前系统打开文件的工具,这里详细介绍如何使用,需要的朋友可以参考下
在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件...
在linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间,最后造成磁盘空间占用100%,整个系统无法正常运行。...
lsof(list open files)是一个查看进程打开的文件的工具。 在 linux 系统中,一切皆文件。通过文件不仅仅可以访问常规数据,还可以访问...目录> 输出目录及目录下被打开的文件和目录(不递归) +D <目录> 递归输出及目
lsof恢复删除的文件 工具也是命令
修改文件句柄数在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。 对于一般的应用来说(象Apache、系统进程)1024完全足够使用。但是如何象...
解压安装包 tar -zxvf lsof_4.76.tar.gz 解压源码包 cd lsof_4.76 tar -xvf lsof_4.76_src.tar 编译源码 cd lsof_4.76_src ./Configure linux ...ln -s /root/songzehao/lsof_4.76/lsof_4.76_src/lsof /usr/bin
Linux系统被入侵后使用lsof命令恢复被删除日志的方法.docx
交叉编译完成的lsof命令,适合在arm-cpu架构的服务器上使用
lsof命令在嵌入式中还是挺有用的,而在一般的嵌入式系统中,并没有移植该命令,需要自己移植。 本资源原下载地址:http://archive.ubuntu.com/ubuntu/pool/main/l/lsof/lsof_4.81.dfsg.1.orig.tar.gz 交叉编译步骤:...