[syslinux] FW: boot fails on some system

Martin Str|mberg
2017-04-15T07:11:34Z

If everything looks good on stick (active partition, partition ids,
etc), but one computer happilly boots and the other doesn't, obviously
the non-booting one doesn't like the mbr or the partitioning.


For the mbr liking:

The first 440 bytes can be any "normal" mbr. First take a backup of
the one you have on the USB stick/disk now with "dd if=/dev/sdx bs=440
count=1 of=mbr.not_perfect conv=sync".

Then put in any other one from a BIOS (UEFI system might be a bad
choice) booting hard drive. From your main system, from your Windows
system (although this might be a last resort), etc. And/Or use the
mbr.bin files from different syslinux versions. Make sure to not
disturb the partitioning when doing this ("bs=440 count=1").

Can you make it boot then?

If so you can compare the mbrs to see what's different if you want.


For the partitioning:

If not try partition the USB stick/disk with another partition
tool. My experiences with gparted have been bad. With sfidks and fdisk
acceptable (to add to the confusion, there were two different fdisks
in Debian: one from util-linux and one from gnu-fdisk; gnu-fdisk seems
to have disappeared in jessie).

Do zero out the partition table first so you don't "inherit" any
badness ("dd if=/dev/zero of=/dev/sdx bs=512 count=1 conv=sync").
Actually before destroying the partition table, I'd zero out the
beginning of all and any partitions ("dd if=/dev/zero bs=1024k
count=10 conv=sync of=/dev/sdxX" x Y) first, as we are in starting
from scratch mode. (If there were RAID/GPT involved I'd zero out
the end of partitions/disk respectively too.)

Further making starting first partition start on sector 2048 or 63 or
whatever new USB sticks have (I've seen really weird starting sector
on them like 8064) could make a difference. I've seen a new UEFI
system fail to BIOS boot with the partitioning of/from a new USB stick
(not relevant here).


--
MartinS