如何将 GRUB 安装到与 /EFI/ubuntu 不同的文件夹?

use*_*686 4 ubuntu grub2

我如何grub-install从 Ubuntu调用,将其文件安装到自定义目录而不是,例如,安装到/EFI/ubuntu?每一个方法我试图结束了(仍然)把一些.efi.cfg文件到/EFI/ubuntu文件夹中。我想将此文件夹重定向到其他地方(正确)。

cl-*_*box 5

在所有具有基于 UEFI 的 BIOS 的机器上,引导加载程序必须安装在单独的 EFI 分区上/boot/efi,该分区被挂载,这是所有操作系统存储自己引导加载程序的默认位置。如果您尝试更改它,操作系统将无法启动。

示例(在 Fedora 操作系统上,引导加载程序安装到文件夹中/EFI/fedora):

$ sudo ls -l /boot/efi
total 4
drwx------. 4 root root 4096  6. Apr 12:51 EFI
$ sudo ls -l /boot/efi/EFI
total 8
drwx------. 2 root root 4096  6. Apr 13:14 BOOT
drwx------. 4 root root 4096 30. Jun 09:02 fedora
$ sudo ls -l /boot/efi/EFI/fedora
total 5820
-rwx------. 1 root root     104 15. Aug 2016  BOOT.CSV
drwx------. 2 root root    4096  6. Apr 13:14 fonts
drwx------. 2 root root    4096 28. Sep 2016  fw
-rwx------. 1 root root   70864 28. Sep 2016  fwupx64.efi
-rwx------. 1 root root  997192  8. Dez 2016  gcdx64.efi
-rwx------. 1 root root    5901 30. Jun 09:02 grub.cfg
-rwx------. 1 root root    1024 30. Jun 09:02 grubenv
-rwx------. 1 root root  997192  8. Dez 2016  grubx64.efi
-rwx------. 1 root root 1276192 15. Aug 2016  MokManager.efi
-rwx------. 1 root root 1293304 15. Aug 2016  shim.efi
-rwx------. 1 root root 1287000 15. Aug 2016  shim-fedora.efi
Run Code Online (Sandbox Code Playgroud)

安装 Ubuntu 时,引导它的引导加载程序必须安装到子文件夹ubuntu 中。安装程序会创建这个文件夹并自动在那里安装引导加载程序——不要修改它!

解决您的评论的其他信息:如果我想从 Ubuntu 安装中为 Fedora 安装安装 GRUB 引导管理器怎么办?我怎样才能做到这一点?

您不能将 GRUB 引导加载程序从一个系统安装到另一个系统,正如我所说,每个操作系统都将自己的引导管理器安装到自己的子文件夹中。更新 GRUB 引导配置后,所有已安装的系统都会被检测到,并且可以从每个已安装的加载程序进行引导。

有关在使用不同系统时如何管理引导加载程序的更多信息:

您可以使用该efibootmgr工具选择哪个引导加载程序作为默认引导加载程序。

$ sudo efibootmgr
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0001
Boot0000* fedora
Boot0001* UEFI OS
Run Code Online (Sandbox Code Playgroud)

在这个例子中,fedora 的引导加载器被设置为默认加载器......如果你另外安装了 ubuntu,一个新条目会Boot0002* ubuntu出现,如果你想使用那个,请执行:sudo efibootmgr -o 0002,0000,0001

  • -1 嗯,谢谢,但我*不在乎*操作系统是否无法启动。我什至从未说过我试图启动我正在安装的同一个操作系统(我不是)。我想这样做的原因在这里无关紧要......请相信我,我知道我在做什么,只需回答这个问题。在您自己的示例中,该文件夹名为“fedora”。所以问题是,如果我是从 Ubuntu 安装的,我怎样才能将它安装到一个名为(比如)`fedora` 的目录中?就这样。我不是在寻求任何建议。 (2认同)