USB Ubuntu Server 22.04 安装无法启动

USB Ubuntu Server 22.04 安装无法启动

我想在 USB 设备上安装 Ubuntu 服务器 22.04。我选择 ubuntu 服务器进行最小设置。我下载了服务器 iso 并将其刻录到 USB 驱动器上。

然后我从这个刻录的 USB 驱动器启动,并将服务器安装到另一个 USB 驱动器上。第一次就成功了。我可以启动了。然后我移除了 USB 驱动器并启动到我的默认 Windows 驱动器。

之后我再次尝试从 USB 介质启动,系统只是重新启动或启动到 Windows。我总共使用了 2 个 USB 驱动器

  1. 安装
  2. 安装于

我检查了 efi 分区,它有 FAT32 文件系统。有人能帮忙吗?

更新:不断循环重启并显示“重置系统”消息

更新:当我打开笔记本电脑并进入启动菜单(按 F11 而不是 BIOS)时,首先我看到的是选项

  1. Windows SSD
  2. UEFI:USB 分区 1

当我选择选项 2 时,系统显示“重置系统”消息并重新启动。之后我再次进入启动菜单,看到 3 个选项

  1. Windows 固态硬盘
  2. Ubuntu
  3. UEFI:USB 分区 1

当我选择第二个选项时,它可以工作。但是如果我移除 USB 驱动器并重新连接它,ubuntu 选项就会消失,我必须再次选择 UEFI:USB 分区 1 选项

请帮忙。

我还注意到,在我拔下 USB 驱动器后,系统时间重置为 UTC 时间。

答案1

我相信这种行为是经过设计的,并且根据 UEFI 规范是正确的。某些 UEFI 固件对可移动媒体和已移除的 HDD 采取不同的行为。这完全没问题,因为规范中没有定义这一点。

简而言之,您可以尝试进入 BIOS 设置,看看是否可以手动创建带有分区 uuid 的条目。但防火墙仍然可以决定删除位于丢失磁盘上的启动条目(我可以确认一些戴尔固件会这样做)

当启动到 ubuntu 时,efibootmgr -v检查 EFI 启动项。你应该看到类似这样的内容:

Boot0004* ubuntu        HD(1,GPT,uuid,0xnnnn,0xmmmmm)/File(\EFI\UBUNTU\SHIMX64.EFI)

检查 uuid 是否是 efi 应用程序所在的分区。有时 uuid 可能是其他值,那么它就是错误的。

长话短说:

  • 可移动设备应该有 /EFI/BOOT/BOOTX64.efi,当固件看不到该磁盘的启动项时,它将采用/EFI/BOOT/BOOTX64.efi

  • 然后/EFI/BOOT/BOOTX64.efi调用 fallback efi 应用程序:fbx64.efi

  • 然后 fallback 应用程序根据 BOOTX64.CSV 生成启动项,并将其设为默认,然后重置机器。这就是你看到的 ubuntu 条目。

  • 然后下次开机就会直接启动到ubuntu

当您拔下 USB 磁盘时,事情就会变糟。下次启动时,固件将尝试从默认选项 ubuntu 启动,然后磁盘丢失。固件决定删除 ubuntu 条目或删除默认标志。这取决于您的固件提供商决定如何执行此操作。

因此,您可以尝试在 bios 或 efimanager 中手动创建 ubuntu 启动项,并且不要将其标记为默认。然后该条目可能会保留。仍然取决于固件实现,如果他们决定删除指向丢失磁盘的条目,那就没问题了。

相关内容