Ubuntu 14.04 LTS现场 USB 启动错误(gfxboot.c32:不是有效的 COM32R 映像)

我下载了Ubuntu 14.04(64位)lts版本。我制作了一个可启动的USB闪存盘。但是每次启动时都会收到这个错误信息:
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

请提供下载链接和系统详细信息。你是双系统吗? - Chinmaya B
54我用以下步骤解决了这个问题:
  • 启动
  • 按下TAB键
  • 输入live
  • 按下回车键
- user294348
我在尝试使用Live USB启动14.10时遇到了一些问题,Filip的建议对我很有帮助。 - itnet7
2你可以直接输入“live”然后按回车键。对我来说有效。 - myusuf
2可能是"在尝试从USB键安装时出现“不是COM32R映像”错误"的重复问题。 - Knowledge Cube
4个回答

Filip Sohajek 所提到的, 你需要按下 Tab 键。
然后你会看到一系列选项(实时,实时安装等)。选择你喜欢的选项,输入其名称并按下 Enter 键。

1Lucio: 对我来说很好,Kubuntu 14.10。 - evergreen
34可以正常工作,但是为什么呢? - Tal Weiss
4嘿,bug伙计。这显然是由一个对用户界面不太在意的Unix开发者设计的 :) - Lucio
6这个问题:https://bugs.launchpad.net/ubuntu/+source/usb-creator/+bug/1325801 - Amir Ali Akbari
hd选项是什么意思? - marmistrz
3这个解决方案也适用于16.04版本。 - Heather92065
1这只是一个权宜之计,而不是一个解决方案。 - Reinier Post
@TalWeiss 请参考Leo在下方的回答(链接),注意其中的"详细版本"部分。 - yaobin
2这个解决方案也适用于18.04版本。 - Xandel
这个解决方案也适用于20.04 LTS。 - Prashant Adlinge

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

简短版本

如果你知道自己在做什么,可以跳过以下内容:

在出现上述错误后的boot:提示符中,输入live并按下Enter,以启动Live USB会话。

打开终端(例如使用Ctrl+Alt+t快捷键),逐行输入以下每个命令:

sudo -i
apt-get update
apt-get install syslinux
mount | grep cdrom

上面的最后一个命令显示了您的可启动USB连接到哪个设备。
重要提示!请在终端中使用下面的命令,将命令中的/dev/sdb1替换为上面最后一个命令的输出中的设备。
syslinux /dev/sdb1

重新启动并享受吧!
长版本:
这个错误发生是因为您使用了一个早期版本的syslinux软件包创建了可引导的USB分发(感谢Amir Ali Akbari提供的错误链接),而您期望的是一个更新的版本。
如果您使用的是Ubuntu 14.04来制作一个用于Ubuntu 15.04及以上版本的可引导的USB设备,也会出现这个错误。 Filip SohajekLucio答案中提到的解决方法当然是有效的,但考虑到我上面提供的Utopic版本说明以及那里提到的使用与引导映像相同的Ubuntu版本来创建引导映像的解决方法,应该可以从Live CD本身永久修复此问题:
引导可启动的USB设备,直到您看到错误消息为止:
Unknown keyword in configuration file: gfxboot.c32: not a COM32R image
boot:

boot: 提示符下,输入 live 并按回车键(无需按TAB键,因为它只是用来显示可用选项,包括 live)。

一旦进入 live Ubuntu 会话,配置以便您可以访问互联网(例如通过 连接到WiFi网络)。

打开一个终端窗口(例如按下 Ctrl+Alt+T)。然后逐个输入以下命令序列(对于任何确认提示,都回答“是”):

sudo -i
apt-get update
apt-get install syslinux

第一个命令给你root访问权限,后面两个命令安装了你需要修复可启动USB所需的更新版syslinux软件包。现在你需要弄清楚你要修复的是什么,也就是你的可启动USB连接的设备名称。
在上面的终端窗口中输入以下内容:
mount | grep cdrom

你应该看到一个类似的输出
/dev/sdb1 on /cdrom type vfat (... lots of irrelevant mount flags ...)

最重要的部分是上面的第一个“word”。通常它会是/dev/sdb1,但如果您连接了更多的磁盘到您的机器上,它可能是其他内容。
或者,您可以从用户界面启动gparted命令,并查看磁盘以确定哪个设备连接到/cdrom
现在在终端窗口中输入下面的命令,非常小心地将/dev/sdb1替换为您从前一个命令中获得的设备:
syslinux /dev/sdb1

