Debian 10 UEFI 相关

bios 未识别出 uefi 分区

最近在新磁盘上安装 debian 10 时,出现过安装完成后,bios 未识别出 uefi 分区,从而系统不能正常启动的问题。

根据官网1)介绍,正确的 uefi 启动文件的命名路径为:

\EFI\$vendor\$bootloader.efi

对于 debian 10 , 需要加载的 efi 文件为:

Architecture    Path
amd64           \EFI\debian\grubx64.efi
i386            \EFI\debian\grubia32.efi
arm64           \EFI\debian\grubaa64.efi
armhf           \EFI\debian\grubarm.efi

对于便携设备来说,默认是加载以下的 efi 文件:

Architecture    Path
amd64           \EFI\boot\bootx64.efi
i386            \EFI\boot\bootia32.efi
arm64           \EFI\boot\bootaa64.efi
armhf           \EFI\boot\bootarm.efi

由于某些 bios 的 uefi 启动程序有 bug ,不认 $vendor 底下的内容,只去 boot 目录底下查找 boot*.efi 。 因此 debian 无法正常 启动。 windows 系统会默认把自己的 efi 拷贝一份到 boot 目录中, debian 没有参考这种做法。因此,如果出现这种问题,需要手工创建 boot 目录,把 grub*.efi 移动到 boot 目录,并重命名成 boot*.efi 即可。