Chinaunix

标题: 关于磁盘未释放空间导致磁盘满引申出的lsof命令 [打印本页]

作者: cu_Cbear    时间: 2011-09-25 22:20
标题: 关于磁盘未释放空间导致磁盘满引申出的lsof命令
关于磁盘未释放空间导致磁盘满引申出的lsof命令



今天一台服务器磁盘空间满了,让客服处理了一下,结果一会跟我抱怨说删完了,还是满的,我上去一看,原来被删除的文件被进程占用了,就处理了一下。
用命令如下lsof -n | grep  delete
这样查到的信息都是未释放出磁盘空间的程序,然后看那个程序占用的磁盘空间大,然后把相应的程序杀掉重启该程序就OK了。。

lsof常用参数lsof  常见的用法是查找应用程序打开的文件的名称和数目。可用于查找出某个特定应用程序将日志数据记录到何处,或者正在跟踪某个问题。例如,linux限制了进   程能够打开文件的数目。通常这个数值很大,所以不会产生问题,并且在需要时,应用程序可以请求更大的值(直到某个上限)。如果你怀疑应用程序耗尽了文件描  述符,那么可以使用 lsof 统计打开的文件数目,以进行验证。lsof语法格式是:
lsof [options] filename常用的参数列表:
lsof  filename 显示打开指定文件的所有进程lsof -a 表示两个参数都必须满足时才显示结果lsof -c string   显示COMMAND列中包含指定字符的进程所有打开的文件lsof -u username  显示所属user进程打开的文件lsof -g gid 显示归属gid的进程情况lsof +d /DIR/ 显示目录下被进程打开的文件lsof +D /DIR/ 同上,但是会搜索目录下的所有目录,时间相对较长lsof -d FD 显示指定文件描述符的进程lsof -n 不将IP转换为hostname,缺省是不加上-n参数lsof -i 用以显示符合条件的进程情况lsof -i[46] [protocol][@hostname|hostaddr][:service|port]            46 --> IPv4 or IPv6            protocol --> TCP or UDP            hostname --> Internet host name            hostaddr --> IPv4地址            service --> /etc/service中的 service name (可以不只一个)            port --> 端口号 (可以不只一个)




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2