archlinux 在不同的硬盘上

archlinux 在不同的硬盘上

我有一台带有机械中断的电脑,以便启用不同的硬盘并使用不同的操作系统。 Windows 已经安装了 BIOS 旧版,我正在尝试安装 archlinux-uefi。
安装结束后,我重新启动 archlinux,一切正常,安装过程正确执行。我关机再开机还是没问题。
当我切换回 Windows(幸运的是仍然工作)然后再次切换回 archlinux 时,将启动 uefi 而不是操作系统。我的印象是,自从重新生成 fstab 和 grub.config 文件后,GPT 似乎已被修改,问题仍然存在,开机后没有任何消息显示,只是 uefi 启动,因为它没有找到 GPT。

你们中有些人知道发生了什么事吗?
谢谢!

答案1

听起来您的系统的 UEFI 固件会自动删除引用不可访问磁盘的任何 NVRAM 引导变量。

这意味着,您必须为 UEFI 可移动媒体式引导准备 UEFI 操作系统的引导加载程序。

要修复当前的 Arch 安装,请从外部介质启动,chroot 到安装,确保 EFI 系统分区 (ESP) 安装在适当的位置(通常/boot/efi或只是/boot)并运行:

grub-install --target=x86_64-efi --efi-directory=<ESP mountpoint> --removable

(替换<ESP mountpoint>为您实际安装 ESP 的路径)

这应该将 GRUB 安装到<ESP mountpoint>/EFI/boot/bootx64.efiUEFI 固件在可移动介质上查找它的位置,或者当没有适用的 UEFI NVRAM 引导变量来专门标识引导加载程序位置时。

答案2

更新 - 现在有效。
我认为是 fstab 和错误的 grub 安装参数之间的组合。
在安装时使用以下命令,现在可以工作了。

  • genfstab -t 零件标签--> 为了根据partitionlabel生成fstab,并引用持久块名称(不确定是否有必要)
  • grub-install --target=x86_64-efi --efi-directory=esp --removable --recheck--> 从“可移动式”设备(因为 HDD 可以分离)中的 grub 中
    指定https://wiki.archlinux.org/title/Install_Arch_Linux_on_a_removable_medium
    特别是是 Efi 系统分区,我按照安装指南进行操作,所以等于/启动,因为EFI安装在这里

相关内容