-
Notifications
You must be signed in to change notification settings - Fork 332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to create bootable (bios) Debian image #580
Comments
Thanks for report and the bisect, @whot. This is an excellent starting point to find the reason. |
I get a kernel panic with this config, can you confirm you get the same error?
|
Yep, same error. And you probably have better tools, but I used this to check
and weep at the lack of an initrd file :) |
I think the git bisect was a false positive, or maybe there are other bugs at play. 925a009 introduced this code: + if not do_run_build_script and args.bootable and args.with_unified_kernel_images:
+ # Disable dracut postinstall script for this apt-get run.
+ env['INITRD'] = 'No' I'm guessing this is a pretty good hint for "don't create an initrd". Removing the Before:
After:
I'm guessing enough code moved around that the comment is no longer up-to-date and now just prevents the initrd to be created. |
So you're not getting an initrd because unified kernel images are enabled. The initrd is baked into the efi image generated by dracut. We might need to enable this by default for bios builds. I don't know if it makes much sense to use unified kernel images when doing a BIOS boot. Thing is that for Debian, both dracut and the default initramfs generator are at play. We haven't really put in the time to sort out the initramfs story on Debian/Ubuntu unfortunately. |
I did try that, but apparently "Sorry, --without-unified-kernel-images is not supported on this distro." :) |
I'll make a PR tomorrow to enable it on debian when using bios. I think I didn't enable it for debian because it breaks when using efi. |
I'm unable to create any qemu-bootable Debian image using
BootProtocols=bios
.mkosi.default
file looks like this:Same bug appears for Debian stable/unstable and the recent Ubuntus (tested the last two, I think). In all cases, the issue is that there is no initrd file in
/boot
which then unsurprisingly fails during boot. The samemkosi.default
file with Fedora 33 as distribution works just fine.Host system is Fedora 33, reproducible with:
git bisect
says this started with 46ceca8 which (handwavy guess) could explain why the initrd never appears, maybe the partition isn't mounted correctly?The text was updated successfully, but these errors were encountered: