rEFInd 非常适合双启动 Ubuntu(主)和 OSX(次要)。但有时我会搞砸一些事情,我会怀念 Grub2 选项,即启动到“恢复模式”,然后进入可以访问我的 Ubuntu 系统的 root shell。
在使用 iMac 时,有没有办法在 rEFInd 中做类似的事情(我提到这一点是因为这似乎意味着该 shell 无法与 Mac 很好地兼容)?我尝试调用该行shell
上的选项,但 rEFInd 中没有任何内容显示。showtools
local.conf,
我也尝试使用 rEFInd 的Insert or F2 for more options
选项,但那里也没有 shell 选项。
笔记:
使用 Mac 时,要访问 rEFInd Insert or F2 for more options
,您需要按下fn key
(即Insert key
Windows 键盘上的 )和同时显示f2 key
。这将调出启动选项,这些选项在 Linux 系统上设置于/boot/refind_linux.conf
。
答案1
首先,要明白在启动 Linux 时,各种选项都会传递给内核以修改其行为方式。在大多数情况下,需要传递一个root=
选项来标识根 ( /
) 文件系统所在的位置。传递其他选项也很常见,尽管细节因发行版和安装而异。启动管理器(包括 GRUB 和 rEFInd)提供菜单,使您可以通过从菜单中选择来传递不同的选项集合。为简单起见,菜单很少显示选项的详细信息;相反,它们用名称总结选项,如“正常启动 4.2.0”或“在恢复模式下启动 4.2.3”。您必须检查引导加载程序的配置文件才能解读任何给定菜单项传递的选项。因此,GRUB“恢复模式”选项本身并不是 GRUB 功能;它只是一个使用额外(和/或省略)选项启动 Linux 的菜单项。
我刚刚检查了我正在运行的(预发布)Xenial 安装的 GRUB 条目,其“恢复”条目除了选项外还指定了root=
。ro recovery nomodeset
要在 rEFInd 中复制此条目,您可以执行以下两项操作之一:
- 您可以按 F2 或 Insert两次进入引导选项编辑器,并适当修改选项。您必须确保
ro recovery nomodeset
存在。根据配置,您可能还想删除选项quiet splash
。但您不应该修改root=
选项或initrd=
选项。 - 您可以编辑
/boot/refind_linux.conf
并创建一个新条目(或修改现有条目),对启动选项进行同等更改。当您按 F2 或 Insert 时,此条目将变为可用一次在 rEFInd 菜单。
第一种方法适用于任何使用 rEFInd 并直接启动 Linux 内核的系统(除非已在 中禁用相关功能refind.conf
);但手动输入选项很麻烦。如果您想频繁进入此模式,第二种方法更方便。
不幸的是,不同发行版的恢复功能差异很大,这就是为什么这不是 rEFInd 标准配置的一部分。rEFInd做在其默认菜单中提供“单用户”选项。此选项传递single
给内核,内核告诉它启动到单用户模式。这比 Ubuntu 特定的“恢复模式”更标准,但我怀疑它是否做同样的事情。(老实说,我从未使用过 Ubuntu 的“恢复模式”。)
哦,rEFInd 的 shell 功能会启动 EFI shell;但该 shell 是一个单独的 EFI 二进制文件,您必须自行安装。EFI shell 使您能够运行任意 EFI 程序、编辑文件等。
顺便说一句,你提到的键盘问题代表了一些Mac(以及其他一些计算机)的键盘;某些键盘上的功能键兼作其他用途,例如控制音量、屏幕亮度等。此类键盘有一个“Fn”键,用于在用作传统功能键和控制媒体(或其他)之间切换。这种设置在笔记本电脑上最常见,但我见过一些 USB 键盘也有类似的设置。在某些键盘上,功能键是默认设置,而其他时候,媒体控制功能是默认设置。