rm * 误删除恢复

浏览: 2252

1. umount 文件系统

$ umount /dev/sda1
$ mount -o remount,ro /dev/sda1

其中,sda1是误删文件所在盘。若操作系统就在sda1上,会提示sda1 is busy。那只好不umount,在后面的extundelete命令直接恢复在sda1上了。

2. 用系统自带 debugfs 命令,找到误删文件的 inode

$ sudo debugfs
debugfs: open /dev/sda1
debugfs: ls -d /cnn/caffe

其中,/cnn/caffe是误删除文件所在目录。列出文件inode形如:

 27132740  (12) .    43515906  (4084) ..   <2> (28) file_list_all.txt   
<27525645> (20) features_all   <27132765> (28) feat_helper_pb2.py   
<27132766> (28) feat_helper_pb2.pyc 

然后退出debugfs。

debugfs: quit

3. 用 extundelete 命令恢复 

$ cd
$ sudo extundelete /dev/sda1 --restore-inode 27525645
$ sudo extundelete /dev/sda1 --restore-inode 27132765

如果没有下面这句话,就是恢复成功了

Unable to restore inode 27525645 (file.27525645): Space has been reallocated

4. 恢复文件名

恢复的文件放在目录~/RECOVERED_FILES

$ cd RECOVERED_FILES/
$ mv file.27132765 feat_helper_pb2.py
推荐 2
本文由 safa 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册