分类: LINUX
2018-04-03 12:00:15
【摘要】
Linux跟windows不同,删除文件后不会先到回收站,无法直接进入回收站找回并还原,根据Linux文件保存原理,可以使用extundelete工具来实现误删文件数据的恢复。
本文转自——学领未来
【正文】
Linux文件系统中删除文件后,实际是将inode节点中文件的扇区删除,同时释放文件所占的数据块block,在这些数据块还没被系统重新分配给其他文件时,可以找回已删除的文件,为了防止没有新的数据写入,需要取消挂载文件所在的盘,此外,也可以将盘设置为只读模式。本文是使用umount取消挂载这一步骤来防止文件继续写入。
extundelete是基于Linux的一个数据恢复工具,它通过分析文件系统的日志,解析出所有文件的inode信息,从而可以恢复Linux下主流的ext3、ext4文件系统下被误删除的文件。extundelete会通过文件系统的inode信息(根目录的inode一般为2)来获得当前文件系统下所有文件的信息,包括存在的和已经删除的文件,这些信息包括文件名和inode。然后利用inode信息结合日志去查询该inode所在的block位置,包括直接块、间接块等信息。最后利用dd命令将这些信息备份出来,从而恢复数据文件。
fdisk /dev/sdb
fdisk -l 确认分区已经创建
mkfs -t ext3 /dev/sdb1
mkdir /data
mount /dev/sdb1 /data/
umount /dev/sdb1
extundelete /dev/sdb1 –inode 2
extundelete –restore-all /dev/sdb1