Package: grub-efi-amd64 Version: 2.06-3 Severity: wishlist Currently, if you have dual boot of 2 Debian system installations, every time grub2 of one system runs postinst, it overwrites /boot/efi/EFI/debian/grub.cfg file in ESP pointing search.fs_uuid pointing to lead to /boot/grub/* by UUID.
It doesn't backup existing /boot/efi/EFI/debian/grub.cfg. If you consider this to be the result of upstream feature of update-grub then it will be tough to be fixed. But can you think of updating Debian postinst script to check the existence of the /boot/efi/EFI/debian/grub.cfg file first and back it up? This helps recovery of system and trivial to be implemented. I prefer time-stamped string as suffix for the backup file but this can be anything maintainer likes. This way, we can easily select /boot/grub/* after crash without manually typing UUID. Having at least 2 or 3 stage backups is more friendly. -- Package-specific info: *********************** BEGIN /proc/mounts /dev/nvme0n1p5 / btrfs rw,relatime,ssd,space_cache,subvolid=22924,subvol=/@rootfs 0 0 <--- This is my main @rootfs /dev/nvme0n1p5 /btrfs/main btrfs rw,relatime,ssd,space_cache,subvolid=5,subvol=/ 0 0 /dev/nvme0n1p5 /home/osamu btrfs rw,relatime,ssd,space_cache,subvolid=596,subvol=/@osamu 0 0 /dev/nvme1n1p1 /btrfs/sub btrfs rw,relatime,ssd,space_cache,subvolid=5,subvol=/ 0 0 <--- This partition holds 2nd @rootfs /dev/nvme0n1p1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0 <--- ESP *********************** END /proc/mounts *********************** BEGIN /boot/grub/grub.cfg # # DO NOT EDIT THIS FILE # # It is automatically generated by grub-mkconfig using templates .... (snip uninteresting part) .... Followings are my custom dual boot configuration ### BEGIN /etc/grub.d/40_fixed_linux ### # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. menuentry 'Debian GNU/Linux --- main SSD' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-fixed-fe3e1db5-6454-46d6-a14c-071208ebe4b1' { load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_gpt insmod btrfs search --no-floppy --fs-uuid --set=root fe3e1db5-6454-46d6-a14c-071208ebe4b1 echo 'Loading Linux from /dev/nvme0n1p5 ...' linux /@rootfs/vmlinuz root=UUID=fe3e1db5-6454-46d6-a14c-071208ebe4b1 ro rootflags=subvol=@rootfs quiet echo 'Loading initial ramdisk from /dev/nvme0n1p5 ...' initrd /@rootfs/initrd.img } menuentry 'Debian GNU/Linux --- sub SSD' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-fixed-51f9cd11-30b3-4d99-b2ed-fe411fa22ee6' { load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_gpt insmod btrfs search --no-floppy --fs-uuid --set=root 51f9cd11-30b3-4d99-b2ed-fe411fa22ee6 echo 'Loading Linux from /dev/nvme1n1p1 ...' linux /@rootfs/vmlinuz root=UUID=51f9cd11-30b3-4d99-b2ed-fe411fa22ee6 ro rootflags=subvol=@rootfs quiet echo 'Loading initial ramdisk from /dev/nvme1n1p1 ...' initrd /@rootfs/initrd.img } ### END /etc/grub.d/40_fixed_linux ### ### BEGIN /etc/grub.d/41_custom ### if [ -f ${config_directory}/custom.cfg ]; then source ${config_directory}/custom.cfg elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then source $prefix/custom.cfg fi ### END /etc/grub.d/41_custom ### *********************** END /boot/grub/grub.cfg -- System Information: Debian Release: bookworm/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 5.18.0-4-amd64 (SMP w/12 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages grub-efi-amd64 depends on: ii debconf [debconf-2.0] 1.5.79 ii grub-common 2.06-3 ii grub-efi-amd64-bin 2.06-3 ii grub2-common 2.06-3 ii ucf 3.0043 grub-efi-amd64 recommends no packages. grub-efi-amd64 suggests no packages. -- debconf information: grub2/kfreebsd_cmdline: * grub2/linux_cmdline: * grub2/force_efi_extra_removable: false * grub2/update_nvram: true * grub2/linux_cmdline_default: quiet grub2/kfreebsd_cmdline_default: quiet