Running inside a Qemu virtual machine, I am trying to install Alpine
Linux onto a manually partitioned 4gb disk that contains only a single
ext4 root partition. (No swap, no /boot.)
Syslinux loads, but prints the following error message:
SYSLINUX 6.04 EDD [snip]
Failed to load ldlinux.c32
Boot failed: please change disks and press a key to continue.
Does anyone have any idea what I might be doing wrong?
I boot alpine-extended-3.15.1-x86_64.iso in Qemu, and then run the
following commands:
# apk add sfdisk
# echo 2048 | sfdisk /dev/sda
# sfdisk --activate /dev/sda 1
# apk add e2fsprogs
# mdev -s
# mkfs.ext4 /dev/sda1
# mount -t ext4 /dev/sda1 /mnt
# setup-alpine # and select the defaults for everything
# setup-disk /mnt
>> Installing system on /dev/sda1
>> extlinux: Not a directory: /mnt/boot
>> 100%
>> => initramfs: creating /boot/initramfs-lts
>> /boot is device /dev/sda1
>> extlinux: no previous syslinux boot sector found
>> You might need to fix the MBR to be able to boot
>> Boot attempt #1:
>> Booting from Hard Disk...
So I run the following:
# cat /usr/share/syslinux/mbr.bin > /dev/sda
>> Boot attempt #2:
>> Booting from Hard Disk...
>> Missing operating system.
>> Booting from Floppy...
>> Boot failed: could not read the boot disk
>> [snip]
So I run the following:
# extlinux --install /mnt/boot
>> /mnt/boot is device /dev/sda1
>> Boot attempt #3:
>> Booting from Hard Disk...
>>
>> SYSLINUX 6.04 EDD [snip]
>>
>> Failed to load ldlinux.c32
>> Boot failed: please change disks and press a key to continue.
If I let setup-alpine partition the disk, then the boot will succeed.