欢迎各位兄弟 发布技术文章
这里的技术是共享的
因手快误将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
本文参考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目录下到底有没有
回复成功!
来自 http://blog.csdn.net/xiaoshunzi111/article/details/73543275