Memtest Uefi Boot

0 views
Skip to first unread message

Rosalyn Pomposo

unread,
Aug 4, 2024, 9:22:36 PM8/4/24
to protunovyt
it's for a UEFI boot PC running normally Windows, its owner does not want to install Ubuntu. "memtest86+" is completely free (unlike "memtest86"), but is quite old, and does not offer a UEFI boot - this is why having it within the Ubuntu options makes things easier)

Memtest86+ version 6 (and newer) can be downloaded as a standalone zip file, which contains an iso file. This iso file can be cloned directly into a USB drive to make a bootable memtest86+ system and it works both in UEFI mode and the old BIOS mode alias legacy mode.


There is another version, the 'original' but now not FOSS version memtest86, and it works in UEFI mode. There is a commercial version and a free version (no cost, but not open source code).


Use PCMemTest. Since Ubuntu 22.04 the PCMemTest is available from the Ubuntu repository. PCMemTest is a fork of MemTest86+ and it works fine on UEFI too. As it is part of Ubuntu it is the easiest to install:


Diagnosing RAM with tools most of the time does not work. I ran Memtest86 for 5/6 hours. It reported that the RAMs do not have any issues. Then I took out the RAMs i doubted and the system started running smoothly.


Just keep one RAM and remove others. Then run your machine for a while and check if there is any issue or not (remember, the issues can be very subtle, for example keyboard does not work for 1-5 seconds every once in a while). If there is no issue then it is a good RAM. Then check ram 2,3...n.


Please note that all RAMs and slots can be good but if there is a miss match (bus speed or brand or the ram) then it can cause issues too. So, you have to make sure that combinations also work. For example, use same brand and same bus speed RAMs together and test the machine for a while (remember, the issues can be very subtle). Then attach another brand / bus speed RAM and test for a while. Then maybe enable XMP and test for a while.


According to this discussion it can't run in UEFI mode because it's a 16-bit program.

If available, booting the live USB (or DVD) in Legacy/CSM (AKA "BIOS mode") should bring the memtest86+ option you want to the live menu.


Starting from MemTest86 v5, the code was re-written to support self-booting from the newer UEFI platform. The software still remains free to use without restrictions. The MemTest86 v4 project is still maintained and remains open source, for use on old machines with BIOS. However, from V5 with the latest release being V8.3 the software is being released under a proprietary license. Development on the MemTest86+ version seems to be discontinued as there have been no updates since 2013.


And would such inclusion be of any use to the broader audience - I mean - I know memtest exist - in my 30 years with computers - I have used it once - just to see what it was about - never touched it since.


I would like to run memtest on some new memory I just installed. I have memtest86+ installed and grub2 correctly shows the memtest option in the menu. However, it reports that it is unable to find the command linux16.


So I tried substituting linux for linux16 but then I get an error complaining that the zImage is not 32 bit. (I'm not surprised this didn't work - it was just the closest command to linux16 I could find so I figured I might as well try it.)


Prediction...This year will be a very odd year!

Hard work does not kill people but why risk it: Charlie Mccarthy

A man is not complete until he is married..then..he is finished.

When ALL is lost, what can be found? Even bytes get lonely for a little bit! X-ray confirms Iam spineless!


memtest will not work in grub2-uefi . This is because uefi does not support launching 16-bit binaries and memtest is a 16-bit binary. Thats also the reason why there is no linux16 command/module in grub2 uefi (this is intentional, not a bug).


Is it a bug that etc/grub.d/20_memtest86+ is installed with the EFI version of grub2? (It is included in the files common to the BIOS and EFI versions.) It seems misleading because it means that grub2 happily includes memtest in its menu even though it cannot run it.


At this time at debian buster, the supplied version of memtest86 is 4.3.7, which is very old, doesn't support DDR4 and also seems not to support UEFI. The project is not GPL licensed since version 5.0, so newer versions are not in debian repos.


Maybe the best solution is to create a USB stick with the UEFI booting free version of memtest86 (not "+"), which also supports DDR4.

It's not so sad because memtest ought to ignore your whole operating system anyway :)


On one of the systems I look after, I had at one point installed memtest from the kernel plugin. The kernel plugin does not seem to have the memtest option anymore and as such does not give the option to uninstall it now. Can anyone (perhaps ryecoaaron since it was installed via the kernel plugin) shed light on the procedure to remove it now without breaking something?


The kernel plugin installs memtest86+ automatically because it is a dependency of the plugin. You can't uninstall that Debian package because it will uninstall the kernel plugin. I have to make it a required dependency or else it won't be installed. Why do you want to uninstall it?


Second: That machine randomly seems to reset the boot option in the kernel to memtest. If this happens unnoticed, it boots up in memtest and not debian. I was hoping to remove it to see if it fixes the issue. I could uninstall/cache clean/re-install the kernel plugin I guess to see if that has an effect.


Last night (or early this morning depending on your perspective) we had a power flicker and the server shut down. I powered it on this morning, and it wouldn't boot. Powered it off, back on, wouldn't boot. When I hooked a display/keyboard up, I saw it was defaulted to memtest.


Well something is changing it and since the kernel plugin is the only thing that would be making changes to inject the options into the grub menu and set the default boot option, I figured it would be a good place to start.


Like you, the first time it happened to me I though nothing of it. just random quirk or a mistake on my part kitting the memtest boot option by mistake. This was the third time this has happened, so the mistake on my part thought no longer exists.


I installed it so I could get a proxmon kernel, and clonezilla and systemrescue for an os drive clone and of course some recovery tools in the event of problems. other than that the system is set to boot proxmox 5.19 and is left alone.


Oh trust me, I understand it's puzzling. This is the first time this happened to me, and I leave open the possibility I accidentally did it the other day. As I said though, I don't recall saving, changing, etc.. anything on the kernel plugin page. I simply pulled it up as a reference as I don't use it that often.


I don't know what's going on then either. I always install the kernel plugin. I am currently running at least 6 installs of OMV6 on bare metal, between mine, some for friends and a couple at work. This machine (one at the office) is the only one this happens to.


My stuff probably isn't much help, as when I hooked the display up and saw it was defaulting to memtest, I chose the first kernel to complete the boot, then checked the kernel plugin, and set the 1st option as default, so you're seeing it after it was fixed. Didn't really expect you to see much from mine, was just confirming that I've experienced something similar to BernH, and I'm 99.99% certain I didn't change it.


Were either of you booting from iso around when this happened? The plugin will change grub_default to "saved". grub is automatically supposed to change saved back to the grub entry that was "saved". Maybe it changed it to the wrong entry? I can't see this happening more than once though. If you tell the plugin to boot memtest, it does not use the "saved" functionality since setting the boot option in the plugin is not a boot once feature like the ISOs have.


That's exactly what happens. It defaults to memtest. You have to manually pick a normal kernel and then reset the default once booted up. it doesn't just boot memtest in error, it's the default boot that gets changed.


So what may be overlooked sometimes in the whole boot loader discussion is the ability of UEFI to do more than just loading an OS. This is why I see ".efi" files as "apps" because in fact they just are, built on a special kind of API: UEFI. So, you can actually do stuff like editing, diagnosing, testing certain stuff at the lowest possible system level without booting to any OS.


DISCLAIMER: Use this guide at your own risk! For educational purposes only! Should do not any harm, but remember you are dealing with rather low level stuff. But at least for me everything went flawless.

3a8082e126
Reply all
Reply to author
Forward
0 new messages