[原始问题https://stackoverflow.com/questions/73959107/clonezilla-generates-disk-clone-with-wrong-unupdated-uuids]
我最近使用clonezilla(磁盘到磁盘) - 稳定版和替代稳定版将我的SSHD(1TB)克隆到NVMe(2TB),并在SSHD驱动器中使用Fedora 36 x64。当仅连接 M.2 NVMe v1.4 时,两次系统都无法启动。
结果是紧急 shell,其中没有 dracut(正如一些人报告的那样,他们只是必须这样做dracut --regenerate-all -f
)或类似的东西可用。其中还包括 Live USB 的故障排除菜单,其中甚至没有列出紧急 shell。
我检查了 Gnome 磁盘,发现由于某种原因,新驱动器正确安装了 EFI/CSM 分区(从 NVMe 磁盘),但随后从 SATA3 SSHD 磁盘安装了 /boot 和 /home。
我尝试使用 FC36 Live USB 挂载分区,但失败了,因此我尝试这样做,btrfs check --repair
并且btrfs filesystem rescue
所有选项都以一种或另一种方式失败。
- 如果我断开 M.2 NVMe 并保留 SATA3 SSHD,则使用 SSHD 的系统可以正常启动到 Fedora 36。
- 如果我断开 SATA3 SSHD 并保留 M.2 NVMe,那么系统会尖叫找不到具有 UUID 的设备,并且我会被扔进无用的紧急 shell。
两个磁盘中所有分区的 UUID 均相同。我的猜测是存在一些额外的设备 UUID,它指向克隆的 M.2 NVMe 磁盘中的错误物理设备,但我对 Linux 存储没有如此深入的了解来识别和/或更改相关配置。可能类似于Linux挂载克隆分区而不是原始分区,但由于分区使用 btrfs 文件系统,我自己感觉不安全。
我注意到的其他问题:
- 使用引导修复磁盘 X32 和 X64 时(https://sourceforge.net/projects/boot-repair-cd/),nvme 遇到池化问题(https://bugzilla.kernel.org/show_bug.cgi?id=204887),因此无法启动。
这里有任何已知的解决方案不会丢失数据以使我的 M.2 NVMe 可安装并在克隆后可启动吗?
谢谢你!
更新:检查 Blivet GUI 在 FC36 Live USB 中似乎更接近,就像 Clonezilla 以某种方式搞砸了 btrfs 卷并创建了以下位置:
- 具有相同名称的分区(例如“myLabel”)同时存在于 /dev/nvme0n1p3 (~ 2TB,NVMe)和 /dev/sdc3 (~ 1TB,SSHD)中。看起来 Clonezillas 在我的 NVMe 上创建的分区通过匹配标签附加到现有分区,从而形成某种“统一”卷。这感觉像是一个合法的解释,为什么系统无法在没有 SATA3 驱动器的情况下启动,但可以在没有 NVMe 驱动器的情况下启动......
参考:如何更改文件系统 UUID(2 个相同的 UUID)?
更新#2:
我放弃并通过 FC36 Live USB 重新安装它,但我遇到了一些问题:
- 系统在 anaconda 中随机冻结
- 安装引导加载程序时系统崩溃(通过自动分区和保留引导分区重新安装成功了,安装程序能够成功完成)
- 尽管如此,它还有空的额外分区(EFI 和 CSM 显然没有被重用)
答案1
我在 USB 闪存驱动器上使用了 clonezilla-live-20221103-kinetic-amd64.zip,毫无问题地将 NVME 克隆到 SATA SSD,在 Acer Aspire 3 上反之亦然。