恢复 ext4 上的文件

恢复 ext4 上的文件

我妈妈不小心把一些重要文件放在了她的 /tmp 上。当然,现在它们不见了。

这是昨天发生的(此后机器已启动两次)

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

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

答案1

您还可以使用extundelete

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

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

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

使用示例:将目录中所有已删除的文件恢复Images到新创建的目录中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  

答案2

数据恢复(尤其是 EXT 文件系统的数据恢复)应从实时 CD 或其他不依赖于您要恢复的分区的系统尝试。卸载磁盘或将其重新安装为只读对恢复工作大有帮助。

大多数时候,我尝试使用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各种搜索方法。

答案3

我更喜欢使用 ext4magic 作为:

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

注意你必须自己解析符号链接

参考:

http://ext4magic.sourceforge.net/howto_en.html

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

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

答案4

我无法使用 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

相关内容