Linux下修复被误删的文件

参考网上关于 "debugfs 恢复被误删的文件" 相关文章,自己试了一下,走了点弯路,现在把用过的正确的步骤贴出来,希望能方便大家

 

方法1:

 

以/dev/sdc盘的 a.txt文件为例

一:

使用mount –r  –o remount  /dev/sdc1 将该分区重新以只读的方式重新挂载

 

二:

使用 debugfs /dev/sdc1 

 

三 :

使用lsdel命令可以列出很多被删除的文件的信息: 

  debugfs:lsdel

四:

找到最近被删除的文件的inode,dump <12> /mnt/sdc2 

注意/mnt/sdc2是/dev/sdc2(另一个分区)被挂载的目录

五:

退出debugfs: q

方法2:(完全拷贝网上的。。。)

手工编辑inode

 

debugfs:mi <196829> 

  Mode [0100644] 

  User ID [0] 

  Group ID [0] 

  Size [149500] 

  Creation time [0x31a9a574] 

  Modification time [0x31a9a574] 

  Access time [0x31a21dd1] 

  Deletion time [0x31a9a574] 

  Link count [0] 

  Block count [38] 

  File flags [0x0] 

  Reserved1 [0] 

  File acl [0] 

  Directory acl [0] 

  Fragment address [0] 

  Fragment number [0] 

  Fragment size [0] 

  Direct Block #0 [594810] 

  …………………………… 

  Triple Indirect Block 

  使用mi指令后每次显示一行信息以供编辑,其它行可以直接按回车表示确认,把deletion time改成0(未删除),Link count改成1。改好后退出debugfs: 

  debugfs:quit 

  然后用fsck检查/dev/hda5 

  fsck /dev/hda5 

  程序会说找到丢失的数据块,放在lost+found里面。这个目录里的文件就是我们要的东东

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值