centos7 把/boot 分区从xfs格式转换为ext3格式以及grub2引导pbr

0x0. 前提条件

假设/dev/sda6 格式为xfs,挂载到 /boot.
因为grub安装到pbr的分区格式,要求不能为xfs,所以需要转换格式.

一. 转换格式

现在想把grub2安装到/boot,结果因为xfs格式不支持,所以决定把/boot分区重新格式化为ext3格式。
步骤如下:

  1. 从安装光盘启动到rescue模式
  2. chroot /mnt/sysimage
  3. 使用 cp -a命令备份/boot数据到其他分区目录
  4. umount /dev/sda6
  5. mkfs.ext3 /dev/sda6
  6. mount /dev/sda6 /boot
  7. 使用cp -a恢复数据到/boot
  8. blkid /dev/sda6 发现UUID已经改变
  9. 修改/etc/fstab里面/dev/sda6(/boot)分区对应的UUID为新的UUID
  10. 使用grub2-mkconfig -o /boot/grub2/grub.cfg从新生成grub.cfg
  11. exit && reboot

重启后一切正常。

二. 安装grub到pbr,目标/boot

现在,可以使用grub2-install –force /dev/sda6 把grub2安装到/boot这个分区.
安装后使用chattr +i /boot/grub2/i386-pc/core.img命令固定core.img这个文件。

三. mbr链式加载pbr

现在,可以玩mbr grub2的链式启动pbr grub2。

1) 开机进入grub命令行

2) 输入命令

  • 方法一

    chainloader (hd0,msdos6)+1
    boot
    
  • 方法二

    multiboot  (hd0,msdos6)/grub2/i386-pc/core.img
    boot
    

你可能感兴趣的:(DOC)