欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

debugfs恢复linux上rm误删的文件

因手快误将Linux系统上辛苦编写的代码直接rm误删,由于未将代码更新到git,代码改动又比较大,重写起来太费劲,因此想着怎样才能恢复误删的文件。

 

网上查了许多资料,目前总结出一个比较实用于自己的恢复方法,记录于此:

 

神器debugfs

 

1 执行sudo debugfs -w /dev/sda1 命令,进入debugfs模式,其中sda1是你所在的分区,因人而异。

2 执行lsdel,列出最近所有删除的文件,结果是按时间顺序从老到新排列

  结果格式类似:

    Inode Owner Mode Size Blocks Time deleted
    8934222 14456 100664 592 1/ 1 Wed Aug 26 11:49:48 2015

  如果结果太多,可以直接执行如下命令: echo lsdel | debugfs /dev/sda1 > lsdel.out

  如此可将结果输出成本地文件。

3 从列出的删除结果中,或从保存的结果文件中找到被删除的文件,可根据删除时间、文件所有者确认。找到被删除文件后,第一个数字为inode号。

4 在debugfs模式下,执行 dump <123456> /tmp/123456.bak,可将被删除的文件恢复,其中123456为被删除文件的inode号。

5 确认恢复的文件是否为期望的文件。

 

后记

祝文件恢复成功,愿不再手快直接rm。


来自  https://www.cnblogs.com/lidm/p/5833273.html

Linux文件误删除恢复操作

原创 2017年06月21日 13:51:29

本文参考http://write.blog.csdn.net/postedit?ticket=ST-491405-OGjDDusZeyMgVQ7bHW7f-passport.csdn.net

前言

作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的。尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是其他用户和一些有写盘动作的进程会很快覆盖这些数据。不过,对于家庭单机使用的Linux,或者误删文件后及时补救,还是可以恢复的


一、用运SecureCRT远程对操作系统上,查看一下当前系统版本号,及文件系统格式



二、为方便本次实验,我们新创建一文件。




三、执行删除操作


rm -rf  web_1.txt


四、运用,系统自还工具debugfs来修复





五、打开,刚刚被删除文件所在的分区

*****************************************************************************************

查看目录在分区



******************************************************************************************






六、用ls 加-d参数显示刚刚删除文件所在的目录




七、显示有<>尖括号的就是我们要找的文件Inode 号 执行logdump –I  <19662057>





八,执行完命令后,显示了一屏信息,我们需要的是下面这一行,并且要记住,后面的值






九、退出dedugfs

qiut


十,执行如下命令


bs与下图offset值一致,skip与block值一致




十一,以上结果表示恢复成功我们看下/opt/wb_1目录下到底有没有




回复成功!




三、执行删除操作
六、用ls 加-d参数显示刚刚删除文件所在的目录

来自  http://blog.csdn.net/xiaoshunzi111/article/details/73543275

普通分类: