是否需要 USB 记忆棒来完成 Ubuntu 20.04 的 UEFI 安装,还是可以使用两个 SSD 磁盘来完成?

是否需要 USB 记忆棒来完成 Ubuntu 20.04 的 UEFI 安装,还是可以使用两个 SSD 磁盘来完成?

我几乎按照以下说明进行操作如何在 UEFI 和传统 BIOS 系统上安装 Ubuntu 20.04 LTS(Focal Fossa)尝试安装基于 UEFI 的 Ubuntu 操作系统。但是它不起作用,甚至无法通过 UEFI 选项的 Ubuntu Live SSD 执行擦除和安装。

诀窍在于,我下载了镜像文件并将其复制到 SSD 而不是 USB 上,使用相同的命令如下先前引用。其优点在于,它在 Bios 选择菜单中显示了 Ubuntu Live 映像的两个选项,即传统启动和 UEFI 启动。

确实,当我在 SSD 上启动 UEFI Live Ubuntu 映像时,我也有安装选项来创建 UEFI 分区,即使完全擦除并安装也是如此。Ubuntu-Live 也足够智能,它可以识别出它正在启动的磁盘不是安装常规操作系统的磁盘。

安装过程一切顺利,插入以太网互联网电缆即可获取最新更新。安装结束时甚至显示安装完成的消息。

但遗憾的是,安装后,已安装的 Ubuntu LTS 操作系统没有 UEFI 选项。磁盘只有一个选项。而且从 BIOS 菜单中选择根本不起作用。

讽刺的是,我能够更新 Ubuntu-Live 操作系统的 GRUB 配置文件。因此,如果我输入“c”进入 GRUB-Live-UEFI 命令行,我就可以导航到.efiUEFI 映像按预期替换了它。我甚至可以发出chainloader 命令请参阅菜单项“GRUB 链式加载器”

我不需要加载任何特殊模块。然而,在链式装载机Live-GRUB 命令行上的命令需要发出引导命令。

一切顺利,Ubuntu LTS 系统(常规安装,不是 Live SSD)启动正常。我知道这是 UEFI 启动,因为我用链式装载机.efi图像。顺便说一句:我用它测试了Memtest86 版本 10.1.0009仅有的使用相同的技术在 UEFI 中启动。并且其工作原理也一样。

因此,来自 Live 磁盘的 GRUB 映像工作正常。我甚至可以更新其配置。但来自 LTS 安装的 GRUB 映像却完全坏了。我尝试了很多不同的参考资料。就在最近,一个参考资料5.4. 使用 chroot完成且没有错误。但是,安装仍然不起作用。对于该磁盘,它在启动菜单中不显示任何 UEFI 启动选项。它只是一个条目。当我尝试从顶部条目启动时,系统继续启动下一个条目。也许 bios 不能有两个内部 UEFI 磁盘。如果是这样的话,这似乎很奇怪。

我被卡住了。我有足够的空间来将需要复制到 USB 上的 3.6 GB 映像Ubuntu Focal ISO 大小说明和下载链接。但对于我迄今为止在启动过程中遇到的所有其他问题,我发现最终解决方案也适用于内部 SSD 驱动器。我有很多内部 SSD 驱动器可以用作备选,几乎是免费的。因此,这些内部 SSD 驱动器(几乎完好无损,只有使用寿命内的磨损问题)是一种非常有吸引力的方法。

感谢社区的帮助和建议,谢谢。

更新:我终于沮丧到按照网上发布的说明订购并使用了 USB 棒。我下载了新版本的 ubuntu-22.04.1-desktop-amd64.iso,并按照说明使用 dd 复制了它在此参考。由于 USB 驱动器很小,因此很容易识别它正在使用哪个设备文件cfdisk -l。当我进入 BIOS 启动菜单时,我可以看到 USB 闪存盘 Live Image 启动的 UEFI 和 Legacy 选项。桌面版本已安装,但只有一个条目;选择该条目不会启动,但会导致错误,提示没有可启动的操作系统。但是,我可以选择 Live USB 棒,选择C进入 GRUB 的命令行。我甚至可以导航到 SSD 安装并成功启动它,使用链式装载机进而引导。我知道我已启动到 UEFI 映像,因为我已启动到 .efi 文件,并且我可以使用/sys/固件/efi(看:itsfoss 检查 uefi 或 bios) 方法。

更新:我下载了 Ubuntu 22.04.1-desktop iso。以 root 身份打开了 .iso 映像磁盘。映像中有三个分区。我决定隔离问题。第一个分区是未知的文件系统类型。第二个是 UEFI vfat。第三个是未知的。所以我只需将前两个分区复制到 SSD 即可正常启动,BIOS 可以识别 Legacy 和 UEFI 选项。顺便说一句,每次 BIOS 启动识别这两个选项时,它都可以启动。而每次只有一个选项时,它就无法启动。

所以我继续安装 Linux。Linux 安装抱怨 UEFI 分区太小。所以我只是调整了分区的大小,用 dd 彻底删除了它。然后我安装了 FAT32,因为我将它扩展到 10 GB 左右,而 FAT16 或 FAT12 无法处理这个大小。

