detly Asked: 2014-08-27 19:03:08 +0800 CST2014-08-27 19:03:08 +0800 CST 2014-08-27 19:03:08 +0800 CST 如何使用安装程序手动引导进入未安装 GRUB 的系统? 772 为了进行实验,我正在尝试记录在 Mac Mini 上进行 14.04 纯 EFI 启动的最小过程。 这包括将基本系统(使用 Mac 风格的服务器安装 ISO)安装到硬盘驱动器,而不是将 GRUB 安装到 MBR。GRUB安装到硬盘的第一个分区,但是直到我手动设置EFI启动分区,系统才会无法启动。 有没有办法使用 USB 安装程序上的引导加载程序手动引导到已安装的系统?我可以访问安装程序上的“高级选项”(即引导加载程序命令行),但我不知道它是什么引导加载程序,所以我找不到它的完整文档。 14.04 1 个回答 Voted Best Answer detly 2014-08-30T06:05:09+08:002014-08-30T06:05:09+08:00 不要使用特定于 Mac 的安装程序。使用普通(服务器、桌面)安装程序,使用所有默认设置安装系统(避免 LVM 除外),然后重新启动。 再次启动 USB 安装程序,但当您看到 GRUB 菜单时,按C调出 GRUB 控制台。 查找安装的驱动器 在 GRUB 控制台,执行 grub> ls (memdisk) (hd0) (hd0,msdos) (hd1) (hd2) (hd2,gpt3) (hd2,gpt2) (hd2,gpt1) 您可能不会得到与此完全相同的结果,但您会有一些选择。你想寻找你的新安装,而不是安装程序/实时系统。我建议找到一个包含新用户主目录的分区: grub> ls (hd2,gpt2)/home jason/ 继续尝试这种模式,直到找到为止。 查找安装的引导分区 如果您知道您已将所有内容安装到一个分区,那么您就完成了 — 只需使用最后一步的结果,即(hdX,gptY). 如果您没有,或者您不确定,请保留该hdX部分,但通过所有gptY选项寻找/boot/grub目录: grub> ls (hd2,gpt1)/boot/grub error: file `/boot/grub' not found. 不,不是那个。 grub> ls (hd2,gpt2)/boot/grub unicode.pf2 [...] grub.cfg 找到了! 现在您想将其设置为您的根以执行更多命令: grub> set root=(hd2,gpt2) 弄清楚启动命令 我发现正确启动的唯一方法是使用驱动器的 UUID(即没有带/dev/sdaX! 的快捷方式)——让我们开始吧: grub> ls -l (hd2,gpt2) Partition hd2,gpt2: Filesystem type ext* [...snip...] UUID e86c20b9-83e1-447d-a3be-d1ddaad6c4c6 - Partition start at [...] 注意 UUID 字符串!你的会有所不同。现在告诉 GRUB Linux 在哪里: grub> linux /boot/vmlinuz[...tab here!...].efi.signed root=UUID=<the UUID from above> GRUB 控制台可以tab完成,所以如果您只输入vmlinuz部分并点击tab,然后.再次点击tab...您将不必输入整个文件名。但一定要确保.efi.signed钻头在那里!是的,您必须输入整个 UUID。 现在设置initrd(初始 RAM 磁盘): grub> initrd /boot/initrd[...tab here!...] 开机 类型: grub> boot 您应该会发现自己已启动到您的安装中! 我不是 GRUB 向导,所以我欢迎任何关于如何减少它的提示。尤其是UUID部分,有点令人发指。
不要使用特定于 Mac 的安装程序。使用普通(服务器、桌面)安装程序,使用所有默认设置安装系统(避免 LVM 除外),然后重新启动。
再次启动 USB 安装程序,但当您看到 GRUB 菜单时,按C调出 GRUB 控制台。
查找安装的驱动器
在 GRUB 控制台,执行
您可能不会得到与此完全相同的结果,但您会有一些选择。你想寻找你的新安装,而不是安装程序/实时系统。我建议找到一个包含新用户主目录的分区:
继续尝试这种模式,直到找到为止。
查找安装的引导分区
如果您知道您已将所有内容安装到一个分区,那么您就完成了 — 只需使用最后一步的结果,即
(hdX,gptY)
. 如果您没有,或者您不确定,请保留该hdX
部分,但通过所有gptY
选项寻找/boot/grub
目录:不,不是那个。
找到了!
现在您想将其设置为您的根以执行更多命令:
弄清楚启动命令
我发现正确启动的唯一方法是使用驱动器的 UUID(即没有带
/dev/sdaX
! 的快捷方式)——让我们开始吧:注意 UUID 字符串!你的会有所不同。现在告诉 GRUB Linux 在哪里:
GRUB 控制台可以tab完成,所以如果您只输入
vmlinuz
部分并点击tab,然后.再次点击tab...您将不必输入整个文件名。但一定要确保.efi.signed
钻头在那里!是的,您必须输入整个 UUID。现在设置
initrd
(初始 RAM 磁盘):开机
类型:
您应该会发现自己已启动到您的安装中!
我不是 GRUB 向导,所以我欢迎任何关于如何减少它的提示。尤其是UUID部分,有点令人发指。