Date
May. 7th, 2026
 
2026年五月初七

Post: Chroot to Reinstall GRUB

Chroot to Reinstall GRUB

Published 18:05 May 07, 2025.

Created by @ezra. Categorized in #UNIX/Linux, and tagged as #UNIX/Linux.

Source format: Markdown

Doc URL: https://hotodogo.com/doc/chroot-to-reinstall-grub/

Table of Content

mount

ext4

sudo mkdir -p /mnt/chroot
sudo mount /dev/sdb3 /mnt/chroot

sudo mkdir -p /mnt/chroot/boot
sudo mount /dev/sdb2 /mnt/chroot/boot/efi

sudo mkdir -p /mnt/chroot/boot/efi
sudo mount /dev/sdb1 /mnt/chroot/boot/efi

for i in /sys /proc /run /dev; do sudo mount --rbind "$i" "/mnt/chroot$i"; done

sudo chroot /mnt/chroot

btrfs

Check subvolume IDs:

sudo mkdir -p /mnt/chroot
sudo mount /dev/sdb3 /mnt/chroot

sudo btrfs subvolume list /mnt/chroot

You should get something like this:

ID 256 gen 1558 top level 5 path root
ID 257 gen 1558 top level 5 path home

What we need here is root, now continue:

# sudo mkdir -p /mnt/chroot
sudo mount -o subvol=root /dev/sdb3 /mnt/chroot

sudo mkdir -p /mnt/chroot/boot
sudo mount /dev/sdb2 /mnt/chroot/boot/efi

sudo mkdir -p /mnt/chroot/boot/efi
sudo mount /dev/sdb1 /mnt/chroot/boot/efi

for i in /sys /proc /run /dev; do sudo mount --rbind "$i" "/mnt/chroot$i"; done

sudo chroot /mnt/chroot

chroot

Inside chroot:

debian/ubuntu:

grub-install --efi-directory=/boot/efi --bootloader-id=YOUR_BOOTLOADER_ID --recheck
update-grub
exit

fedora:

dnf install grub2-efi grub2-efi-modules shim
dnf install grub2-efi-x64 grub2-efi-x64-modules shim-x64
grub2-install --efi-directory=/boot/efi --bootloader-id=YOUR_BOOTLOADER_ID --recheck
grub2-mkconfig -o "$(readlink -e /etc/grub2.conf)"
exit

umount

for i in /sys /proc /run /dev; do sudo umount "/mnt/chroot$i"; done
sudo umount "/mnt/chroot/boot/efi"
sudo umount "/mnt/chroot/boot"
sudo umount "/mnt/chroot"
Pinned Message
HOTODOGO
The Founder and CEO of Infeca Technology.
Developer, Designer, Blogger.
Big fan of Apple, Love of colour.
Feel free to contact me.
反曲点科技创始人和首席执行官。
开发、设计与写作皆为所长。
热爱苹果、钟情色彩。
随时恭候 垂询