Ubuntu Live 磁盘能够完成安装。现在正如预期的那样,系统无法找到操作系统。因此,我在命令行模式(在 GRUB 中)中使用 USB 启动盘解决方法;我能够导航到 Ubuntu 操作系统并从中启动。

但 SSD 启动盘上的 GRUB 仍然不可用。所以我用了具有偏移量和相同数量的512 字节块将第一个分区从Ubuntu .iso 映像。我使用以下方法删除了较大的 UEFI 第二分区上的内容:dd if=/dev/zero到 FAT32 文件系统。然后我重建了 FAT32 文件系统,并再次复制了所有内容gnome-disks 和 root 终端

所以我可以用 USB 再次导航并启动到SSD 乌班图操作系统。我按照PassMark Memtest GRUB 安装更新内部 SSD 上的 GRUB。我确认 BIOS 中的安全性已完全关闭,并且正在 ACHI 模式下运行。不过,在 BIOS 中,USB 必须使用 Legacy 支持启动。这有点奏效。

它现在从内部 SSD 启动,但是只有连接了 USB 记忆棒时才有效!!! 这很奇怪,而且仍然不是一个非常舒适的解决方案。该解决方案不应该需要外部 USB 棒来启动!

更新:我又买了一个 16 GB 的 U 盘,安装了 Ubuntuubuntu-22.04.1-桌面-amd64.iso使用 Linux 启动盘创建器。我换了电脑我运行桌面安装,大致遵循以下说明itz geek 发表 如何安装 ubuntu 20 04 lts,我记得只是调整了主分区和根分区的大小。我有一个更大的 240 GB SSD,安装有点成功。在一台电脑上,它基本上可以工作,除了我无法访问 grub 菜单,即使在使用 grub-install 重新安装 grub 后,使用 X64 UEFI 说明也是如此。grub-install 无法识别/启动/efi目录是合法的。问题是我需要通过 grub-install/启动/efi/EFI目录,一切都很好——仅使用一台计算机。

在一台计算机上,使用新安装,它可以正常启动到 UEFI Ubuntu。另一台计算机不显示两个安装选项,并且无法正常启动。

无法启动的那台电脑似乎存在一些不兼容问题。也许有什么东西坏了。我不确定。我为Ubuntu Live 使用 dd靴子很好。整个事情对我来说仍然很奇怪。

如果还有其他建议,请告诉我。谢谢。

其他相关参考资料:

Memtest86 在从 USB 启动时挂起 - PassMark 支持论坛,其中包含 10.1.0009.zip 文件的下载链接

答案1

更新:今天我能只使用 SSD 磁盘和dd if=/....iso of=/dev/sda conv=sync生成启动盘。这是来自另一台计算机比那个给我带来麻烦的要好。我使用了两个独立的 SSD,一个装有镜像文件。另一个我在上面加载了 Ubuntu 20.04.01 LTS 实时镜像。

奇怪的是,该映像无法在 uefi 模式下启动,经验证/sys/firmware/efi 不存在。奇怪的是,我最初能够将第一个分区设置为 2GB FAT16 UEFI 分区类型。(FAT16 最多支持 4 GB)。但我收到一条警告:保留至少 1 MB 的 BIOS 空间需要分配在第一个SSD分区。

 Device    Size  Type
/dev/sda1  1M    BIOS boot            
/dev/sda2  15.3G Linux swap
/dev/sda3  46.6G Linux filesystem
/dev/sda4  46.6G Linux filesystem
/dev/sda5   1.9G EFI System

我设置的分区表如上。我再次基本遵循如何在 UEFI 和传统 BIOS 系统上安装 Ubuntu 20.04 LTS(Focal Fossa)根据自己的喜好调整分区大小。第一次,Unix 分区工具在创建分区后崩溃了。我再次尝试,一切正常。

我把活动磁盘保留在系统内。Ubuntu 安装确实破坏了 GRUB 引导加载程序。它理所当然地安装了 Legacy 加载程序,因为它以传统模式启动。

所以我不得不使用grub 安装,在 Ubuntu 手册页之后。有一些惊喜。首先,UEFI 目录最初是/启动/efi。 接着就,随即grub 安装给出一个神秘的消息,说这看起来不像 UEFI 目录。这是因为 grub-install 需要 /boot/efi/EFI 作为 UEFI 安装目录。此外,还必须选择 64 位 UEFI 安装类型。真正令人惊讶的是可拆卸的必须选择选项,否则grub 安装给出了另一个神秘的选项。

我必须小心地调整计算机的 BIOS 才能以 UEFI 模式启动。在解决了几个困难之后(抱歉我现在时间有限),我设置了安全启动关闭操作系统类型为不是 Windows在 BIOS 中。我按照问题中链接的说明以及问题中列出的 10.1.009 下载链接安装了 PassMark 10.1.009 MemTest。

感谢上帝,它在那台电脑上工作正常。我还没有在另一台电脑(之前有问题的电脑)上测试过。磁盘现在可能在那里也能用了,但那将是答案的更新。

相关内容