d552800
Install memtest86+ into your grub menu by the following command:
947ffdf
947ffdf
# memtest-setup
947ffdf
48b4c45
It will install 20_memtest86+ GRUB 2 template into /etc/grub.d and you will also
48b4c45
need to regenerate GRUB 2 config by running:
947ffdf
947ffdf
# grub2-mkconfig -o /boot/grub2/grub.cfg
947ffdf
947ffdf
This is not done automatically because it could overwrite any custom changes
947ffdf
in /boot/grub2/grub.cfg.
d552800
d552800
By default ELF version of memtest86+ is installed, which should work on most of
05c6bab
the systems. In case it doesn't work for you, you can try to install the non-ELF
05c6bab
version by running:
d552800
05c6bab
# memtest-setup -b
d552800
48b4c45
Or you can switch between ELF and non-ELF versions of memtest86+ by using
48b4c45
INSTALL_ELF variable from /etc/memtest86+.conf. Setting it to '1' will instruct
48b4c45
GRUB 2 to install ELF version of memtest86+ and setting it to '0' will instruct
48b4c45
GRUB 2 to install non-ELF version. If the variable is empty or unset, the ELF
48b4c45
version is installed (it's due to backward compatibility). For the change
48b4c45
to take effect you need to regenerate your GRUB 2 config by running:
05c6bab
05c6bab
# grub2-mkconfig -o /boot/grub2/grub.cfg
d552800
d552800
The non-ELF version is known to cause various problems and it may not work on
d552800
several systems. That's why the ELF version is installed by default.
d552800
d552800
In case of problems you can also try to install the non-ELF version of
d552800
memtest86+ on floppy disk or USB flash disk and boot the memtest86+ from it.
d552800
The following command installs the memtest86+ on floppy disk
d552800
(WARNING: all data previosly stored on the disk will be lost):
d552800
d552800
# dd if=/boot/memtest86+-VERSION of=/dev/fd0
d552800
d552800
For USB flash disk the command is the same, just change the 'of' device
d552800
appropriately (usually USB flash disk is /dev/sdb, but double check that
d552800
the device string matches your USB flash disk before you run the command,
d552800
wrong device string may cause significat harm, e.g. it can destroy content
d552800
of your system or data disks).
d552800
d552800
The memtest86+ now supports some command line parameters:
d552800
  console= - serial console can be used for memtest86+ control/display,
d552800
             example of usage:
d552800
               console=ttyS0
d552800
               console=ttyS0,115200
d552800
               console=ttyS1,115200n8
d552800
             Only ttyS0 and ttyS1 are supported.
d552800
d552800
  btrace   - enable boot trace.
d552800
d552800
  maxcpus= - limit number of CPUs to use.
d552800
d552800
  onepass  - run one pass and exit if there are no errors.
d552800
d552800
  tstlist= - setup a list of tests to run.
d552800
d552800
  cpumask= - set a CPU (hexadecimal) mask to select CPU's to use for testing.
d552800
d552800
You can add memtest86+ command line parameters into grub like you are
d552800
used with kernel command line parameters, e.g.:
48b4c45
 linux16 /memtest86+-VERSION console=ttyS0
d552800
d552800
Unfortunately this is currently supported only with non-ELF memtest86+ image.
d552800
You cannot use the command line parameters with the ELF image, because the
d552800
command line handling is currently not supported by grub for ELF images.
d552800
d552800
If you need to use serial console with ELF image, you need to recompile
d552800
memtest86+ and explicitly enable/configure serial line. In such case
d552800
edit the config.h in memtest86+ sources the following way:
d552800
d552800
#define SERIAL_CONSOLE_DEFAULT 1
d552800
#define SERIAL_TTY 0
d552800
#define SERIAL_BAUD_RATE 9600
d552800
d552800
and recompile memtest86+. This will explicitly enable serial console and
d552800
set it to use ttyS0,9600.
d552800
d552800
NOTE: explicitly enabled serial console may significantly slow down the memory
d552800
testing.