Memtest86+
memtest86+ is memory test software based on the commercially available (from Passmark) memtest86 program.
There are multiple versions of memtest with similar names. Gentoo provides access to three in its main Portage repository.
- Use sys-apps/memtest86+ (v5 or above) for UEFI supported testing.
- Use sys-apps/memtest86 (Memtest86 (non plus) v4) for the older legacy BIOS version.
There is also a different commercial binary sys-apps/memtest86-bin (memtest86-bin v9.3+) masked behind a LICENSE=Passmark-EULA
. See package.license for more information on unmasking a EULA license for a specific package.
Installation
USE flags
USE flags for sys-apps/memtest86+ Memory tester based on PCMemTest
+boot
|
Install to /boot in addition to /usr/share/memtest86+/ |
bios32
|
Compile a BIOS-bootable 32bit memtest image |
bios64
|
Compile a BIOS-bootable 64bit memtest image |
iso32
|
Compile a 32bit ISO image |
iso64
|
Compile a 64bit ISO image |
secureboot
|
Automatically sign efi executables using user specified key |
uefi32
|
Compile a EFI32-bootable 32bit memtest image |
uefi64
|
Compile a UEFI-bootable 64bit memtest image |
Prerequisites
Be sure /boot (where the GRUB files are typically installed) is available before installing memtest86+! If /boot is on a separate partition (which it WILL BE if the partitioning scheme in the Gentoo handbook was used for this Gentoo install), then be sure the mount command is run before the emerge section below:
root #
mount /boot
If no errors are return then boot should be successfully mounted. Check by running the mount command without any arguments and parsing the output with grep:
user $
mount | grep boot
boot
Emerge
Install it through Portage with emerge:
root #
emerge --ask sys-apps/memtest86+
Configuration (bootloader)
GRUB2
For GRUB2 just run grub-mkconfig. As long as the package has been emerged, a configuration file has already been installed to /etc/grub.d/39_memtest86+:
root #
grub-mkconfig -o /boot/grub/grub.cfg
GRUB legacy
Replace the ?
(question marks) in the file below with correct numbers for the system's boot partition:
title=memtest86+
root (hd?,?)
kernel /boot/memtest86plus/memtest
LILO
For LILO, add this to the lilo.conf configuration file:
image = /boot/memtest86plus/memtest
label = memtest86+
Then rebuild LILO's MBR entry:
root #
lilo
Syslinux
Add this to the configuration file (change .efi64 by .bios depending in your harware):
LABEL memtest86+
MENU LABEL memtest86+
LINUX /boot/memtest86plus/memtest.efi64
Systemd-boot
title Memory Tester (memtest86+)
efi /memtest86plus/memtest.efi64
Usage
To use memtest86+ the system needs to be rebooted using the newly added boot item.
Removal
Unmerge
root #
emerge --ask --depclean --verbose sys-apps/memtest86+
See also
- https://www.memtest86.com/tech_configuring-grub.html - Official document explaining grub configuration.
- bug #660504 - memtest86 version bump request, explaining the version forks. There an up-to-date ebuild of by Ben Kohler, a Gentoo developer (As of Oct 2019, it packages v8.2.) This has since been transitioned into a new memtest86-bin package. (As of Dec 2021, memtest86-bin packages v9.3)
- Badblocks — a small program for stress testing block devices.
- stress
- stress-ng
External resources
- https://www.memtest86.com/ - Official commercial Passmark website.
- https://www.pcworld.com/article/232640/memtest86.html - A PCWorld article describing the usefulness and features of memtest86+.