Public bug reported:

After updating the kernel, the final regeneration of grub.cfg ended
without any boot-entries.

I use zfs and normally they are generated fine by
/etc/grub.d/10_linux_zfs

The only hint for reasons, why the script might have failed, can be
found in /var/log/apt/term.log. All lines are normal, except for the
"date" one:

...
Found linux image: vmlinuz-6.8.0-111-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found initrd image: initrd.img-6.8.0-111-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found linux image: vmlinuz-6.8.0-110-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found initrd image: initrd.img-6.8.0-110-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found linux image: vmlinuz-6.8.0-107-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found initrd image: initrd.img-6.8.0-107-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found linux image: vmlinuz-6.8.0-85-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found initrd image: initrd.img-6.8.0-85-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found linux image: vmlinuz-6.8.0-83-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Found initrd image: initrd.img-6.8.0-83-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
Warning: didn't find any valid initrd or kernel.
date: ungültiges Datum »@“
^^^^^^^^^^^^^^^^^^^^^^^^^^
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot 
entries.
Adding boot menu entry for UEFI Firmware Settings ...

The german message means "invalid date". I assume this message comes
from line 668 in 10_linux_zfs:

 666         # Snapshot date
 667         foo="$(get_field_from_entry "${entry}" 5)"
 668         snapdate="$(date -d @$(get_field_from_entry "${entry}" 5) "+%x @ 
%H:%M")"

and that column 5 in ${entry} for some reason does not contain the unix
timestamp, that is normally found there. Since I can not reproduce this,
I do not know, what this unexpected value was. But snapshots are created
and removed quite often, so it could be pure coincidence, that a
snapshot might have been caught in an intermediate state.

Maybe it is possible to harden the script, that it would skip such a
broken entry instead of resulting in no bootable grub.cfg entry at all.

Note, that I am using Linux Mint and I can report there instead. But my
impression is, that this is an upstream (=Ubuntu) bug or annoyance and
fixing it would help Ubuntu users as well.

# lsb_release -rd
No LSB modules are available.
Description:    Linux Mint 22.3
Release:        22.3

# apt-cache policy grub-common
grub-common:
  Installiert:           2.12-1ubuntu7.3
  Installationskandidat: 2.12-1ubuntu7.3
  Versionstabelle:
 *** 2.12-1ubuntu7.3 500
        500 http://ftp.hosteurope.de/mirror/archive.ubuntu.com 
noble-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     2.12-1ubuntu7 500
        500 http://ftp.hosteurope.de/mirror/archive.ubuntu.com noble/main amd64 
Packages

Expected to happen (at the end of kernel update): a new grub.cfg file
gets generated, which contains entries for all installed bootable
kernels.

happened instead: the new grub.cfg only contains entry for UEFI firmware
settings, bot no boot entry for any of the installed kernels. This
happened only at the moment of the post-installation script. A later
call to grub-mkconfig produced a correct grub.cfg.

** Affects: grub2 (Ubuntu)
     Importance: Undecided
         Status: New

** Description changed:

  After updating the kernel, the final regeneration of grub.cfg ended
  without any boot-entries.
  
  I use zfs and normally they are generated fine by
  /etc/grub.d/10_linux_zfs
  
  The only hint for reasons, why the script might have failed, can be
  found in /var/log/apt/term.log. All lines are normal, except for the
  "date" one:
  
  ...
  Found linux image: vmlinuz-6.8.0-111-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found initrd image: initrd.img-6.8.0-111-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found linux image: vmlinuz-6.8.0-110-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found initrd image: initrd.img-6.8.0-110-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found linux image: vmlinuz-6.8.0-107-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found initrd image: initrd.img-6.8.0-107-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found linux image: vmlinuz-6.8.0-85-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found initrd image: initrd.img-6.8.0-85-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found linux image: vmlinuz-6.8.0-83-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Found initrd image: initrd.img-6.8.0-83-generic in 
rpool/ROOT/ubuntu_idiiu4@zfs-auto-snap_daily-2026-05-14-1040
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  Warning: didn't find any valid initrd or kernel.
  date: ungültiges Datum »@“
  ^^^^^^^^^^^^^^^^^^^^^^^^^^
  Warning: os-prober will be executed to detect other bootable partitions.
  Its output will be used to detect bootable binaries on them and create new 
boot entries.
  Adding boot menu entry for UEFI Firmware Settings ...
  
  The german message means "invalid date". I assume this message comes
  from line 668 in 10_linux_zfs:
  
-  666         # Snapshot date
-  667         foo="$(get_field_from_entry "${entry}" 5)"
-  668         snapdate="$(date -d @$(get_field_from_entry "${entry}" 5) "+%x @ 
%H:%M")"
+  666         # Snapshot date
+  667         foo="$(get_field_from_entry "${entry}" 5)"
+  668         snapdate="$(date -d @$(get_field_from_entry "${entry}" 5) "+%x @ 
%H:%M")"
  
  and that column 5 in ${entry} for some reason does not contain the unix
  timestamp, that is normally found there. Since I can not reproduce this,
- I do not know, what this unexpected value was. Bit snapshots are created
+ I do not know, what this unexpected value was. But snapshots are created
  and removed quite often, so it could be pure coincidence, that a
  snapshot might have been caught in an intermediate state.
  
  Maybe it is possible to harden the script, that it would skip such a
- broken entry instead of resulting in not bootable grub.cfg entry at all.
+ broken entry instead of resulting in no bootable grub.cfg entry at all.
  
  Note, that I am using Linux Mint and I can report there instead. But my
- impression is, that this is an upstream (=Ubuntu) bug or annoyance.
+ impression is, that this is an upstream (=Ubuntu) bug or annoyance and
+ fixing it would help Ubuntu users as well.
  
  # lsb_release -rd
  No LSB modules are available.
  Description:  Linux Mint 22.3
  Release:      22.3
  
  # apt-cache policy grub-common
  grub-common:
-   Installiert:           2.12-1ubuntu7.3
-   Installationskandidat: 2.12-1ubuntu7.3
-   Versionstabelle:
-  *** 2.12-1ubuntu7.3 500
-         500 http://ftp.hosteurope.de/mirror/archive.ubuntu.com 
noble-updates/main amd64 Packages
-         100 /var/lib/dpkg/status
-      2.12-1ubuntu7 500
-         500 http://ftp.hosteurope.de/mirror/archive.ubuntu.com noble/main 
amd64 Packages
+   Installiert:           2.12-1ubuntu7.3
+   Installationskandidat: 2.12-1ubuntu7.3
+   Versionstabelle:
+  *** 2.12-1ubuntu7.3 500
+         500 http://ftp.hosteurope.de/mirror/archive.ubuntu.com 
noble-updates/main amd64 Packages
+         100 /var/lib/dpkg/status
+      2.12-1ubuntu7 500
+         500 http://ftp.hosteurope.de/mirror/archive.ubuntu.com noble/main 
amd64 Packages
  
  Expected to happen (at the end of kernel update): a new grub.cfg file
  gets generated, which contains entries for all installed bootable
  kernels.
  
  happened instead: the new grub.cfg only contains entry for UEFI firmware
  settings, bot no boot entry for any of the installed kernels. This
  happened only at the moment of the post-installation script. A later
  call to grub-mkconfig produced a correct grub.cfg.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2153118

Title:
  grub2 10_linux_zfs fails with "invalid date: @"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/2153118/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to