lsof_commands
Table of Contents
1 lsof常用命令
lsof(list open files)是一个列出打开文件的命令。在Linux下非常有用。常用命令列表:
| args | desc |
| filename | 显示所有打开文件的文件名 |
| -a | 表示两个参数都必须满足时才显示结果 |
| -c string | 显示shell下command中包含string的命令 |
| -u username | 显示username打开的所有文件 |
| -g gid | 显示数据gid的所有进程情况 |
| +d dir | 显示目录下进程打开文件情况 |
| +D dir | 显示目录及子目录下进程打开文件情况 |
| -d fn | 显示指定文件描述符的文件 |
| -n | 不将IP转换为hostname |
| -i\[46\] \[protocol\]\[@hostname!hostaddr\]\[:service!port\] | 显示符合条件的进程情况 |
利用lsof恢复删除文件,如果文件在磁盘被删除,但是如果还有进程在操作此文件,这时文件是可以恢复的。因为当有进程读写此文件时,此文件被删除了,这时只删除了文件的索引,并没有删除文件的内容,可以想办法恢复。这时可以通过lsof查找对应的文件fd,
lsof | grep filename
然后在/proc/<processid>/fd/<fileid>就是对应的文件id, 恢复命令如下:
cat /proc/<process_id>/fd/<file_id> > filename

1897

被折叠的 条评论
为什么被折叠?



