If your Pop!_OS system drops into a kernel panic after an interrupted update, you can recover the system safely using the steps below.
For background on why this happens and the engineering mindset behind Linux recovery, see the companion blog post.
Note
These instructions assume:
- LUKS-encrypted root partition
- EFI boot partition
- Pop!_OS recovery mode is available
1. Boot into Recovery
From the boot menu, select:
Advanced Options → Recovery Mode
This lands you in a minimal rescue shell with root access.
2. Identify Your Block Devices
lsblkYou’ll see output like:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme0n1 259:0 0 953.9G 0 disk
├─nvme0n1p1 259:1 0 512M 0 part # EFI
├─nvme0n1p2 259:2 0 4G 0 part # recovery
└─nvme0n1p3 259:3 0 949.4G 0 part # encrypted rootIdentify:
nvme0n1p1→ EFI partition (usually 512MB, FAT32)nvme0n1p3(or similar) → encrypted root filesystem
Tip
Your device names may differ. Use
lsblk -fto see filesystem types and labels.
3. Check Your crypttab Entry
cat /etc/crypttabConfirm the expected LUKS mapping name. Pop!_OS typically uses cryptdata.
4. Unlock the Encrypted Volume
cryptsetup luksOpen /dev/nvme0n1p3 cryptdataEnter your LUKS passphrase when prompted. Replace nvme0n1p3 with your actual encrypted partition.
5. Mount the Root Filesystem
mount /dev/mapper/cryptdata /mnt/rootThen mount the EFI partition:
mount /dev/nvme0n1p1 /mnt/root/boot/efi6. Bind Necessary System Directories
These bind mounts give the chroot environment access to essential kernel interfaces:
mount --bind /dev /mnt/root/dev
mount --bind /proc /mnt/root/proc
mount --bind /sys /mnt/root/sys7. Enter the Chroot Environment
chroot /mnt/rootYou’re now operating inside your actual system, not the recovery environment.
8. Update and Repair the System
Update package lists and complete any interrupted upgrades:
apt update
apt full-upgradeRebuild the initramfs for all installed kernels:
update-initramfs -c -k allRebuild GRUB bootloader configuration:
update-grub9. Exit and Reboot
exit
rebootYour system should now boot normally.
Troubleshooting
”Cannot open root device” after reboot
The crypttab or GRUB configuration may reference the wrong UUID. Inside the chroot:
blkid /dev/nvme0n1p3
cat /etc/crypttabEnsure the UUIDs match. If not, update /etc/crypttab and run update-initramfs -c -k all again.
”No such file or directory” when mounting
Double-check your partition names with lsblk. NVMe drives use nvme0n1pX naming; SATA drives use sdaX.
GRUB menu doesn’t appear
Hold Shift during boot (BIOS) or press Esc repeatedly (UEFI) to force the GRUB menu to appear.