Error: unknown filesystem. grub rescue

With the info from my previous reply we can conclude:

  1. We only have to consider these SSD partitions from your current system:
    • /dev/nvme0n1p2 for the kernel, initrd and as ESP.
    • /dev/nvme0n1p11 for your root filesystem
  2. All the EFI-type partitions on the SSD should be merged into /dev/nvme0n1p1 because that is the only one that an UEFI-BIOS will consider by default.
    (It only considers the first ESP per device)
    See: The UEFI-Bios section of my tutorial.
  3. All the Micro$@$ specific partitions on the SSD can be removed because we wont use that OS…
    This will gain us at least 529*3= 1587MB [±1.5GB] plus possibly 3*100MB from the related EFI partitions, totaling ±1.8GB.
  4. To accomplish these tasks we should be using a LIVE-USB to boot.
    That way we can backup stuff from one place to another on the SSD without crippling the system we work on.

Things to do:

  1. Temporarily mount /dev/nvme0n1p11 somewhere so we can modify it as needed.
  2. Temporarily mount all the ESP’s on the SSD in turn, to copy their contents into a sub-dir of (1).
  3. Delete all partitions on the SSD EXCEPT /dev/nvme0n1p11 which will hold our current system and EFI backups.
  4. Create a new /dev/nvme0n1p1 as ESP partition, with enough space to hold the contents of the EFI backups in (2)
    This needs to be a FAT32 partition.
  5. Create a new /dev/nvme0n1p2 as root filesystem partition to hold everything from /dev/nvme0n1p11 minus the EFI backups.
    I would suggest formatting this partition as a BTRFS filesystem as it will be easier to expand.
    But that is your own choice…
  6. Change the fstab of the new system in /dev/nvme0n1p2 to use:
    • /dev/nvme0n1p1 as /boot/efi
    • /dev/nvme0n1p2 as root filesystem /.
  7. Configure and use sd-boot as bootloader in /dev/nvme0n1p1 to help initial booting into the new system because it is way easier to configure as Grub until we are able to regenerate the Grub config.
  8. Change the UEFI-BIOS boot entry, to use /dev/nvme0n1p1 as boot partition, using efibootmgr and the bootloader to use.
  9. Chroot into /dev/nvme0n1p1 and regenerate the initrd so the above changes will be used while booting.
  10. Try to boot from (8) and fix eventual problems that went wrong.
  11. If all went “Okay” we can delete /dev/nvme0n1p11 and enlarge /dev/nvme0n1p2 to use all available space left on the SSD.

As you can see this is a hard road to walk and is your choice if you don’t want to start with a fresh install after resetting the SSD’s partitioning.
:vulcan_salute:

1 Like