linux文件恢复

 

 

安装

sudo apt install extundelete

查看版本

extundelete --version

删除数据查找

查看文件系统

df -hT

 

 

 先从根分区 inode 查找:

extundelete /dev/vda1 --inode 2

 

 

 比如此处需要继续进入root则:(根据需要进入要恢复的目录)

extundelete /dev/vda1 --inode 393219

 

我们可以看到标称的 Deleted,这些数据就是我们要进行恢复的数据

 

 

 

一、介绍extundelete

  • 1.extundelete的文件恢复工具,该工具最给力的一点就是支持ext3/ext4双格式分区恢复。
  • 2. 在实际线上恢复过程中,切勿将extundelete安装到你误删的文件所在硬盘,这样会有一定几率将需要恢复的数据彻底覆盖
  • 3. extundelete还是有很大的不完整性,基于整个磁盘的恢复功能较为强大,基于目录和文件的恢复还不够强大。
  • 4. extundelete执行完毕后在当前目录生产一个RECOVERED_FILES目录,里面即是恢复出来的文件,还包括文件夹。
  • 5.任何的文件恢复工具,在使用前,均要将要恢复的分区卸载或挂载为只读,防止数据被覆盖使用。
    umount /dev/partition
    mount -o remount,ro /dev/partition
  • 6.保持良好的习惯,绝对比恢复数据要更简单。

使用及命令

1. umount或者read only 分区

umount /dev/partition
mount -o remount,ro /dev/partition

2.切换到存储恢复文件的目录

cd $dir

3.命令
Usage: extundelete [options] [--] device-file

Options:

--superblock 打印指定分区的超级块信息。如不加任何的参数,

此选项是默认的.

extundelete --superblock /dev/sda3 <---> extundelete /dev/sda1

--journal 显示块的日志信息,同--superblock。

extundelete --journal /dev/sda1

--after dtime 只恢复指定时间【dtime】(时间戳)之后,被删除的数据

假如删除的时间大概是2011-7-26 14:30

date -d "Jul 26 14:30" +%s

得出秒数 1234567890

恢复此时间后删除的所有文件

extundelete /dev/sdb1 --after 1234567890 --restore-all

--before dtime 只恢复指定时间【dtime】(时间戳)之前,被删除的数据

Actions:

--inode ino 显示某分区inode为x的信息,一般是查看该分区下所有的文件.

extundelete --inode 2 /dev/sda1

--block blk 显示某分区block为x的信息.

--restore-inode ino[,ino,...] 恢复一个或多个指定inode号的文件,该恢复的文件,

保存在当前目录下的RECOVERED_FILES里,文件名为【file.$inode】

extundelete /dev/sda1 --restore-inode 13,14

--restore-file 'filename' 恢复指定的文件(被删除的),文件位于当前目录下

的RECOVERED_FILES/$filename,文件名还是原来的

extundelete /dev/sda1 --restore-file initramfs-2.6.32-358.el6.x86_64.img

--restore-files 'read_filename' 恢复指定的文件(真实存在的)中的内容,

文件位于当前目录下的RECOVERED_FILES/$filename,文件名还是原来的

extundelete /dev/sda1 --restore-files test_restore.txt

--restore-directory 'dir-name' 恢复指定的目录,文件位于当前目录下的

RECOVERED_FILES/$dir-name,文件名还是原来的

extundelete /dev/sda1 --restore-files grub

--restore-all 恢复某分区里所有被删除的数据,文件名还是原来的

extundelete /dev/sda1 --restore-all

 举例

--superblock

 

--journal

 

--after dtime
假如删除的时间大概是2011-7-26 14:30
date -d "Jul 26 14:30" +%s
得出秒数 1234567890
恢复此时间后删除的所有文件

/usr/local/bin/extundelete /dev/sdb1 --after 1234567890 --restore-all

--before dtime

--inode

 

--restore-inode ino[,ino,...]

--restore-file 'filename'

--restore-files 'read_filename'

 

--restore-directory 'dir-name'

 

--restore-al

l

参考目录
Linux rm -rf 误删数据恢复
extundelete反删除总结
extundelete工具恢复rm -rf 删除的目录(ext4、ext3)

 

posted @ 2020-09-03 12:34  逐梦客!  阅读(513)  评论(0)    收藏  举报