Problem when manually building a bootable Fedora USB device

I’ve a raw file which represents a virtual USB device with a already formatted gpt ESP partition where I want to put the content of a Fedora Server 30 ISO to make it bootable in a virtual machine. I know there’s several tools to do it (from dd since mediawriter) but I want to do it “manually”. So, basically, on a VM with the ISO on the CD player, I’ve done this:

sudo mount /dev/sr0 /mnt/iso
sudo mount /dev/sdb1 /mnt/usb
sudo cp -r /mnt/iso/* /mnt/usb

But when I want to try this USB by executing
qemu-system-x86_64 -enable-kvm -m 2G -hda USB.raw -bios /usr/share/OVMF/OVMF_CODE.fd
(or qemu-system-x86_64 -enable-kvm -m 2G -device piix3-usb-uhci -drive id=myUsb,file=USB.raw,if=none -device usb-storage,drive=myUsb -bios /usr/share/OVMF/OVMF_CODE.fd , it’s the same)
it seems it works because Grub appears, but when I run the “Install Fedora” option, booting stucks in this screen and after a while dracut begins to emit “timeout” error messages.


I suspect it’s something about some kernel parameters I’m missing, but I’ve no idea where to begin. I’ve done the same steps using a Ubuntu’s ISO and it works perfectly.

PD: I’ve set the PARTLABEL of /dev/sdb1 to the same value it appears as in inst.stage2 (“Fedora-S-dvd-x86_64-30”) but with no luck. On the other hand, I haven’t been able to change the LABEL value because in a FAT32 filesystem it can’t be longer than 11 characters…maybe it is the problem???)

Thanks a lot

I’ve confirmed the issue: as USB drive is formatted in FAT32/ESP, its label just can have 11 characters at maximum. But default label Fedora’s partition has several more (it’s “Fedora-S-dvd-x86_64-30”, it can be seen as “inst.stage2” parameter’s value in “linuxefi” line inside “grub.cfg” file). So it’s truncated. So inst.stage2’s value doesn’t match partition label anymore. And it seems Fedora doesn’t like this, so it’s refuses to start. The solution is reassign a shorter label to FAT32 partition (for instance, by doing fatlabel /dev/sdb1 “NewLabel” and then modifying the “inst.stage2”'s value in grub.cfg file accordingly.
Thanks anyway.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.