问题描述
我下载了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
最佳解决方案
作为Filip Sohajek mentioned,您需要点击Tab
。
然后您会看到一组选项(实时,实时安装等)。选择一个你喜欢的名字并按下Enter
。
次佳解决方案
永久修复使用有缺陷的可引导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
程序包的分发版来创建分发expecting a later version的可启动USB(谢谢,错误链接为Amir Ali Akbari)。
如果您使用Ubuntu 14.04为Ubuntu 15.04及以上版本的任何内容制作可引导的USB存储棒,则此错误为also happens。
当然,通过Filip Sohajek在Lucio的answer作品中提到的解决方法,但考虑到乌托邦发行说明我上面链接,并提到有使用相同的Ubuntu版本的启动映像创建启动映像的解决办法,应该是可能的从Live CD本身永久解决问题:
启动可启动USB memory 棒,直到出现错误消息:
Unknown keyword in configuration file: gfxboot.c32: not a COM32R image
boot:
在boot:
提示符处,键入live
,然后按Enter键(不需要按Tab键,因为它仅用于向您显示可用的选项,包括live
)。
进入Ubuntu实时会话后,配置它以便您可以访问互联网(例如通过connecting to a WiFi network)。
打开一个终端窗口(例如按Ctrl+Alt+T
)。然后逐个输入以下命令序列(对任何确认提示说”Yes”):
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的正常GUI流程。
当然,如果您有一个没有评估选项的可启动Ubuntu媒体(如Ubuntu服务器安装媒体),则无法使用它来自行修复,但您可以使用桌面版来修复服务器版本上面的说明。在桌面版本已经启动后,只需将服务器版本介质插入USB,然后使用该设备替代上述/dev/sdb1
的服务器版本。
第三种解决方案
当我试图解决这个问题时,我得到了一些不同的选择,但它工作。按照Filip的回答,我按了TAB键,然后弹出了几个选项(其中没有一个是”live”或任何包含”live”的东西,但它确实表示”Install”,因此在输入install和hitting之后,您可以选择屏幕分辨率,然后进入安装。所以,有点混乱,但它确实有效!