linux误操作删除文件后,还能还原么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux误操作删除文件后,还能还原么?相关的知识,希望对你有一定的参考价值。

误删除文件进程还在的情况

这种一般是有活动的进程存在持续标准输入或输出,到时文件被删除后,进程PID还是存在。这也就是有些服务器删除一些文件但是磁盘不释放的原因。比如当前举例说明:

通过一个shell终端对一个测试文件做cat追加操作:

[root@21yunwei_backup ~]# echo  "hello  py" > testdelete.py
[root@21yunwei_backup ~]# cat  >> testdelete.py
hello delete

另外一个终端查看这个文件可以清楚看到内容:

[root@21yunwei_backup ~]# cat testdelete.py
hello  py
hello delete

此时,在当前服务器删除操作文件rm -f ./testdelete.py

命令查看这个目录,文件已经不存在了,那么现在我们将其恢复出来。

1,lsof查看删除的文件进程是否还存在。这里用到一个命令lsof,如没有安装请自行yum或者apt-get。类似这种情况,我们可以先lsof查看删除的文件 是否还在:

[root@21yunwei_backup ~]# lsof | grep deleted
mysqld     1512   mysql    5u      REG              252,3          0    6312397 /tmp/ibzW3Lot (deleted)
cat       20464    root    1w      REG              252,3         23    1310722 /root/testdelete.py (deleted)

幸运的是这种情况进程还存在 ,那么开始进行恢复 操作。

2,恢复。

恢复命令:

cp /proc/pid/fd/1  /指定目录/文件名

进入 进程目录,一般是进入/proc/pid/fd/,针对当前情况:

[root@21yunwei_backup ~]# cd   /proc/20464/fd
[root@21yunwei_backup fd]# ll
total 0
lrwx------ 1 root root 64 Nov 15 18:12 0 > /dev/pts/1
l-wx------ 1 root root 64 Nov 15 18:12 1 > /root/testdelete.py (deleted)
lrwx------ 1 root root 64 Nov 15 18:12 2 > /dev/pts/1

恢复操作:

cp 1 /tmp/testdelete.py

查看文件:

[root@21yunwei_backup fd]# cat  /tmp/testdelete.py
hello  py
hello delete

恢复完成。

参考技术A 你好,如果是linyx误操作删除文件话还是能够还原的,现在网络上出现了很多可以还原手机和电脑中的信息与数据。

Linux文件误删除恢复操作

前言

作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的。尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是其他用户和一些有写盘动作的进程会很快覆盖这些数据。不过,对于家庭单机使用的Linux,或者误删文件后及时补救,还是可以恢复的


一、用运SecureCRT远程对操作系统上,查看一下当前系统版本号,及文件系统格式

[[email protected] ~]# cat /etc/redhat-release 

CentOS Linux release 7.4.1708 (Core) 

[[email protected] ~]# cat /proc/version

Linux version 3.10.0-693.5.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Fri Oct 20 20:32:50 UTC 2017

[[email protected] ~]# uname -a

Linux sheng 3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 20 20:32:50 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

[[email protected] ~]# uname -r

二、为方便本次实验,我们新创建一文件。[[email protected] ~]# mkdir example

[[email protected] ~]# cd example/

[[email protected] example]# cat /proc/meminfo > web.txt

[[email protected] example]# ll

total 4

-rw-r--r--. 1 root root 1226 Dec 25 10:03 web.txt















以上是关于linux误操作删除文件后,还能还原么?的主要内容,如果未能解决你的问题,请参考以下文章

Linux文件误删除恢复操作

快速恢复电脑删除文件

Linux文件误删除恢复操作

linux文件误删除后恢复操作

Linux中找回误删除的文件

Linux rm危险命令误删除文件如何恢复