一些老旧的电脑BIOS无法识别NVMe硬盘,通过PCIe扩展槽插入的NVMe硬盘在操作系统引导后可以使用,但不能直接从NVMe盘启动。
解决这个问题一个比较优雅的方法,是直接将NVMe启动代码加入到BIOS中,然而这个方法实现难度较大。我的GA-N3150M-D3P,尝试将NVMe代码加入BIOS,Gigabyte的BIOS写入程序会因为校验不对,拒绝刷入BIOS。强行刷BIOS对一般人来说难度有点大。
如果主板支持UEFI启动,有简单的方法,可以达到跟直接从NVMe盘启动几乎一样的效果。网上有不少教程,基本都是采用Clover或者OpenCore实现,但是这两个主要为黑苹果设计的软件,功能复杂,学习难度较大,只是为了从NVMe盘启动,有点小题大做了。我采用rEFInd Boot Manager,可以达到同样的效果,更简单直接。
电脑除了PCIe插槽的NVMe,还需要有一块SATA的硬盘。在SATA硬盘上建立一个EFI分区,不用很大,200M就可以(安装黑苹果通常建议200M)。从前面的链接下载rEFInd,配置好,安装到这个EFI分区。可以用rEFInd启动多个操作系统。直接使用rEFInd还是不能识别NVMe硬盘的,需要安装驱动程序。rENInd通常安装在EFI->refind文件夹下,驱动安装在EFI->refind->drivers_x64中(这个文件夹名称取决于电脑的架构)。rEFInd启动的时候会自动从这个驱动文件夹中读取驱动加载,但直接下载的驱动文件夹中没有NVMe的驱动,还需要手动添加上去。我用的NVMe驱动文件名叫NvmExpressDxe.efi,是从OpenCore中拷贝出来的。从Github下载OpenCore,在X64->EFI->OC->Drivers文件夹中拷贝出来NVMe的驱动。有了驱动,rEFInd就可以引导NVMe硬盘上的系统了。具体rEFInd的使用细节可以参考官方网站。