取消删除ext4上的文件

我的母亲每次事故都在她/ tmp上放了一些重要文件。 当然,现在它们已经消失了。

这发生在昨天(机器的2个靴子)

我想尝试取消删除文件。 它们位于/ tmp上,与/的其余部分位于同一分区上,因此我需要一个在已安装系统上运行的工具(或者我可以使用livecd …)

现在,我正在我刚下载的systemrescuecd上尝试testdisk。 我可以从/ tmp获取一些文件,但不是全部。 (它是正确的工具吗?那些“红色”文件究竟是什么?只有部分可以恢复?)

你也可以使用extundelete

首先卸载( umount )已删除文件的文件系统。
然后阅读如果删除文件怎么办

您可以从经典的Ubuntu存储库安装extundelete

 sudo apt-get install extundelete 

或者更好的是,您可以下载最新版本并进行编译:

 cd ~/Download tar -xf extundelete-*.*.*-.tar.bz2 #Replace *.*.* by the version cd extundelete-*.*.* sudo apt-get install e2fslibs-dev #Required for compilation ./configure make sudo make install extundelete --version #Should be your *.*.* version 

用法示例:将目录中所有已删除的文件还原到新创建的目录restore

 sudo extundelete --restore-directory Images/ -o restore /dev/sda3 

如果您在以下格式中看到XXXX文件,则会有错误消息:

 Unable to restore inode NNN (Images/XXXX): Space has been reallocated. 

查看所有已还原的文件(查找您的文件):

 find restore -name '*' 

备份文件并删除此临时目录restore

 cp restore/Images/XXXX MY_BACKUP_DIRECTORY sudo rm -rf restore 

应该从实时CD或其他不依赖于您取消删除的分区的系统尝试数据恢复,尤其是在EXT文件系统上。 将磁盘卸载或重新安装为只读有助于大量恢复工作。

大多数时候我尝试使用dd或类似的工具创建分区或磁盘的映像,这样我就不会在磁盘上工作了:

 dd if=/dev/sd[xx] of=/media/backup_drive/recovery.img 

获得图像后,您可以使用ext3grep类的工具尝试查找您正在查找的文件。 你可以尝试很多不同的开关,但这可能是一个好的开始:

 ext3grep --restore-file 'tmp/moms-file.txt' recovery.img 

如果您不知道文件的名称, ext3grep实用程序还提供了几种不同的方法来搜索文件系统。 检查ext3grep --help以了解各种搜索方法。

我更喜欢使用ext4magic:

 sudo ext4magic /dev/sdc3 -r -f $USERl/Documents/ -d /tmp/local/tmp/ 

请注意,您必须自己解析符号链接

参考文献:

http://sourceforge.net/projects/ext4magic/

http://rzr.online.fr/q/recover

我无法使用ext4magic或extundelete恢复我的crontab文件。

在Debian上,root的crontab在这里:

 /var/spool/cron/crontabs/root 

但是,通过使用以下命令,我至少能够从日志中手动恢复我的crontab。

  grep CRON /var/log/syslog.* -i| awk -F " CMD " {'print $2;'} |sort | uniq 

它只输出执行的cron作业(没有时间),但至少这比从头开始要多得多。

如果您不记得某些cron作业的运行频率,请记录完整日志,例如syslog.1,这将为您提供当天运行的计数:

 grep CRON /var/log/syslog.1 -i| awk -F " CMD " {'print $2;'} |sort | uniq -c |sort -n 

AnalyzeEXT

解析EXT目录数据的数据块。

有关EXT4的详细文档,请访问:

下载perl脚本

 git clone https://github.com/halpomeranz/analyzeEXT 

不保证但可能能够重建已删除的文件系统。

Interesting Posts