On 6/17/25 12:30 AM, Harald Dunkel wrote:
Package: kexec-tools
Version: 1:2.0.25-3+deb12u1

Even though /etc/default/kexec is configured correctly

        KERNEL_IMAGE="/vmlinuz"
        INITRD="/initrd.img"
        APPEND=""
        USE_GRUB_CONFIG=false

and the files/symlinks exist, systemctl kexec replies

        No kexec kernel loaded and autodetection failed.
        Automatic loading works only on systems booted with EFI.

/usr/share/doc/kexex-tools/README.Debian doesn't elaborate where
the EFI restriction came from. From my understanding kexec had been
introduced to *bypass* BIOS/UEFI initialization at boot time and
to let the new kernel do the work instead. Why does it bother now?

Nor does the README explain why kexec-tools' defaults file is
ignored (apparently), what kind of "autodetection" has been tried
instead, and what magic needs to be applied in general to make
kexec work somehow. It did for Bullseye.


I got similar problems for Testing (kexec-tools 1:2.0.29-2+b2).


systemd uses its own scripts for kexec which require a kexec kernel to be pre-loaded. I had added a script "kexec-load-kernel" in previous releases to parse /etc/default/kexec and load a kexec kernel but it was not documented in README.debian. I have updated README.debian and this update will be in the next release.

To kexec, try these steps and please let me know if it works:

- Load a kexec kernel with "kexec-load-kernel"
- Reboot with "systemctl kexec"

Thanks,
Khalid

Reply via email to