我正要使用 ddrescue 恢复五个故障 RAID 磁盘中的第二个,突然我的脑海中出现了奇怪的变化,我输入
sudo ddrescue --verbose --idirect --no-scrape -f /dev/sda /dev/sdc disk1.logfile
而应该有 /dev/sdc /dev/sda。这运行了大约 28 秒:
GNU ddrescue 1.23
About to copy 6001 GBytes from '/dev/sda' to '/dev/sdc'
Starting positions: infile = 0 B, outfile = 0 B
Copy block size: 128 sectors Initial skip size: 117248 sectors
Sector size: 512 Bytes
Press Ctrl-C to interrupt
ipos: 5961 MB, non-trimmed: 0 B, current rate: 59375 kB/s
opos: 5961 MB, non-scraped: 0 B, average rate: 205 MB/s
non-tried: 5995 GB, bad-sector: 0 B, error rate: 0 B/s
rescued: 5961 MB, bad areas: 0, run time: 28s
pct rescued: 0.09%, read errors: 0, remaining time: 8h 6m
time since last successful read: n/a
Copying non-tried blocks... Pass 1 (forwards)^C
Interrupted by user
有什么方法可以撤消该操作,创建的地图文件会有帮助吗?
您已将 的最初 5961 MB 复制
/dev/sda
到/dev/sdc
,覆盖 的前 5961 MB 中的所有数据/dev/sdc
。没有办法简单地撤消。映射文件只能告诉您被覆盖片段的确切大小。
根据 RAID 的类型以及所涉及的文件和/或文件系统的布局,您也许能够使用 或 等工具来挽救某些文件甚至整个文件
/dev/sdc
系统。根据 RAID 的类型,您可能需要以某种只读模式强制重新组装 RAID,该模式会忽略您现在可能看起来不像 RAID 成员的事实;或者也许您可以使用低级工具(如.testdisk
photorec
/dev/sdc
dmsetup
不要期待奇迹。将近 6 GB 的“随机”数据写入任何磁盘的开头几乎肯定会对那里存在的文件系统造成致命打击。在您的情况下,一些数据丢失了,它已被覆盖,它根本不存在了。如果你能恢复任何东西,你就会很幸运。
在非常幸运的情况下,您的开头
/dev/sdc
负责保存任何文件系统未使用的扇区,或在某些文件系统中标记为空闲的块(由于 RAID,这些都是可能的;在非 RAID 设置中,磁盘的开头始终很重要) 。所以也许你的不幸是无害的。但这是一个你不应该期待的奇迹。完全存在于被覆盖部分之外的文件系统(如果有)不会受到您的事故的影响,恢复它们可能就像查找它们的签名并构建一个分区表一样“简单”,使它们对操作系统可见(这是可以做的
testdisk
) ; 或者可能不会。或者,分区表可能位于另一个磁盘上,一旦重新组装 RAID,您就会看到它(这本身可能很容易,也可能不容易)。如果没有有关 RAID 和其中的数据结构(分区、文件系统)的详细信息,我无法判断您是否有机会那么幸运。请注意,在某些多设备设置(如 LVM)中,无法立即清楚哪些(哪些部分)文件系统属于哪些(哪些部分)磁盘。我写了“可能”和“可以”,因为上面的内容是为了从保存逻辑损坏数据的物理健康磁盘中进行救援。
如果您怀疑或知道
/dev/sdc
物理故障,即磁盘本身不健康(与某些(元)数据损坏的逻辑故障相反,无论如何都是您造成的),您应该将驱动器ddrescue
朝正确的方向驱动并处理副本。因此,基本上,您应该做您要做的事情,然后使用副本来克服逻辑损坏:之前可能发生的副本加上从物理不健康的源读取可能导致的副本,加上您因覆盖而导致的副本源的一部分与其他东西。由于 RAID 意味着独立磁盘冗余阵列,也许
/dev/sdc
您可以从其他成员重建 RAID,而您一开始就不需要(也不需要) 。这显然取决于 RAID。“五个故障 RAID 磁盘中的第二个”这句话很模糊,我真的不知道:
所以我真的不知道你是否能从你的不幸中恢复过来,感谢 RAID 的其他成员。
一般来说,一些数据会丢失。涉及 RAID 的事实可能允许一些增加(部分或全部)恢复机会的方法;并且它可能不允许其他一些方法。如果没有有关 RAID 及其数据结构(分区、文件系统)的详细信息,此时无法为您提供最佳指导;有太多的如果和太多的运气“切入点”。如果您需要进一步的帮助,请提出一个新问题,您应该向我们提供有关 RAID 的详细信息。即使到那时也不要指望奇迹。