推广 热搜: 后台  帝国cms  DESTOON  位置  网站  帝国cms建站  Wordpress教程  MAC系统  内容  destoon模板 

Linux使用extundelete恢复误删文件数据

   日期:2023-06-02     来源:blog.chinaunix.net    作者:学领未来    浏览:42    违规举报
 

Linuxwindows不同,删除文件后不会先到回收站,无法直接进入回收站找回并还原,根据Linux文件保存原理,可以使用extundelete工具来实现误删文件数据的恢复。

本文转自——学领未来

 

【正文】

 

Linux文件系统中删除文件后,实际是将inode节点中文件的扇区删除,同时释放文件所占的数据块block,在这些数据块还没被系统重新分配给其他文件时,可以找回已删除的文件,为了防止没有新的数据写入,需要取消挂载文件所在的盘,此外,也可以将盘设置为只读模式。本文是使用umount取消挂载这一步骤来防止文件继续写入。

 

extundelete是基于Linux的一个数据恢复工具,它通过分析文件系统的日志,解析出所有文件的inode信息,从而可以恢复Linux下主流的ext3ext4文件系统下被误删除的文件。extundelete会通过文件系统的inode信息(根目录的inode一般为2)来获得当前文件系统下所有文件的信息,包括存在的和已经删除的文件,这些信息包括文件名和inode。然后利用inode信息结合日志去查询该inode所在的block位置,包括直接块、间接块等信息。最后利用dd命令将这些信息备份出来,从而恢复数据文件。

 

   环境准备

 

1.1  在虚拟机新增硬盘后,新建分区

 

fdisk /dev/sdb

 

 

fdisk -l 确认分区已经创建

 

 

1.2  格式化分区

 

mkfs -t ext3 /dev/sdb1

 

 

1.3  模拟生产使用新建文件夹,挂载到新建的分区,然后上传几个文件

 

mkdir /data

 

mount /dev/sdb1 /data/

 

 

 

 

 

 

 

   文件删除及恢复

 

2.1  删除/data中刚上传的文件

 

 

 

 

2.2  开始恢复

 

2.2.1        取消挂载 /data,放着该分区有写入新数据,覆盖原来文件所占的block

 

umount /dev/sdb1

 

 

2.2.2       安装extundelete

 

 

2.2.3       查看/dev/sdb1 中的文件,可以看到有刚才已经删除的文件

 

extundelete /dev/sdb1 –inode 2

 

 

 

2.2.4       恢复文件,会在当前目录下新建 RECOVERED_FILES 的文件夹,文件会恢复到这个目录下

 

extundelete –restore-all /dev/sdb1

 

 

         

免责声明:
1、本站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
2、本站部分作品内容是由网友自主投稿和发布、编辑整理上传,对此类内容本站仅提供交流平台,不为其版权负责,更不为其观点承担任何责任。
3、因行业及专业性有限,故未能核验会员发布内容的真实性及有效性,不为其负责,如有虚假或违规内容敬请准备材料图片发邮件到info@n360.cn举报,本站核实后积极配合删除。
4、如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时处理或删除。
 
打赏
 
更多>同类网站技术
0相关评论

推荐图文
推荐网站技术
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  免责声明  |  版权隐私  |  信息发布规则  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  粤ICP备2020081222号
Powered By DESTOON