如何从另一个发行版更新 grub?

如何从另一个发行版更新 grub?

我的计算机上安装了三台 Linux 系统和一台 Windows 8.1。现在,我只在一台 Linux 上安装了 Grub2。因此,我总是必须登录该帐户才能使用 update-grub。问题是,我想完全删除那个 Linux 安装。

所以,我的目标是让它工作,我可以使用另一个安装中的 update-grub,同时保留位于我的 EFI 分区上的 grub 安装。

从现在开始更新 grub2 的安装应该是 Arch。

这是否可能,如果如何?

答案1

您的引导扇区使用 和 下的文件/boot,然后用于/boot/grub/grub.cfg进一步的菜单选择。

在执行任何操作之前,请确保您有可启动 CD/USB,以防系统无法启动。在破坏任何东西之前制作 CD/USB 会容易得多。并尝试一下。

接下来要做的事情是从系统上安装的其他 Linux 之一启动并执行以下操作:

sudo update-grub

并检查生成的结果/boot/grub/grub.cfg,以确保三个 Linux 安装以及 Windows8.1 安装都在其中。您会注意到当前启动的 Linux 将成为菜单中的默认值。

现在您可以让引导扇区指向此 Linux。假设您从以下位置启动/dev/sda

grub-install /dev/sda

在我看来,这是最简单的方法,因为没有必要这样做chroot。当然,它依赖于已经可用的可引导安装。

答案2

你必须从另一个Live或已安装的Linux启动,然后chroot到给定的Linux(你想安装它的grub)
然后你必须应用:

grub-install /dev/YOURDEV

例如:

grub-install /dev/sda

相关内容