上述最后一条命令将在可引导的USB设备分区的引导扇区中覆盖早期版本的syslinux,以正确的版本与发行版本身相匹配。
就是这样!现在重新启动,您应该能够按照Live USB的正常图形用户界面流程进行操作。
当然,如果您有一个没有评估选项的可引导Ubuntu媒体,比如Ubuntu服务器安装媒体,您无法使用它来修复自身,但您可以使用桌面版本根据上述说明修复服务器版本。只需在桌面版本已经启动后将服务器版本媒体插入USB,并将其用于上述/dev/sdb1位置的服务器版本设备。

我按照这些说明进行操作,只是为了能够启动到Kubuntu Live。一旦我到达那里,我进入K菜单,找到应用程序->系统->将此系统永久安装到您的硬盘菜单项。从那里,一个漂亮的图形界面引导我完成了安装过程。 - pkout
1@pkout,当然,如果你只是想在你的机器上安装Ubuntu,你实际上不需要修复gfxboot错误。很高兴你成功地在你的机器上安装了Kubuntu! - LeoRochael
很遗憾,虽然这个方法很有道理,但似乎在服务器版本上不起作用。我尝试了alt-f2,在控制台上打开了终端,但没有apt-get命令... - Kevin Lyda
1@KevinLyda,我还没有检查过,但是如果它只用于永久安装而不是评估的话,没有apt-get是有道理的。然而,你可以使用桌面版来修复服务器版。 - LeoRochael
可能救援模式可能会起作用。但我选择了安装,将syslinux安装在新服务器上,然后修复了桌面和服务器安装的USB密钥。 - Kevin Lyda
@KevinLyda,我在服务器媒体中调查了救援模式,但是那里没有syslinux,并且我找不到一个简单的方法来添加它。当然,你提出的实际安装系统的解决方案始终有效。 - LeoRochael
+1个非常棒的省时答案。在执行sudo apt update之后,我进行了sudo apt upgrade以使Live USB保持最新状态。这将占用额外的432MB,但启动盘创建器已经创建了4GB的持久性空间。 - WinEunuuchs2Unix
太棒了!如果可以的话,我会给你更多的赞...谢谢! - desgua
我不得不从syslinux.org下载一个更新的版本(无需编译...在zip文件的Linux目录中可执行)。对于YUMI多启动U盘:使用dmesg找到插入USB驱动器后的sdX1的X,然后运行sudo ./syslinux --install -d multiboot /dev/sdX1。 - JJones
+1 对于解释“这个错误发生的原因……”非常赞赏。这正是高级用户需要了解的内容,但大多数我阅读的答案很少会解释到这一点。 - user37165

当我尝试解决这个问题时,我得到了几个不同的选项,但它们都起作用。按照Filip的回答,我按下TAB键,然后出现了几个选择(没有一个是"live"或包含"live"的,但确实有"Install"字样),所以在输入install并按下回车后,会给你提供屏幕分辨率的选择,然后继续安装。所以,有点令人困惑,但它确实有效!

1这显然不是一个“谢谢”。我的意思是指出Flip的答案可能有其他可能的结果,其中其他人可能会感到困惑,并开始新话题。因此,我在原始问题上指出这一点。 - ElScorcho
2@guntbert 我倾向于将这视为至少是一个部分答案,因为它指出了另一个答案中的一个重大错误(没有“实时”选项),并提供了一个半解决办法。 - Seth

这对我没用。我得到了:
Initramfs解压失败:压缩存档中有垃圾。 (...) 内核恐慌-不同步:VFS:无法在未知块(2.0)上挂载根文件系统。 (...)
我不得不采取一个非常丑陋的解决方案,但它却像魔法一样起作用。我去了一个朋友的办公室,让他让我使用一台运行Microsoft Windows的计算机之一。我想那是Windows 7或8,总之比Windows XP更现代,但还没有这个带有Cortana功能的最新版本...然后,我通过首先下载一个名为Universal USB Installer的小程序来创建了一个ubuntu的USB盘,一切都很顺利。

2原问题的问题是Ubuntu 14.04 LTS中已知的一个错误(影响到Ubuntu启动盘创建工具和其他一些工具)。在16.04 LTS中,有一个新的克隆版本的Ubuntu启动盘创建工具。其他克隆工具适用于所有版本的Ubuntu,例如Disks别名gnome-disks和mkusb,https://help.ubuntu.com/community/mkusb以及在Windows中的Win32 Disk Imager,https://wiki.ubuntu.com/Win32DiskImager/iso2usb--您可能受到另一个问题的影响,如果您提出一个新的(并且自己的)问题,可能会得到更好的帮助。 - sudodus