欢迎来到山村网

Linux 从进程相关的文件描述中恢复数据

2019-03-09 11:30:32浏览:548 来源:山村网   
核心摘要:在Linux中误删除了某个文件,但是 ps-ef|grep 文件名 发现某个进程还在使用该文件,那么可以通过以下方式恢复文件。例如:创建一

在Linux中误删除了某个文件,但是 ps-ef|grep 文件名 发现某个进程还在使用该文件,那么可以通

过以下方式恢复文件。

例如:
创建一个简单文件/tmp/test.txt, 随便向里面写点内容

两个client模拟,client1 负责打开文件less /tmp/test.txt(模拟占用线程)

client2 负责恢复文件

恢复步骤(均在client2上执行)

1. 查看/tmp/test.txt被占用的进程id

[root@host tmp]# ps -ef|grep test.txt
root 31631 31539 0 09:35 pts/0 00:00:00 less test.txt
root 31649 31579 0 09:36 pts/1 00:00:00 grep test.txt

2. cd /proc/31631/fd 文件夹中

3. 执行ll命令

[root@host fd]# ll
total 0
lrwx------ 1 root root 64 Dec 3 09:36 0 -> /dev/pts/0
lrwx------ 1 root root 64 Dec 3 09:36 1 -> /dev/pts/0
lrwx------ 1 root root 64 Dec 3 09:36 2 -> /dev/pts/0
lr-x------ 1 root root 64 Dec 3 09:36 3 -> /dev/tty
lr-x------ 1 root root 64 Dec 3 09:36 4 -> /tmp/test.txt (deleted)

4. 发现了4是软连接到 /tmp/test.txt 文件中的

cat 4 即可找到删除的文件内容

以下是/proc目录中进程N的信息
/proc/N/cmdline 进程启动命令
/proc/N/cwd 链接到进程当前工作目录
/proc/N/environ 进程环境变量列表
/proc/N/exe 链接到进程的执行命令文件
/proc/N/fd 包含进程相关的所有的文件描述符
/proc/N/maps 与进程相关的内存映射信息
/proc/N/mem 指代进程持有的内存,不可读
/proc/N/root 链接到进程的根目录
/proc/N/stat 进程的状态
/proc/N/statm 进程使用的内存的状态
/proc/N/status 进程状态信息,比stat/statm更具可读性
/proc/self 链接到当前正在运行的进程

(责任编辑:豆豆)
下一篇:

ubuntu系统无法安装wps怎么办?

上一篇:

dns是什么?

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com