开发者社区> 问答> 正文

rm /* 恢复删除文件

问题:在Linux里面不小心使用了rm -rf ./test_chk_ln/ (这样就会把原来test_chk下的内容删除)
          注:未做快照与备份

展开
收起
库洛斯 2018-10-13 00:08:06 1272 0
1 条回答
写回答
取消 提交回答
  • 无知人生,记录点滴。 不积跬步,无以至千里;不积小流,无以成江海 订阅号:微wx笑, 个人站点:https://www.ivu4e.cn/,https://www.ivu4e.com/ CSDN博客:https://blog.csdn.net/testcs_dn
    1. lsof
       文件刚刚被删除,想要恢复,先尝试lsof.
      #lsof |grep data.file1
      # cp /proc/xxx/xxx/xx  /dir/data.file1

    2. 
      如果lsof不能看到文件,那么就需要使用恢复软件进行恢复。
      要做的第一件事是立刻卸载被误删除文件所在的分区,或者重新以只读方式挂载此分区。
       umount  /dev/part    或    mount -o remount,ro /dev/part
      删除一个文件,就是将文件inode(inode 是操作系统寻找文件的目录,起到索引作用)
      节点中的扇区指针清除,同时,释放这些数据对应的数据块,
      而真实的文件还存留在磁盘分区中。但是这些被删除的文件不一定会一直存留在磁盘中,当这些
      释放的数据块被操作系统重新分配时,这些被删除的数据就会被覆盖。因此要立刻卸载分区。

    3. ext3grep 
      该工具只能用于ext3文件系统,操作步骤不详细介绍.
      1> unmount /dev/part
      2> ext3grep /dev/part --ls --inode 2        ##列出可恢复文件信息
      3>ext3grep /dev/part --restore-inode N
      4>恢复到 RESTORED_FILES/
      更多命令查看 ext3grep --help


    4. extundelete
       该工具可以恢复ext3,ext4.    http://extundelete.sourceforge.net/
        
       1>fuser -k /dev/part  && unmunt /dev/part
       2>extundelete --inode 2  /dev/part
       3>extundelete --restore-inode 13 /dev/part
       4>恢复到 RECOVERD_FILES/



    如果我的回答有帮助,请点击采纳,谢谢!
    2018-10-13 09:45:16
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载