我有一个当前使用的 Linux 系统和一些其他分区来测试不同的其他发行版。但是我安装这些系统的方式总是相同的,导致 GRUB 引导列表被更改,而 GRUB 本身似乎安装在最后安装的系统中。也就是说,我可以在上次安装的系统中使用 Grub Customizer 编辑 GRUB 列表,而使用安装在其他系统中的 Grub Customizer 所做的任何更改都不会影响 GRUB 引导列表。为了将 GRUB 恢复到我的主系统中(然后能够从那里使用 Grub Customizer 编辑 GRUB),我在实时 USB 会话中使用 Grub Repair 在主分区上安装 GRUB。
当我在单独的分区上安装新系统时,是否可以避免影响 GRUB 列表及其所有设置?(我的意思是,除了添加新条目。)
我上面描述的经验涉及基于 Ubuntu 的发行版、Manjaro、Deepin、KaOS、OpenSuse。
小智 0
我无法在不触及之前安装的 Linux 系统上使用Grub 定制器进行的启动菜单自定义的情况下在新分区上安装新的 Linux ,但我有一个简单的解决方案可以使用Boot Repair来恢复该自定义。
在单独的分区上安装新的 Linux 将替换以前的 Linux 系统中使用 Grub 定制器编辑的启动菜单。事实上,该定制的数据并没有丢失,但它存在于旧版 Linux 安装的分区上,您需要恢复它。
无论最后的 Linux 安装是否保留(并且您有附带的启动菜单)还是已删除(并且您根本没有启动菜单 - 并且根本无法启动),都可以完成此操作。
这个想法是在 Linux 系统上使用 Live USB 上的引导修复。
因此,在实时 Linux 环境中启动并安装启动修复。使用基于Ubuntu的Linux,因为我这里使用的安装工具的方法:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
Run Code Online (Sandbox Code Playgroud)
启动修复开始:
[下面的图像是在本地安装中拍摄的,因此某些规格(例如“正在使用的操作系统等”)会有所不同、不存在等]
不要更改 MBR 选项
在“其他选项”选项卡下:将引导标志置于打开位置 - 选择您在 Grub 定制器中编辑引导列表的相同主 Linux 安装
申请。
启动修复完成进程后,重新启动,您应该会看到由 Grub 定制程序设置设置的启动列表和主题。
考虑到这样一个事实:根据我的经验,如果 Manjaro 是最后安装的 Linux,上述过程可能会导致该系统无法访问(使用 KDE、Xfce 和 Fluxbox Manjaro 进行测试)。
此外,Grub 定制器似乎无法在 Manjaro 中正常工作 - 它会给出错误,指出无法保存更改。
仅当未安装 Manjaro(或者您无论如何都想删除它)时,我才建议执行上述操作。
如果在安装另一个 Linux(例如 Ubuntu)时已经安装了 Manjaro,Manjaro 将无法启动,因为它只能使用自己的 grub。Manjaro grub 可以恢复并用于所有已安装的系统。(虽然它似乎不能与 Grub 定制器一起使用,但它具有增强的功能,例如记住上次启动的条目)。
要恢复 Manjaro 启动列表(〜如此处所示〜):
在另一个 Linux grub 菜单中,按grub>
“c”进入其 grub 提示符 ( )。
在 grub 提示符下:
grub> search.file /boot/intel-ucode.img root
grub> configfile /boot/grub/grub.cfg
Run Code Online (Sandbox Code Playgroud)
然后将出现 Manjaro grub 菜单,在第一个(顶部)条目中输入,它将启动到 Manjaro。
当在终端启动到 Manjaro 时,
sudo grub-install /dev/sda
sudo update-grub
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9559 次 |
最近记录: |