我不小心使用dd
并覆盖了外部磁盘的前208MB。我写的是一个单独的分区(Debian nestinstaller),所以我现在看到的不是旧的(现在已损坏)的ext4分区,而是另一个较小的分区。这限制了我可以遵循的工具和建议。
我的计划是重新创建分区表testdisk
,然后描述与备份超级块搞定一切在这里。我会丢失前208MB,但与其中的其他300GB数据相比,这还可以。类似于以下内容:
mke2fs -n /dev/sdb1 # doesn't work because sdb1 is the 208MB new partition
testdisk ... # used this to create new correct partition table
mke2fs -n /dev/sdb1 # now works fine, get backup superblock positions
e2fsck -b backup_position -y /dev/sdb1 # returns many errors hence the -y
但是,我一直无法恢复任何东西。我曾经testdisk
写过一个新的分区表,该分区表与以前的表相匹配。当我运行e2fsck时,出现许多不同的错误。之后,我得到一个文件系统,但是它完全是空的,没有文件。
lost + found目录中充满了文件(我认为是已恢复的文件),但我需要恢复目录树,而不仅仅是文件。我需要文件名和以前的目录才能知道文件是什么(显微镜图像,质谱数据等。如果没有名称和目录,它们将毫无意义)。
我得到了完全相同的另一个HD,并用制作了整个HD的副本,dd
因此我可以尝试恢复而不会丢失任何东西。有什么建议吗?
testdisk
用来重新创建分区。我会尝试的fdisk
。
fdisk
我什e2fsck
至无法使用,因为它找不到超级块备份。我认为问题在于我无法编辑CHS(新分区将其设置为64,但应为255)