在 Ubuntu 16 系统上执行 memtest86+

在 Ubuntu 16 系统上执行 memtest86+

我正拼命尝试让 memtest86+ 在我新安装的 Ubuntu 16 LTS 上运行。

我知道该网站上已经存在与 Ubuntu + memtest 相关的问题,但是没有一个相关的解决方案适合我:

我首先使用自动安装程序创建可启动的 USB 闪存驱动器他们的官方网站。但是,尽管 bios 菜单显示了闪存驱动器在可能的可启动设备中,但计算机似乎无法识别它并绕过它,从而提示 Ubuntu。

由于自动安装程序仅与 Windows 兼容,因此生成的 USB 记忆棒是否只能在 Windows 上使用?在我看来,这不太可能,因为在出​​现故障时操作系统尚未启动。

通过在网上搜索,我发现 memtest86+ 始终安装在所有最新的 Ubuntu 发行版上。但是我无法让它正常启动。

Grub 菜单上没有显示 memtest 选项。我尝试使用grub 定制器,在这个问题。我设法将 memtest 选项添加到 grub 菜单中,但我一定是操作不正确:选择后,计算机只是静默重启。

我还尝试以我所知的任何方式手动启动 memtest bin 文件,但无济于事。我特别尝试从 grub 命令行启动它,但我不知道如何做到这一点。

以下是我使用的配置grub 定制器对于我的主要内存测试条目:

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 6f124093-a471-4959-8a59-b03c11ad2634
else
  search --no-floppy --fs-uuid --set=root 6f124093-a471-4959-8a59-b03c11ad2634
fi
linux16 /boot/memtest86+.bin

它与引用的问题中找到的那个完全相同,除了命令末尾的奇怪的最终数字search- 这些是在选择输入模板时由软件自动生成的,我决定保持原样。

我不认为 memtest 安装不当,因为它是 Ubuntu 原生自带的。所以对我来说,这实际上是一个如何使用它的问题。

任何帮助均感激不尽。

答案1

因此,看来 memtest86+ 不适合 UEFI 系统。您需要的是 memtest86,没有+

  • memtest86+可在本网站。由于我无法解释的原因,您无法使用其 Windows 安装程序制作在 UEFI 上运行的可启动 USB 设备。
  • memtest86可在本网站. 使用此版本可以创建可在 UEFI 上启动的 USB 设备。

这只是转向该软件的正确版本的问题。感谢@Terrance 让我正确理解了 UEFI / BIOS 的区别。

答案2

我知道这是一篇旧帖子,但它仍然出现在搜索中,所以我将给出一个解决方案。

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

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

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

第三,配置 grub2-efi 菜单项。添加条目的方法有很多,但最安全的方法是在 update-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

*将 (hdx,y) 替换为您合适的 HDD 和分区信息。

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

相关内容