报错代码:
/grub2/i386-pc/normoal.mod not found gpt
解决方法:
步骤目录:
步骤一:挂载官方镜像
步骤二:登录拯救模式
2.1 进入拯救模式
2.2 登录拯救模式
步骤三:在救援模式确定系统的根目录分区
步骤四:在救援模式将系统的分区挂载到救援模式的 /mnt 目录
4.1 在救援模式将系统的根分区挂载到救援模式的 /mnt 目录
4.2 在救援模式将救援模式的 /dev 目录关联到救援模式的 /mnt/dev 目录
4.3 在救援模式将救援模式的 /proc 目录关联到救援模式的 /mnt/proc 目录
4.4 在救援模式将救援模式的 /sys 目录关联到救援模式的 /mnt/sys 目录
4.5 在救援模式将救援模式的 /run 目录关联到救援模式的 /mnt/run 目录
步骤五:将当前的根目录从救援模式的根目录切换到系统的根目录
5.1 将当前的根目录从救援模式的根目录切换到系统的根目录
5.2 在系统模式下确认当前的挂载状态
5.3 在系统模式下确认当前根目录下的目录
步骤六:在系统模式下修复 grub2
步骤七:重启系统
具体的操作步骤:
步骤一:挂载官方镜像
(步骤略)
步骤二:登录拯救模式
2.1 进入拯救模式
(步骤略)
2.2 登录拯救模式
rescue login:root
步骤三:在救援模式确定系统的根目录分区
(步骤略)
(
补充:
1) 物理分区可以使用 lsblk 命令和 fdisk -l 命令辅助确定
2) 逻辑分区还可以可以使用 pvs 命令和 lvs 命令辅助确定
)
步骤四:在救援模式将系统的分区挂载到救援模式的 /mnt 目录
4.1 在救援模式将系统的根分区挂载到救援模式的 /mnt 目录
tty1:rescue:~ # mount <root spartition> /mnt
(
补充:
1) 如果是物理分区,系统的根分区就在救援模式的 /dev/ 目录里,例如救援模式的 /dev/sda1
2) 如果是逻辑分区,Rocky Linux & RHEL 的系统根分区就是救援模式里的 /dev/<volume group>/<logical volume> 例如救援模式里的 /dev/vg/lv,openSUSE & SUSE 的系统根分区就是救援模式里的 /dev/mapper/<volume group>-<logical volume> 例如救援模式里的 /dev/mapper/vg-lv
)
4.2 在救援模式将救援模式的 /dev 目录关联到救援模式的 /mnt/dev 目录
tty1:rescue:~ # mount --bind /dev /mnt/dev
(补充:此时所有对救援模式的 /mnt/dev 目录的访问都会变成对救援模式的 /dev 目录的访问)
4.3 在救援模式将救援模式的 /proc 目录关联到救援模式的 /mnt/proc 目录
tty1:rescue:~ # mount --bind /proc /mnt/proc
(补充:此时所有对救援模式的 /mnt/proc 目录的访问都会变成对救援模式的 /proc 目录的访问)
4.4 在救援模式将救援模式的 /sys 目录关联到救援模式的 /mnt/sys 目录
tty1:rescue:~ # mount --bind /sys /mnt/sys
(补充:此时所有对救援模式的 /mnt/sys 目录的访问都会变成对救援模式的 /sys 目录的访问)
4.5 在救援模式将救援模式的 /run 目录关联到救援模式的 /mnt/run 目录
tty1:rescue:~ # mount --bind /run /mnt/run
(补充:此时所有对救援模式的 /mnt/run 目录的访问都会变成对救援模式的 /run 目录的访问)
步骤五:将当前的根目录从救援模式的根目录切换到系统的根目录
5.1 将当前的根目录从救援模式的根目录切换到系统的根目录
tty1:rescue:~ /bash # chroot /mnt
(补充:这里以 /mnt 作为系统根目录为例)
5.2 在系统模式下确认当前的挂载状态
bash-4.3# mount -a
5.3 在系统模式下确认当前根目录下的目录
bash-4.3# ls
bin boot dev home lib lib64 mnt opt proc root run sbin selinux srv sys tmp usr var
步骤六:在系统模式下修复 grub2
bash-4.3# grub2-install /dev/sda
步骤七:重启系统
bash-4.3# reboot