0

I needed to free up some space in bpool to add the latest patches to my Ubuntu 22.04 system running ZFS. I tried to ZFS destroy the oldest snapshot, and upon reboot, booting failed with the following:

Booting a command list

error: no such device: 9a3acf1a88182eec.
Loading Linux 6.2.0-34-generic ...
error: file '/BOOT/ubuntu_uad4uk@/vmlinuz-6.2.0-34-generic' not found
Loading initial ramdisk ...
error: you need to load the kernel first.

Press any key to continue...

How do I fix my system without destroying my data and rpool? What is the device 9a3acf1a88182eec? I am a long-time Unix (Solaris) user, but not very familiar with Ubuntu admin or grub.

I originally installed from the live disk, and it created the bpool and rpool zfs pools, and booted from an EFI partition on a nvram disk.

I have tried booting Ubuntu Live from a USB and can import, mount, and look at the bpool ZFS. All of the kernels I had are there, including all the files/directories that were visible from the bpool mounted on the /boot directory before the problem. I can also mount the EFI partition and see the grub stuff, so I think all of the files I had before are not missing.

The grub entry that gave the above message is:

setparams 'Ubuntu 22.04.3 LTS, with Linux 6.2.0-34-generic'  
    recordfail  
    load_video  
    gfxmode ${linux_gfx_mode}  
    insmod gzio  
    if [ "${grub_platform}" = xen ] ; then insmod xzio; insmod lzopio; fi  
    insmod part_gpt  
    insmod zfs  
    search --no-floppy --fs-uuid --set=root 9a3acf1a88182eec  
    echo Loading Linux 6.2.0-34-generic ...  
    linux "/BOOT/ubuntu_uad4uk@/vmlinuz-6.2.0-34-generic" root=ZFS="rpool/ROOT/ubuntu_ad4uk" l_iommu=on,igfx_off quiet splash ${vt_handoff}  
    echo 'Loading initial ramdisk ...'  
    initrd "/BOOT/ubuntu_uad4uk@/initrd.img-6.2.0-34-generic"  

I have tried to follow the suggestion of @Daniel T, and update-grub gives

/# update-grub  
Sourcing file `/etc/default/grub'  
Sourcing file `/etc/default/grub.d/init-select.cfg'  
Generating grub configuration file ...  
grub-probe: error: compression algorithm inherit not supported
.  
Memtest86+ needs a 16-bit boot, that is not available on EFI, exiting  
Warning: os-prober will not be executed to detect other bootable partitions.  
Systems on them will not be added to the GRUB boot configuration.  
Check GRUB_DISABLE_OS_PROBER documentation entry.  
Adding boot menu entry for UEFI Firmware Settings ...  
done

When I run grub-install, I get:

/# grub-install --target=x86_64-efi --efi-directory=/boot/efi       --bootloader-id=ubuntu --recheck —no-floppy

Installing for x86_64-efi platform.
grub-install: error: compression algorithm inherit not supported

stumblebee
  • 3,547
  • You may boot Ubuntu from LiveCD or LiveUSB to seek what was the problem withour destroying your data. You would want to see your grub.cfg . – user-id-14900042 Feb 11 '24 at 02:19
  • 2
  • What you did to ZFS might have changed around the partition numbers. Reinstalling GRUB from LiveCD should help. – Daniel T Feb 20 '24 at 20:50
  • @Daniel T I tried to set up my /mnt root filesystem as instructed in the grub repair answer, modifying for the ZFS bpool and rpool I have. I was able to mount the / ZFS filesystem in the rpool on /mnt and the bpool ZFS filesystem on /mnt/boot. When I tried to mount /mnt/var and /mnt/usr from the rpool ZFS filesystems I got a "canmount is off" error. I set canmount to "on" and was able to mount, but the filesystems show no files and update-grub fails. I am certain that the data on those filesystems was not deleted. How do I reinstall GRUB from a LiveUSB? – Scott Budge Feb 23 '24 at 17:41

0 Answers0