前言
因为之前家里主机安装了双系统(Windowsh和MacOS)在使用OpenCore作引导,自己又想多了解一些Linux类的系统,所以拿之前退役的一个主机单独装了一台Ubuntu。但是两台主机又太占地方而且也不环保:)看到网上有人使用OpenCore作引导安装了Windows,MacOS,Ubuntu三系统,所以也想自己折腾试试。因为之前已经安装好了Windows和MacOS所以这里只会涉及安装Ubuntu并添加Ubuntu进入OpenCore引导的过程。如果想要了解更多关于主机MacOS系统安装和Windows系统安装的过程,请分别谷歌/百度一下或使用钞能力:)
环境准备
- 三个独立的硬盘(SSD或HDD都可以),分别用来安装三个不同的系统Windows,MacOS,Ubuntu
- 一个大小足够放下用来制作Ubuntu安装镜像的U盘(我安装的是Ubuntu 22.04 LTS,镜像大小3.83 GB)
- Ubuntu镜像文件
- balenaEtcher用来给U盘刷入Ubuntu镜像,镜像制作软件可根据个人喜好来选择
- OpenCore Configurator(可以自行下载或从这里下载)
- 确保在你的MacOS系统的EFI分区里 > EFI > OC > Tools下存在OpenShell.efi文件,没有的可以前往OpenCore官网抄作业或直接前往OpenCore GitHub项目地址下载
- 确保在你的MacOS系统的EFI分区里 > EFI > OC > Drivers下存在OpenLinuxBoot.efi文件
OpenCore now includes a driver
OpenLinuxBoot.efi
which should make dualbooting with Linux much easier.
⚠️注意:分别安装三个系统时,请确保你的电脑上只连接了当前想安装系统的硬盘,并移除其他所有硬盘。比如:我现在在安装Windows,所以现在电脑上只连接要安装Windows的这一个硬盘,其他所有硬盘全部断开连接。
步骤
- 插入U盘,打开balenaEtcher,选择下载好的Ubuntu镜像文件,选择插入的U盘,制作Ubuntu安装U盘。
- 打开OpenCore Configurator,选择工具 > 挂载EFI
挂载MacOS系统所在硬盘的EFI分区,这里需要输入管理员密码,并打开分区
选择EFI > OC > config.plist,右键打开方式选择在OpenCore Configurator中打开
- 选择Misc-其他设置 > Tools-添加附加工具,勾选实际路径,辅助,是否启用,取消隐藏辅助条目。保存!!!
连接想要安装Ubuntu的硬盘,移除其他所有硬盘。此时电脑上应该只连接一个硬盘。
启动电脑,选择刚刚制作好的Ubuntu安装U盘 > Try and Install Ubuntu,按照步骤一步一步来完成安装即可,进入Ubuntu桌面后即完成了Ubuntu系统的安装。(Ubuntu系统的详细安装步骤可以谷歌/百度一下)
这时我们应有三个硬盘,分别装有安装好的Windows系统,安装好的MacOS系统和安装好的Ubuntu系统。
- 连接三个已安装好系统的硬盘,启动电脑,这时在OpenCore启动选择中我们应该可以看到刚刚设置的
OpenShell.efi
已经可见并可以选择了,选择OpenShell。
- 这时你应该可以看到如下界面,其中以FS开头的就是所有连接到系统的驱动器的分区,我们现在需要确定哪个是Linux(Ubuntu)的EFI分区。
输入如下代码挨个进入分区查找,直到看见EFI文件夹时
1
2
3
4
5
6
7
8# 进入FS0分区
FS0:
# 列出该分区下所有文件
dir
# 进入EFI文件夹确认是哪个分区
cd EFI
dir
# 这里出现了ubuntu代表我们找到了Ubuntu的EFI分区每个人的结果都不一样,我是在FS0找到的我的Linux(Ubuntu)的EFI分区。FS2是我的Windows的EFI分区。
回到你找到Ubuntu的EFI分区的根目录
1 | # 向上直到你看到前面只显示FSn:\> (这里n是你的驱动器分区) |
将地址信息导出到txt文件,自己记录下该驱动器号(比如FS0)
1 | map > map-table-linux.txt |
退出UEFI Shell
1 | quit |
- 重新启动系统并选择MacOS启动,打开OpenCore Configrator,挂载Linux(Ubuntu)的EFI分区并打开。
- 这时我们可以看到在该分区下会有两个文件,一个EFI文件夹,一个我们刚刚创建的地址信息
map-table-linux.txt
打开它,查找我们在上面找到的驱动器号(FS0),复制
PciRoot
行,并粘贴到一个新文本文件中,在它后面添加1
/\EFI\ubuntu\grubx64.efi
这时在我们新建的文本文档中的完整路径应该是
1
PciRoot(0x0)/Pci(0x17,0x0)/Sata(0x1,0xFFFF,0x0)/HD(1,GPT,7420048F-62D2-48FE-A3D4-2669C8FDB053,0x800,0x100000) /\EFI\ubuntu\grubx64.efi
打开OpenCore Configurator,挂载MacOS的EFI分区,打开分区进入目录EFI > OC > config.plist,右键打开方式使用OpenCore Configurator
config.plist
。选择Misc-其他设置,选择Entries-自定义条目,右下角新建条目,复制我们上面记好的完整路径到新建条目的路径中,填写名称Ubuntu(或者你自己安装的系统名称),风格选择Auto,勾选启用条目,保存!!!
- (选做)将OpenShell选项继续隐藏。反向操作第5步。去到Tools-添加附加工具 > 取消勾选实际路径,勾选隐藏辅助条目,保存!!!这样当我们重新启动之后再去到系统选择界面时,就会发现UEFI Shell的选项已经被隐藏了。
最后不要忘记卸载掉我们之前挂载的所有EFI分区哦。
好了,到此就大功告成啦!喜欢折腾的同学可以去试试啦~
总结
多记录,多查询,多保存!!!
Reference
About this Post
This post is written by Andy, licensed under CC BY-NC 4.0.