Ubuntu 14.04 LTS live USB 启动错误(gfxboot.c32:not a valid COM32R image)

jam*_*s19 152 live-usb boot 14.04

我下载了 Ubuntu 14.04(64 位)lts。我制作了一个可启动的 U 盘。但是我在启动时不断收到此错误消息:

SYSLINUX 4.04 EDD 20110518 Copyright (C) 1994-2011 H. Peter Anvin et al
Unknown keyword in configuration file: gfxboot.c32: not a COM32R image
Run Code Online (Sandbox Code Playgroud)

Luc*_*cio 208

正如Filip Sohajek 所说,您需要点击Tab

然后您将看到一组选项(实时、实时安装等)。选择您喜欢的名称并按Enter

  • 有效,但为什么??? (33认同)
  • 错误:https://bugs.launchpad.net/ubuntu/+source/usb-creator/+bug/1325801 (6认同)
  • 呵呵,臭小子。这显然是由一个对 UI 粗心的 *Unix* 开发人员设计的:) (3认同)
  • 此解决方案也适用于 16.04。 (3认同)
  • 此解决方案也适用于 18.04。 (2认同)

小智 55

使用有缺陷的可启动 USB 本身进行永久修复

精简版

TL; 博士; 因为当你知道自己在做什么时:

boot:您遇到上述错误后的提示中,键入live并按Enter, 以启动 Live USB 会话。

打开一个终端(例如 with Ctrl+Alt+t)并在下面一一键入每个命令行:

sudo -i
apt-get update
apt-get install syslinux
mount | grep cdrom
Run Code Online (Sandbox Code Playgroud)

上面的最后一个命令显示可启动 USB 连接到哪个设备。

重要的!/dev/sdb1上面最后一个命令的输出中的设备替换终端中的以下命令:

syslinux /dev/sdb1
Run Code Online (Sandbox Code Playgroud)

重新启动并享受!

长版

发生此错误是因为您使用了具有早期版本syslinux包的发行版来创建期待更高版本的发行的可引导 USB (感谢Amir Ali Akbari提供错误链接)。

如果您使用 Ubuntu 14.04 为 Ubuntu 15.04 及更高版本的任何东西制作可启动的 USB 记忆棒,也会发生此错误。

Filip SohajekLucio回答中提到的解决方法当然有效,但考虑到我上面链接的 Utopic 发行说明,以及那里提到的使用与启动映像相同的 Ubuntu 版本来创建启动映像的解决方法,应该是可以从 live CD 本身永久修复该问题:

启动可启动 U 盘,直到出现错误消息:

Unknown keyword in configuration file: gfxboot.c32: not a COM32R image
boot:
Run Code Online (Sandbox Code Playgroud)

boot:提示下,键入live并按 Enter(无需按 TAB,因为它仅用于向您显示可用的选项,包括live)。

进入实时 Ubuntu 会话后,对其进行配置,以便您可以访问互联网(例如,通过连接到 WiFi 网络)。

打开终端窗口(例如按Ctrl+Alt+T)。并一一输入以下命令序列(对任何确认提示说“是”):

sudo -i
apt-get update
apt-get install syslinux
Run Code Online (Sandbox Code Playgroud)

第一个为您提供 root 访问权限,最后两个安装syslinux您修复可启动 USB 所需的较新软件包。所以现在你需要弄清楚你到底要修复什么,即你的可启动 USB 连接的设备名称是什么。

在上面的终端窗口中键入

mount | grep cdrom
Run Code Online (Sandbox Code Playgroud)

您应该会看到类似的输出

/dev/sdb1 on /cdrom type vfat (... lots of irrelevant mount flags ...)
Run Code Online (Sandbox Code Playgroud)

最重要的部分是上面的第一个“词”。通常是这样,/dev/sdb1但如果您的机器上连接了更多磁盘,则可能是其他情况。

或者,您可以gparted从用户界面启动命令并查看磁盘以查看连接到哪个设备/cdrom

现在在终端窗口中输入下面的命令,非常小心地用/dev/sdb1你从上一个命令获得的设备替换:

syslinux /dev/sdb1
Run Code Online (Sandbox Code Playgroud)

上面的最后一条命令syslinux使用与发行版本身匹配的正确版本覆盖可引导 USB 设备分区的引导扇区中的早期版本。

就是这样!现在重新启动,您应该能够通过 Live USB 的正常 GUI 流程。

当然,如果你有一个没有评估选项的可启动 Ubuntu 媒体,比如 Ubuntu Server 安装媒体,你不能用它来修复自己,但你可以使用桌面版本来修复服务器版本上面的说明。只需在桌面版本启动后将服务器版本媒体插入 USB 并使用服务器版本的设备代替/dev/sdb1上述设备。


小智 10

当我试图解决这个问题时,我有几个不同的选择,但它奏效了。在 Filip 的回答之后,我按下了 TAB 键,然后弹出了几个选项(其中没有一个是“实时”或任何包含“实时”的内容,但它确实说“安装”,因此在键入 install 并按 Enter 键后,您可以选择屏幕分辨率, 然后将继续安装。所以,有点混乱,但它确实有效!

  • @guntbert 我倾向于至少将其称为部分答案,因为它指出了另一个答案中的主要错误(没有“实时”选项)并提供了半解决方法。 (2认同)