linux家目录被删掉了如何重新创建,误删home下面的家目录,该如何恢复

41413e7027ffa026ba737eccea21484e.gif

41413e7027ffa026ba737eccea21484e.gif

这个不知道,不过一下可以试下,恢复被删除文件

删掉文件其实只是将指向数据块的索引点 (information nodes) 释放,只要不被覆盖,数据其实还在硬盘上,关键在于找出索引点,然后将其所指数据块内的数据抓出,再保存到另外的分区。

我先在网上查有关 linux undelete 的信息,找到一个 ext2fs-undeletion 的mini-Howto,后发觉在RH6.2的 /usr/doc/HOWTO 内也有,按它的方法,先将被删掉数据的盘区 umount 掉(防止写盘覆盖被删除的数据,显然这一步在误删数据后做得越快越好,尤其是对多人使用的计算机),然后查文件系统中哪些索引点最近被释放:

#debugfs /dev/hda6 (my 'home' partition)

debugfs: lsdel

即给出相应信息,包括索引点,文件属主,大小,删除日期等。也可将结果输出到一个文件中

debugfs: quit

# echo lsdel | debugfs /dev/hda6 > lsdel.out

还可用 debugfs 中 stat 查看某一索引点的详细信息:

debugfs: stat <148003>

尤其注意其数据块是否连续!

然后将该索引点所指数据块内的数据抓出并存到另一盘区:

debugfs: dump <148003> /dosd/tmp/recovered.001

按该 mini-Howto 的说法,以上方法只使用于大小不超过 12 个 block 的文件,对于超过 12 个 block 的文件,由于 unix 是将数据分段保存的,需要将各段数据分别取出再拼接,所以比较麻烦。但我用 stat 检查的结果,大文件的数据块也都是紧挨着的,并没有被分段, 于是我试着用同样的方法将文件 dump 出来,发觉结果完全正确,对六百多兆的大文件也适用!不知道 linux 就是连续保存文件的,还是因为我的计算机只有我一个用户而使然,反正我用上述简单方法将我误删的绝大部分文件都恢复了。

需要说明的一点是,恢复的文件是没有保留文件名的,需要你查看文件内容后,再重新命名。

+3

热心广援

2012-10-20 13:08

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值