Linux数据恢复的研究

来源:互联网 发布:五五开的淘宝店叫什么 编辑:程序博客网 时间:2024/05/20 07:17

缘起:

9月19日,手贱强制重启了工作机器,结果很多资料没有了,特别是这几个月零散的工作笔记(还好系统性的书稿因为邮件系统保存下来了)。。痛定思痛:

  1. 自测还是链上,不能长期独立,引发配置文件不一致

  2. 工作机器不能强制重启,以后每天早上来重启一下,期间写今日工作计划

  3. 缺乏备份手段(就算到本地硬盘都没有,更别说百度盘)

  4. 每月底抽1小时整理一下学习资料,过去的知识可以发博客


首要是预防,那事故发生后要做什么呢:

  1. 发生事故后,应当将* /dev/sdb5 * 这个设备(也就是根节点)用dd备份到移动硬盘或者另外硬盘上;当时我没有这么做,导致后面写入的数据都覆盖了原来的数据;随着时间的推移,希望越来越小,只能节哀顺变了

  2. 真正发挥了作用的是wps的智能备份,我用来找回了 45天 的工作日志xls,还有几篇doc文档。但是8月份之前的文档没有了,可能智能备份也有期限

  3. debugfs 这个可以用来搜索是否有误删除的文件(我用了,没有搜索出来)

    百度经验:Linux文件误删除恢复操作

  4. foremost,这个据说是美国国家安全机构的两个人写的,用于数字取证(听起来有点像 CSI Cyber)

    恢复了20G数据,除了几个word比较有价值,其他都是无用的数据,很多exe是wine里面的

    //见如下命令

    sudo apt install foremost

    foremost -t all -i /dev/sdb5 -o /media/Backups/recover

  5. extundelete,相对来说这个工具比较好用。恢复过教程中的示例文件。不过之前的foremost命令,我忘了加输出目录,结果其默认输出到根目录了,因为根目录和home目录在一个文件文件系统下,结果很多inode都 Space has been reallocated, 不过这个应该是我操作原因,工具本身还是不错的。

    如上两个命令的介绍 foremost vs extundelete


教训沉痛,希望借着这次的契机,对tar命令,对markdown笔记(以前都是用myBase desktop记笔记,没怎么用markdown,现在切换到wiznote云笔记,用markdown),对wps都有新的了解,Ubuntu的应用水平能进一步提高


数据恢复一定要了解文件系统,现在Linux主要的是ext3 ext4(08年开始ext4出来,很多工具跟着改)

ext4 决定采用 48 位的块号取代 ext3 原来的 32 位块号

IBM的研究:如何恢复Linux上删除的文件