意外删除了错误的 DD 磁盘

意外删除了错误的 DD 磁盘

我刚刚(意外地)删除了我的第二个磁盘dd if=/dev/zero of=/dev/sdb1。10 秒后,我发现字母错误,990GB 分区中的 2GB 被删除(总磁盘空间为 1TB)。意识到自己做了什么后,我尝试重新安装它,但没有成功。fsck在断开磁盘连接之前,我快速运行了一下,我发现了以下内容:

fsck -y /dev/sdb
fsck from util-linux 2.29.1
e2fsck 1.43.4 (31-Jan-2017)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdb

The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem.  If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>
 or
    e2fsck -b 32768 <device>

Found a dos partition table in /dev/sdb

当然,这两个e2fsck命令都不起作用。有什么方法可以恢复磁盘吗?或者我应该再买一个磁盘并尝试挽救数据?

答案1

(我注意到您fsck在错误的磁盘上运行了命令 - /dev/sdb,而不是/dev/sdb1- 因此在执行任何进一步的操作之前,您可能需要睡一觉/喝杯咖啡,再看看别人的眼睛。)

此时应采取的适当步骤是对驱动器进行一些复制(使用ddddrescue),然后使用数据恢复工具查看可以从驱动器的副本中获得什么。我所做的一切都会保存在备份驱动器上,以防万一。这可能会让事情变得更糟。

我将尝试按如下方式恢复数据:

  1. mke2fs -n /dev/sdb1通过使用- 对提示说“是”来找到备用超级块,并记录它为您提供的备用超级块的编号。
  2. fsck.ext4 -y -b XXXXX /dev/sdb1XXXXX上面的最后一个超级块号码是哪里)。

  3. 安装生成的系统并获取您可以获取的数据。

如果此方法失败,请尝试使用testdisk和/或photorec挽救尽可能少的资源。

相关内容