When you move or resize partitions, GParted may change partition UUIDs. The bootloader (GRUB) and /etc/fstab reference partitions by UUID, so those references become invalid.
- Boot from a live USB of your Linux distribution
lsblk -o NAME,SIZE,FSTYPE,UUID,MOUNTPOINT,LABEL
sudo fdisk -l /dev/sdX # or nvme0n1, etc.Note the current UUIDs and identify your root partition.
ls /sys/firmware/efi && echo "UEFI" || echo "BIOS"If you have a GPT partition table with BIOS boot, GRUB needs a small BIOS boot partition (~1-2MB):
sudo parted /dev/sdX mkpart biosboot 34s 4096s
sudo parted /dev/sdX set N bios_grub on # N = new partition numbersudo mkdir -p /mnt/root
sudo mount /dev/sdXn /mnt/root # your root partitionCompare UUIDs in fstab against actual UUIDs from lsblk. Update any mismatches:
cat /mnt/root/etc/fstab
sudo nano /mnt/root/etc/fstab # fix any outdated UUIDssudo mount /dev/sdXm /mnt/root/home # if separate home partition
sudo mount --bind /dev /mnt/root/dev
sudo mount --bind /dev/pts /mnt/root/dev/pts
sudo mount --bind /proc /mnt/root/proc
sudo mount --bind /sys /mnt/root/sys
sudo mount --bind /run /mnt/root/runsudo chroot /mnt/root grub-install /dev/sdX # disk, not partition
sudo chroot /mnt/root update-grubgrep "root=UUID" /mnt/root/boot/grub/grub.cfg | head -1 # verify correct UUID
sudo umount -R /mnt/root
sudo rebootRemove live USB when prompted.