我试图使用vdfuse来挂载VDI,并使用dd_rescue来恢复一个损坏的VDI。
dd_rescue似乎工作得很好,但是一旦它到达了大约一半的分区,它就会停止并给出以下错误:
ddrescue: write error: Read-only file system等等..什么?它突然将正在写入恢复的分区的FS转换为只读文件系统。好吧..。为什么?我永远也不能完成这一切吗?到底怎么回事?
我的计算机在失去电源时正在运行VBox,当我重新启动它并试图运行vbox实例时,它告诉我硬盘没有操作系统。
因此,在检查了该配置文件的BIOS选项和VBox设置之后,我使用该VDI创建了一个新的配置文件,并得到了同样的错误,证明了VDI确实不可读,并且配置文件不仅仅是搞砸了。
VDI是一个500 it的磁盘,上面有4个分区。当我使用vdfuse将VDI挂载到文件夹时,它包含4个分区作为回送设备(Partition1、Partition2等)。
当我试图挂载第一个分区时,它工作得很好。它是引导分区,因此它不包含任何有用的内容。但是,当我试图挂载我的用户主分区Partition4时,它会说几次Bad superblock at offset ######,但却失败了。
所以,我运行ddrescue Partition4 ../partition4_restore.img,直到它达到(“救援”)大约260 GB,当它停止并给出“只读文件系统”错误时,它才能正常工作。
放置img文件的位置有660 has的空闲。
发布于 2012-12-04 09:34:58
在使用vdfuse挂载之后,我使用了testdisk,它允许我查看和复制Partition4文件中的文件列表。
发布于 2012-12-03 19:01:56
ddrescue错误的疑难解答:您的写入失败,据称与目标卷有关的错误。我建议验证是否真的有可能将这么大的文件写入目标卷:
`dd if=/dev/zero of=testfile bs=32M count=15000`如果该操作成功,您可以合理地确信问题是特定于您的ddrescue操作的。如果失败,您就知道问题在于目标卷。
当然,从您选择的策略后退一步,简单地尝试将fsck -b用于恢复备用超级块是非常有意义的。
发布于 2012-12-08 16:28:46
而不是dd_rescue,您应该使用GNU dd_rescue (http://www.gnu.org/software/ddrescue/ddrescue.html),这是不一样的。原始dd_rescue使用起来不太安全,而GNU dd_rescue是安全的。
但是当您收到写错误时,如果目标分区可以保存这样大的文件(大多数胖分区无法保存),以及目标分区是否有足够的空闲空间,我会首先检查目标分区。
https://serverfault.com/questions/448049
复制相似问题