Grub菜单中缺少Memtest86 +选项

我和@coversnail有同样的问题: 如何将Memtest86 +选项添加回Grub菜单?

问题是:我可以在较旧的内核版本和GRUB中的实际Ubuntu版本之间进行选择。 没有其他选择。

我想运行memtest86+ 。 它安装在/etc/grub.d/ ,但它不在GRUB本身。 我有点困惑。

试试Grub Customizer。 Grub Customizer是GRUB2的图形设置管理器。

要安装,只需按键盘上的Ctrl + Alt + T即可打开终端。 打开时,运行以下命令:

 sudo add-apt-repository ppa:adabbas/1stppa sudo apt-get update sudo apt-get install grub-customizer 

或者只是看看他们的网站 。

要添加memtest条目,请参阅下面的图像和文本。

在此处输入图像描述在此处输入图像描述在此处输入图像描述

第一次进入

 insmod part_msdos insmod ext2 set root='hd0,msdos1' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 b4d22d74-d1db-44c3-a834-e879263662f5 else search --no-floppy --fs-uuid --set=root b4d22d74-d1db-44c3-a834-e879263662f5 fi linux16 /boot/memtest86+.bin 

第二次进入

 insmod part_msdos insmod ext2 set root='hd0,msdos1' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 b4d22d74-d1db-44c3-a834-e879263662f5 else search --no-floppy --fs-uuid --set=root b4d22d74-d1db-44c3-a834-e879263662f5 fi linux16 /boot/memtest86+.bin console=ttyS0,115200n8 

注意:现在上面的信息是正确的,但请记住,memtest在grub2-uefi中不起作用。 这是因为UEFI不支持启动16位二进制文​​件,而memtest是16位二进制文​​件。 这也是grub2 uefi中没有linux16命令/模块的原因。

您也可以在efi系统上查看memtest86 +失败 。

我知道这是一个老post,但它仍然出现在搜索中,所以我将提供一个解决方案。

大多数发行版都提供memtest86 +。 它与UEFI不兼容,因为UEFI不支持16位。 但是,PassMark Memtest86(版本5或更高版本)支持UEFI。

首先,获取memtest文件。 下载USB启动映像。 http://memtest86.com/download.htm接下来,从图像中提取文件。 我将图像刻录到闪存驱动器上,以方便在多台计算机上安装。

其次,安装memtest86。 我在硬盘的末尾创建了一个500MB的分区,并格式化为FAT32。 然后将所有文件从闪存驱动器复制到此分区。 注意:可以安装到EFI目录,但需要重命名文件以避免覆盖现有的引导文件。

第三,配置grub2-efi菜单项。 添加条目的方法有很多种,但是遵循更新grub的最安全的方法。 使用root权限创建文件/etc/grub.d/39_memtest,并将其设置为可执行文件。 (注意:更改文件名中的数字会更改它在grub菜单中显示的位置。请勿使其低于6以确保首先运行标题和主题)

接下来制作文件的内容:

 #!/bin/sh echo "Adding Memtest86" >&2 exec tail -n +3 $0 menuentry "Memtest86" { chainloader (hdx,y)/efi/boot/bootx64.efi } EOF 

*用适当的HDD和分区信息替换(hdx,y)。

然后运行update-grub你现在应该有一个启动到Memtest86的菜单项