ChubbyAnt / sedutil

SEDutil: For Intel and AMD Ryzen Systems
https://sedutil.com
94 stars 22 forks source link

Failure to load ldlinux.c32 using BIOS32 PBA #32

Open Wallboy opened 3 years ago

Wallboy commented 3 years ago

Hello all,

My setup is as follows:

Samsung 850 EVO 250GB (BIOS/MBR Partition / GRUB / Linux) Samsung 850 EVO 500GB (BIOS/MBR Partition / Windows Boot Manager / Win 7 and 10 dual boot)

My 250GB is my primary boot drive and it initially will load GRUB and allow me to choose Linux or chainload my Windows Boot Manager on the other 500GB drive. All this is working just fine.

I thought I'd mess around with the SED stuff on my 250GB drive first as there is nothing important on that drive in case I mess up.

I downloaded the latest RESCUE32-1.15-5ad84d8.img.gz and put the img on a USB drive using Rufus. After rebooting and booting into the USB drive, I performed all the steps according to the documentation and everything went smoothly. I chose to use the BIOS32 PBA to match the rest of my BIOS/MBR drive setups.

After powering down my system completely and turning it back on, I get a "Failure to load ldlinux.c32" error. The same error, though with a custom PBA, that someone had 5 years ago.

So, I rebooted back into the Rescue image and instead loaded the UEFI64 PBA instead. After powering off my machine once again and rebooting, I was presented with the expected Authorization screen. After typing in my password, my machine rebooted(drive unlocked) and I see my GRUB loader and everything then loads as normal

However, I'm wondering if the extra reboot after I enter my password is normal? My guess is because after I enter my password, the PC needs to reboot to get out of UEFI mode from the PBA image to be able to use BIOS mode for my MBR disk.

If I could figure out how to get the BIOS32 PBA to work without that that ldlinux.c32 error, I'm guessing I'd avoid that extra reboot from happening.

BTW, I did try using the RESCUE64 image and I got the same backspace/text disappearing problem someone else was having, so I didn't want to be mucking about not being able to see what I was typing. But from my understanding, both Rescue32 and Rescue64 include the same BIOS32 and UEFI64 PBA images, so I'm guessing this shouldn't be the issue of me getting the ldlinux.c32 error?

Any ideas why I'm getting this error with BIOS32 PBA?

Thanks for any help!

EDIT: Looking at the LinuxPBA.cpp source, I see the reboot is supposed to happen regardless. So I'll just end up using the UEFI64 PBA version then. I did do some testing though by writing the BIOS32 image directly to a USB stick and booting from it. I still do get the ldlinux.c32 error. The BIOS32 image from the original repo works though, just not the ones from this fork. I'm not sure why the Rescue32 image can load from a USB stick just fine, but not the BIOS32 images.