5 ms·
I made this exact thing like 2 years ago except with a custom busybox based environment, huh It worked by building the system into the initramfs, then using a
by ksp-atlas 2y ago
I made this exact thing like 2 years ago except with a custom busybox based environment, huh
It worked by building the system into the initramfs, then using a kernel feature to basically bake the initramfs into the kernel image, and then using efistub to make the kernel bootable
- ravenstine 2y agoDo you happen to remember what that kernel feature was called? I did something very similar, and it'd be cool to have one fewer file to deal with.
- candiddevmike 2y agoUKI, maybe? https://github.com/uapi-group/specifications/blob/main/specs/unified_kernel_image.md https://github.com/uapi-group/specifications/blob/main/specs...
- westurner 2y agoEfistub Kernel docs > admin-guide/efistub: https://docs.kernel.org/admin-guide/efi-stub.html https://docs.kernel.org/admin-guide/efi-stub.html : > Like most boot loaders, the EFI stub allows the user to specify multiple initrd files using the “initrd=” option. This is the only EFI stub-specific command line parameter, everything else is passed to the kernel when it boots Arch Wiki > EFISTUB: https://wiki.archlinux.org/title/EFISTUB https://wiki.archlinux.org/title/EFISTUB : > The option is enabled by default on Arch Linux kernels, or if compiling the kernel one can activate it by setting CONFIG_EFI_STUB=y in the Kernel configuration. eaut/efistub is a script for managing signed efistubs: https://github.com/eaut/efistub https://github.com/eaut/efistub ... Systemrescuecd can be PXE booted (netbooted) from tftpd managed by Cobbler or Foreman. From "Booting Linux off of Google Drive" https://news.ycombinator.com/item?id=40853770#40859485 https://news.ycombinator.com/item?id=40853770#40859485 re: signing and iPXE Ventoy boots via grub/efi but there are blobs: https://news.ycombinator.com/item?id=40619822#40620279 https://news.ycombinator.com/item?id=40619822#40620279 "Ask HN: Where can I find a primer on how computers boot?" https://news.ycombinator.com/item?id=35230852 https://news.ycombinator.com/item?id=35230852 systemd-boot and grub support booting to efistubs "Migrate from systemd-boot to EFISTUB" https://www.reddit.com/r/archlinux/comments/14jt8yv/migrate_from_systemdboot_to_efistub/ https://www.reddit.com/r/archlinux/comments/14jt8yv/migrate_... : > You don't "disable" systemd-boot, you just don't run it. Or you can delete the boot entry for it with efibootmgr if you want. You also don't need to "set up" EFISTUB, the stub is already built into the Arch kernels, so they're already bootable. So all you need to do is make a boot entry in your UEFI using efibootmgr with the correct kernel parameters, most likely the same ones you used for systemd-boot. Fedora > Changes/Unified_Kernel_Support_Phase_2 > Switch_an_existing_install_to_use_UKIs: https://fedoraproject.org/wiki/Changes/Unified_Kernel_Support_Phase_2#Switch_an_existing_install_to_use_UKIs https://fedoraproject.org/wiki/Changes/Unified_Kernel_Suppor... : dnf install virt-firmware uki-direct kernel-uki-virt kernel-bootcfg --show https://github.com/spxak1/weywot/blob/main/guides/fedora_systemd-boot_Unified_kernel.md https://github.com/spxak1/weywot/blob/main/guides/fedora_sys... : sudo dracut -fvM --uefi --hostonly-cmdline --kernel-cmdline "root=UUID=b6b8fa59-92cc-4d03-8d8f-d66dab76d433 ro rootflags=subvol=root resume=UUID=fb661671-97dc-45db-b720-062acdcf095e rhgb quiet mitigations =off" - "No more boot loader: Please use the kernel instead" https://news.ycombinator.com/item?id=40907933 https://news.ycombinator.com/item?id=40907933 Gentoo wiki > EFI_stub https://wiki.gentoo.org/wiki/EFI_stub https://wiki.gentoo.org/wiki/EFI_stub : > It is recommended to always have a backup kernel. If a bootmanager like grub is already installed, it should not be uninstalled, because grub can boot a stub kernel just like a normal kernel. A second possibility is to work with an additional UEFI entry. Before installing a new kernel, the current one can be copied from /efi/EFI/example/ to /efi/EFI/backup. [And then efibootmgr]
- pdmccormick 2y agoThat option is CONFIG_INITRAMFS_SOURCE, see https://www.kernel.org/doc/html/latest/filesystems/ramfs-rootfs-initramfs.html#populating-initramfs https://www.kernel.org/doc/html/latest/filesystems/ramfs-roo... .
- ksp-atlas 2y agoYeah, it was this