4

我想memtest86用 syslinux 从我的 U 盘启动。

我已经安装了软件包memtest86并将文件memtest86+复制.bin到我的 U 盘中。

我已将条目添加到syslinux.cfg

LABEL memtest
    MENU LABEL Memtest86
    KERNEL memtest86.bin

LABEL memtest+
    MENU LABEL Memtest86+
    KERNEL memtest86+.bin

但这不起作用。当我启动时,我的屏幕上会出现无休止的打印输出:

0104
0104
0104
...

如何memtest86从 U 盘启动?

4

1 回答 1

5

TL;博士:

  • 请将KERNEL命令替换为LINUX, 或
  • 将您的重命名memtest86.binmemtest86或其他任何内容。

syslinux 维基

内核文件

选择 SYSLINUX 将启动的文件。“内核”不一定是 Linux 内核,它可以是引导扇区或 COMBOOT 文件。

因为 Linux 内核引导扇区映像和 COMBOOT 文件都没有可靠的幻数,Syslinux 将查看文件扩展名。识别以下扩展名(不区分大小写):

none 或 other - Linux 内核映像

.bin - CD 引导扇区

...

使用这些关键字之一而不是 KERNEL 会强制使用文件类型,而不管文件名如何:

LINUX映像

您可以使用它,而不是使用 KERNEL 文件来引导 linux 内核映像。

...

因此,您的 memtest86 内核被错误地识别为引导扇区映像。

这篇博文也有类似的报道:

尝试启动 Memtest86 时,我看到“0104”永远重复。怎么了?

您可能将内核称为“memtest86.bin”。如果文件扩展名为“.bin”,PXELinux 将尝试将文件加载为 MBR 而不是内核文件。重命名文件并更改配置,然后一切正常。

于 2019-03-08T18:32:03.990 回答