想安装到外部 SSD,结果弄得很乱

想安装到外部 SSD,结果弄得很乱

晚上好,我想将 (k)Ubuntu 安装到外部三星 T5 SSD 上,以便能够在不同的 PC 上使用它。在我的主笔记本电脑上,我从 Kubuntu 20.04 live USB 启动,插入 T5 并在 T5 (/dev/sdc) 上安装,告诉它也在那里安装引导加载程序(我检查了 3 到 5 次)。它顺利完成了整个过程,但效果不佳(非常差):

  • 如果我没有插入 T5 SSD,主笔记本电脑就无法启动;
  • 如果我将其插入,它会启动一个 GRUB 屏幕,允许我从 T5 或笔记本电脑的内部驱动器启动。两者都可以正常工作,但我当然必须将 T5 保持连接
  • T5 无法在任何其他电脑上启动,即使 Kubuntu Live USB 驱动器启动正常

所以,对于你们这些好心人,我有两个问题:

  • 没有 T5 的情况下如何恢复笔记本电脑的启动?顺便说一下,它是 Ubuntu 20.04。
  • 可以在 T5 上安装 Kubuntu,那么确保它能够在任何(嗯,多个)系统上启动的正确步骤是什么?

多谢!

- G。

答案1

基本上,对于 UEFI 安装,安装程序会将 grub 放在它看到的第一个 EFI 上,即内部磁盘上,但 grub 文件位于 SDD 上,因此如果没有 SDD,启动就会失败。请参阅启动板错误 1173457、1396379,并将您自己添加到“这会影响我吗”列表中。
https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1396379
https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1173457
如果您在 SDD 上有 EFI 分区,只需将所有内容从内部磁盘的 EFI 复制到 SDD 的 EFI。然后,它应该通过选择该设备作为启动设备在其他机器上启动。要修复内部磁盘,只需将第一个启动选项重新排序为原始 Windows 选择(因此 grub 甚至不会运行)。内部设备默认引导加载程序 /EFI/Boot/bootx64.efi 可能已被 grub 的副本替换,但原始版本已重命名为 bkp... 您可以将其改回,但如果您从 nvram 选择启动,设备引导加载程序通常甚至不会被使用。您可以直接成功运行 grub 并将其放在您想要的位置,grub 可以工作,只是安装程序会忽略您的选择并将其放在它看到的第一个 EFI 上。


移除内部硬盘(无论是物理移除还是通过 BIOS 设置移除)是让安装程序执行正确操作的最简单方法。您应该能够暂时移除内部磁盘上的 EFI 标志,并在安装后恢复它——这可能有效,就像从“尝试”桌面运行安装程序一样,在终端中卸载不需要的硬盘 EFI,然后重新安装 sdd 的 EFI(如果您提前制作了 SDD 的 EFI)。EFI 分区只有一个 FAT 文件系统,引导加载程序只是文件,因此不需要特殊工具在分区之间滑动二进制 blob,就像在传统安装下一样。

相关内容