Hello, Christophe. On Mon, 13 Jan 2025 18:43:27 +0100 Christophe Pisteur <[email protected]> wrote:
> Since the solution seems to take time to find, and since the temporary > solution of deleting the “dump” files on my device > /sys/firmware/efi/efivars doesn't work, I'm going to reinstall my > system before I get stuck on an unfortunate reboot. > > Would you advise me to use legacy mode for booting (instead of efi) to > avoid this problem again in the near future? It depends on what is the cause of the problem. I guessed the problem was due to the dump files filling the variables' storage. If UEFI ran out of storage, then I would not expect legacy mode to make a difference because it is still provided by the same firmware. However, you cleared the dumps from the storage, and it did not help. Thus, maybe my assumption that UEFI ran out of its internal storage was wrong. The next thing I would try is removing a boot entry, assuming that you have one which you do not need. This may help if there is a limit on boot entries independently of the size of EFI variables storage. I am guessing that there might be such a limit. However, if that is the case, I find it difficult to explain how you ran out of them. There is a convention to label EFI boot entries and put the binaries in directories named after the operating systems. So, the label of the entry and the name of the directory could be considered clues when checking the list of entries. Guix System labels its entry as "Guix" and puts the binary at \EFI\Guix\grubx64.efi. I assume that you have it installed. $ ls /boot/efi/EFI/Guix/grubx64.efi /boot/efi/EFI/Guix/grubx64.efi I took a closer look at the efibootmgr output that you emailed before. The Guix boot entry is missing. Instead, it shows that the following boot option is selected to boot. > Boot0002* Ubuntu HD(1,GPT,dd200da3-9719-464e-aa1d- > 3f4149ef14d8,0x800,0x82000)/File(\EFI\ubuntu\shimx64.efi) >From that, your EFI partition's PARTUUID must be dd200da3-9719-464e-aa1d-3f4149ef14d8 per "sudo blkid". I assume that your operating system is Guix System because you are trying to run "guix system reconfigure ..." If you do not have Ubuntu installed, then you may want to remove Ubuntu boot option. It is possible to remove an entry with efibootmgr. You would need to provide two options at the same time: "--bootnum" option followed by four digits of the boot entry number and "--delete-bootnum" to instruct efibootmgr to delete that option. This requires sudo or root. In the output that you provided, there is only one more boot entry associated with loading a binary from EFI partition and booting an operating system. You may want to delete that instead or in addition. > Boot0001* Windows Boot Manager HD(1,GPT,dd200da3-9719-464e-aa1d- > 3f4149ef14d8,0x800,0x82000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)57494 > e444f5753000100000088000000780000004200430044004f0042004a00450043005400 > 3d007b00390064006500610038003600320063002d0035006300640064002d003400650 > 0370030002d0061006300630031002d0066003300320062003300340034006400340037 > 00390035007d00000030000100000010000000040000007fff0400 Other boot options are not pointing to the EFI partition. I assume that those options were generated by UEFI based on its configuration. I would not touch those with efibootmgr, at least for now. As a side note, depending on your firmware, UEFI may later re-add boot entries based on the binaries available in the EFI partition. I usually manually remove those files which may remain from any past operating system installations. Roman
