Catalogue
机器上安装有两个linux 但是由archlinux 自动生成的grub.cfg,无法引导另外一个linux,于是趁着这个机会学习一下手动引导grub。
手动引导安装sway的linux,这个系统是ext4文件系统,使用GUID磁盘分区表(GUID Partition Table,缩写:GPT)。
进入到grub 引导菜单的时候,按e进入编辑界面,再按f2 进入黑呼呼的命令行。先运行 ls -al
查看一下系统的硬盘分区。
对比一下知道自己安装sway的linux 根分区是在 HD0,GPT6
上面,没有单独的boot 分区,于是按照arch wiki
直接这样输入:
1 | grub> set root=(hd0,gpt6) |
这样,这个linux就启动啦
另外一个系统使用btrfs文件系统,安装在一块nvme_ssd上面
还是先 ls -al
查看详细的磁盘分区情况,可以看到系统的根分区是安装在 hd2,gpt3
,boot 分区是单独的 hd2,gpt1
fat 分区, 于是这样引导
1 | grub> set root=(hd2,gpt3) |
如果不使用 UUID
引导的话,可以使用 cat
查看 fstab文件, 第二行设置 root 的地方修改一下
1 | cat (hd2,gpt3)/@/etc/fstab |
无法引导的原因是这一行
1 | #grub> initrd /boot/initramfs-linux.img |
变成了
1 | grub> initrd /boot/intel-ucode.img |
改成上面那个就好了