如何从失败的 dd 命令恢复分区/文件系统

如何从失败的 dd 命令恢复分区/文件系统

我有一台服务器,上面有两个 250GB 的 SSD。sda里面装着我所有的东西,当时sdb是空的。我尝试使用以下命令将驱动器复制sda到驱动器:sdb

dd if=/dev/sda of=/dev/sdb conv=noerror,sync

我通过 ssh 运行了该命令。然而,在进程完成之前,我的电脑关闭了,ssh 连接也关闭了,dd 命令也关闭了。我认为这没什么大不了的,因为我正在从 复制sdasdb。但现在我无法启动我的服务器,sda似乎已被损坏,启动分区丢失,我无法安装 上留下的分区sdasda1sdb也没有任何东西。此外,sda1似乎还覆盖了保存我的文件系统的原始boot&sda1分区。

使用 TestDisk 查看sda1分区时,我只看到lost+found分区上有一个空目录。使用 photorec 我可以恢复文件,大部分是照片,所以我确信我的文件还在那里。我只是没有分区/工作文件系统。

我怎样才能恢复旧的分区和文件系统sda

答案1

关于恢复运行,请弄清楚该服务器何时需要修复。请注意,与完全重建相比,分析和恢复块和文件系统损坏所需的时间要长得多。

从任何可能存在的备份中恢复。由于您的操作系统发行版已损坏,因此需要恢复环境。并且可能需要全新安装。损坏的存储也可以恢复,但您可能需要同时运行这些操作才能在合理的时间内启动并运行。

如果没有备份,而数据又很有价值,那么在咨询数据恢复专家之前,不要对有问题的磁盘做任何事情。显然,您不必使用此类服务​​,但问题发生后写入次数越少越好。

如果您说的没错,sdb 就是目标设备,而且是空白的,那么 sda 损坏就会很神秘。

但请注意,sda 和 sdb 不是稳定名称,可能会根据硬件枚举和添加方式而变化。今后,在 Linux 上,使用 /dev/disk/by* 下的稳定名称之一更为安全。LUN WWN 的最后几位数字同样易于确认,不会改变。

相关内容