我刚刚使用以下命令覆盖了错误的硬盘驱动器:
sudo sh -c 'pv /dev/sdb >/dev/sdc'
我该如何撤销这个操作?
我正在创建驱动器的第一个偶数备份,但我备份了错误的驱动器...被写入的驱动器也没有备份,我接下来要备份该驱动器。
两个驱动器都经过 dm 加密。
答案1
如果您没有备份,您的数据就不重要。
它消失了。无法撤消。尤其是涉及加密的情况下。
something that produces output > /dev/somedisk
覆盖设备上的数据。任何被覆盖的内容都无法恢复,因此您唯一的机会就是您注意到并立即取消它。那么可能只有前几百兆会丢失,您可能有机会恢复,特别是如果您要恢复的分区开始于更远的地方。在这种情况下,需要从内存或使用 或其他方式恢复分区testdisk
表gpart
。
如果您没有取消,则取决于产生了多少输出,即在您的情况下是否/dev/sdb
小于/dev/sdc
因此到目前为止它仅被覆盖。
然而,你说它是加密的。这通常意味着幸运。卢克斯一开始就有头球。如果您丢失了该标头并且 LUKS 容器尚未打开,则无法恢复任何内容。如果它仍然打开,您想要保存 的输出dmsetup table --showkeys
。
有些人使用 LUKS 时没有对驱动器进行分区,然后在分区程序或安装程序中犯了一些愚蠢的错误,除了创建一个小分区表之外什么也不做。这会覆盖磁盘开头处不到 512 字节的内容,但仍然足以损坏 LUKS 标头,并且数据会丢失且无法恢复。
答案2
没有办法恢复,就这么简单。
顺便说一句,这样做dd
并不是备份文件的完美方法。对于未来的情况,请考虑使用类似的工具dar
- 如果您需要一些压缩,增量备份在大多数情况下还可以让您节省大量时间和磁盘空间。