只针对ext2文件系统:
#debugfs /dev/hda1(被删除文件所在的分区)
debugfs:lsdel
就可列出你最近被删除文件的inode表,大致如下:
Inode Owner Mode Size Blocks Time deleted
依此是节点表号,属主,文件属性(即读、写等),大小,block(一般1block=1K),被删除时的时间。有了这些信息,你应该能很快就判断出那个文件是你想恢复的。这时用
debugfs:dump <你想恢复的inode表值> /home/directory(到那个目录)
OK!就这么简单,在/home/directory中可以找到它。
========================================================
参考资料:
http://www.safe5.com/tech/tuwenjiaocheng/20110610/26568.html
对于ext3文件系统:
1.先研究分区,查看是否是ext3:
df -T 能看到各个分区的文件系统类型(比如ext3)
一般的查看磁盘分区的命令:fdisk -l 或者 df -lh
2.尝试增加虚拟机的分区,然后在新增的分区上进行测试
3.虚拟机里增加磁盘空间的方法:
到vmware安装目录,运行:vmware-vdiskmanager -x 10Gb "D:\Virtual\Ubuntu-9.04\Ubuntu-9.04.vmdk"
注意:10Gb是总大小,运行命令前需要将虚拟机的快照都删除
4.分区命令:
fdisk -l 查看目前的分区表
fdisk /dev/sda
command(m for help):
p 列出分区表
m 列出菜单
n 增加分区
w 保存并退出
举例:我的虚拟机里有/dev/sda1 /dev/sda2 /dev/sda5
所以我创建新的磁盘:
command(m for help):n
p 是主分区,e是扩展分区,我用的是p
primary partition(1-4):3
First cylinder (1045-1305, default 1045): 1045
Last cylinder, +cylinders or +size{K,M,G} (1045-1305, default 1305): 1305
然后再列出分区表,用参数p
可以看到/dev/sda3这个新分区
最后w
然后reboot
5.分区后需要格式化新分区
在根目录创建一个文件夹mkdir /testrm
然后再mount:mount /dev/sda3 /testrm
还需要让这个分区开机自动加载:
修改分区表文件:vi /etc/fstab
添加语句:/dev/sda3 /testrm ext3 defaults 0 0
6.需要安装ext3grep 下载后,发现虚拟机要安装好多插件才行,update后再进行处理
在更换源之后,可以apt-get -install文件,安装ext3grep后运行命令
注意:使用恢复工具前,需要将目录umount
cd /
umount /testrm
然后再运行以下命令:
cd /testrm
ext3grep /dev/sda3 --ls --inode 2 (可以查看所有sda3上面删除过的文件)
7.如果恢复?
经过测试发现恢复只能制定文件,不能恢复目录
举例:
ext3grep /dev/sda3 --restore-file test/test1 (这里的文件路径要注意,是testrm后面的目录)
或者还有一个办法,用参数all,将所有删除过的文件都恢复,这样就会产生很多垃圾文件
ext3grep /dev/sda3 --restore-all
8.重要:
这个和windows一样,恢复出来的数据,需要copy到别的目录
cp -rf /testem/* /testrm1
然后再mount /dev/sda3 /testrm
再将testrm1里面的数据回写到testrm。或者直接mount /dev/sda3 /testrm1
===================================================================
后续可能还会研究ext4的数据恢复
分享到:
相关推荐
centos 恢复 rm -rf 误删数据.docx
Ubuntu中恢复rm命令误删文件.docx
用途:恢复被 rm命令删除的文件。 缺点:只能恢复文件,不能恢复文件夹。 官网:https://www.r-studio.com/zhcn/free-linux-recovery/Download.shtml 使用方法: 恢复被rm命令删除的文件:rlinux ...
在Linux系统删除文件和目录用的命令是 rm (英文全拼:remove),命令也比较好记,就两个字母,但是这个命令对于新手来说,它的危险指数是非常高的,如果一旦操作成误删除了,想要恢复数据是非常困难的,应为Linux...
简略书写恢复流程
rm命令是大多数人在删除文件时经常使用的命令,它用于删除一个文件或者目录。 rm命令的语法如下: rm /path/to/file 还可以删除文件夹和子文件夹中的所有文件,如下所示: rm -R /path/to/folder 文件一旦通过rm...
当 -i 选项配合 rm 命令(也包括其他文件处理命令比如 cp 或者 mv)使用时,在删除文件前会出现一个提示。这同样也可以运用到当复制,移动或重命名一个文件,当所在位置已经存在一个和目标文件同名的文件时。 这...
你还为rm误删数据而懊恼吗 别急 这可以帮你哦
我们在使用中绝大部分要删除文件,为机器腾空 空间。只要不是误删 一些特别重要的内容还好,我一般选择 的是 2 和3 结合使用。当然这种情况的恢复比起第一种方案来说,要差一些。具体选择哪种方案,需要根据自己的...
主要介绍了记录服务器rm -rf误删文件的恢复过程,需要的朋友可以参考下
另外rm通常可以将该文件或目录恢复(注意,rm删除文件其实只是将指向数据块的索引点(information nodes)释放,只要不被覆盖,数据其实还在硬盘上。如果想要保证文件的内容无法复原,可以使用命令shred 。 另外一般...
万能数据恢复大师RecoverMaster v5.35Recovery Master是一款功能非常强大的数据恢复软件,这款超级数据恢复软件具有反删除恢复、格式化后恢复、分区恢复
linux删除文件还原可以分为两种情况,一种是删除以后在进程存在删除信息,一种是删除以后进程都找不到,只有借助于工具还原。这里分别检查介绍下 一,误删除文件进程还在的情况。 这种一般是有活动的进程存在持续...
用junk替代rm功能,删除时不直接...思路:在/trash目录中创建delInfo,记录被删除文件信息,包括被删除文件所在路径(绝对路径)和备份文件名,删除文件时将此信息追加到delInfo中,若是还原则将此信息从delInfo中删除。
那么如果真的删除了不该删除的文件,比如数据库、日志或执行文件,咋办呢?欲知后事如何,请仔细看完本篇博客。 模拟场景 1、删除 误删除服务器目录/root/selenium/Spider下的MySql.Data.dll文件: 2、恢复 (1)、...
推荐阅读:Linux rm 命令误删文件的恢复方法 1. 在/home/username/ 目录下新建一个目录,命名为:.trash 2.. 在/home/username/tools/目录下,新建一个shell文件,命名为: remove.sh 代码如下: PARA_CNT=$# TRASH_...
-f 强制删除文件或目录 -i 删除已有文件或目录之前先询问用户 -r 递归处理, 将指定目录下的所有文件与子目录一并处理 / 在Linux中表示根目录 所有文件 /* 根目录下的所有文件 注意:一旦你执行了上述“rm -rf /” ...
在内存中开辟一个虚拟磁盘空间作为文件存储分区,在其上实现一个简单的基于多级目录的单用户单任务系统中的文件系统。在退出该文件系统的使用时,应将该虚拟...my_rm:用于删除文件。 my_exitsys:用于退出文件系统。
本文档适用于rm -rf误操作,包括rm -rf /*将根目录删除恢复重要文件,目前支持ext文件系统。