|
|
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.
|