linux下恢复误删除的文件

注意:覆盖掉的文件不能恢复

Linux文件系统由三部分组成:文件名,inode,block

比如下面的例子

#文件名   存放文件元数据信息         真正存放数据
a.txt     --->inode     --->block

#查看文件的inode号
    ls -i a.txt

#查看文件的元数据信息(大小,block块)
    stat a.txt

平时删除文件是删除的文件名和inode号(但是block还存在)

当误删除文件时,需要做的事情
1:避免写入新数据,应该卸载,并以只读的方式挂载

安装恢复软件

yum install extundelete

创建两个目录

mkdir /sdb1  /sdb2
(sdb1用于挂载,sdb2用于恢复)

加一块硬盘,分区,并挂载到/sdb1目录

进入sdb1,并创建文件a.txt(写点内容进去)

删除a.txt文件

卸载sdb1

以只读方式挂载到sdb1目录

查看/dev/sdb1 下的inode节点号

extundelete /dev/sdb1 --inode 2

恢复操作

方法一:通过inode号进行恢复
    extundelete /dev/sdb1 --restore-inode 14
方法二:通过文件名进行恢复
    extundelete /dev/sdb1 --restore-file a.txt
方法三:通过目录名进行恢复
    extundelete /dev/sdb1 --restore-direcory a
方法四:恢复所有
    extundelete /dev/sdb1 --restore-all

(注意:上面的工具在ext4文件系统中是不能恢复,空目录,及空文件的,但是在centos7上的xfs文件系统下就可以恢复空目录及空文件)

微信打赏微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者

最后编辑于:2022/11/29作者: 辣条①号

现在在做什么? 接下来打算做什么? 你的目标什么? 期限还有多少? 进度如何? 不负遇见,不谈亏欠!

暂无评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

arrow grin ! ? cool roll eek evil razz mrgreen smile oops lol mad twisted wink idea cry shock neutral sad ???