安装 Lubuntu 后无法访问 BIOS 菜单

安装 Lubuntu 后无法访问 BIOS 菜单

我的 Windows 8 确实带有 UEFI BIOS 菜单。我已经用 Lubuntu 17.04 替换了 Windows。我现在希望更改发行版,但是我无法再访问 BIOS 菜单来更改启动顺序。

在启动过程中按F1/ F8/ F12/esc或任何其他操作对于 UEFI 不起作用。以前我只能从 Windows 中访问它。

有没有办法可以更改启动顺序,或者我是否无意中使我的笔记本电脑成为永久的 lubuntu 设备?

答案1

systemctl reboot --firmware-setup应该这样做。

如果您不使用 systemd,事情会变得更加复杂,并且取决于您的引导加载程序:

  • 如果您使用 GRUB 2 作为引导加载程序(我认为 Ubuntu 和朋友们仍然这样做),您可以通过在 GRUB 的引导菜单上点击“c”并fwsetup在出现命令提示符时使用该命令来进入固件设置。

  • 如果是其他引导加载程序,您可以使用该efibootmgr命令告诉系统重新启动到固件设置,尽管这仅适用于某些系统。

  • 如果所有其他方法都失败,您可以(理论上)直接通过设置适当的 EFI 变量/sys/firmware/efi/vars,尽管我不确定该变量的名称是什么。

答案2

在 UEFI 中,操作系统有一种标准方法来指示用户想要在下次系统重新启动时访问固件设置。 Windows 在内部使用该标准方法。正如 Austin Hemmelgarn 在他的回答中所说,这是使用 EFI 变量完成的。

几年前,我编写了一个脚本来调用该标准方法:

#!/bin/sh
EFIVARFS=/sys/firmware/efi/efivars
EFI_OSINDSUPP=OsIndicationsSupported-8be4df61-93ca-11d2-aa0d-00e098032b8c
EFI_OSIND=OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c

if [ ! -d $EFIVARFS ]
then
    echo "ERROR: no efivarfs present"
    exit 72 # EX_OSFILE
fi

cd $EFIVARFS
if [ ! -f $EFI_OSINDSUPP ]
then
    echo "ERROR: no support for EFI OsIndications"
    exit 72 # EX_OSFILE
fi

FWSUP=$(od -An -t x4 $EFI_OSINDSUPP | cut -c 18)
case $FWSUP in
    [02468ace])
        echo "ERROR: no support for boot-to-fw-ui OsIndication" >&2
        exit 69 # EX_UNAVAILABLE
        ;;
esac
# grab OsIndications header (4 bytes)
EFI_OSINDHDR=$(head -c 4 $EFI_OSIND)

printf '%s\x01\x00\x00\x00\x00\x00\x00\x00' "$EFI_OSINDHDR" > $EFI_OSIND
if [ $? -eq 0 ]
then
    echo "Success. The system will boot to UEFI setup at next reboot."
    exit 0 # EX_OK
else
    echo "FAIL: could not update the OsIndications UEFI variable."
    exit 69 # EX_UNAVAILABLE
fi

答案3

  • 检查您是否在 BIOS 中启用了 OsInspirationsSupported(数据中的值必须为 1),这是强制性的。

然后做:

  • rm /sys/firmware/efi/efivars/OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c
  • printf '\7\0\0\0' '\1\0\0\0\0\0\0\0' > /sys/firmware/efi/efivars/OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c

第一步删除旧的 OsInductions 文件。第二步,“\1”允许在重新启动后启动进入 BIOS 设置。

如果需要,请使用 更改 efivars 权限chattr -i /sys/firmware/efi/efivars/*,这不适用于所有文件,因为有些文件只能从 UEFI 设置中读取。

答案4

您能够访问您的设置吗?如果没有,您可能会遇到一些 BIOS 问题,我不止一次看到主板附带一个错误,该错误包括只能通过 OEM SO 访问的设置。例如,如果您有一个 WIN 8 作为 OEM,然后用另一个 WIN 8 进行格式化,您将无法进入设置,因为这个新窗口也无法将您发送到 BIOS,这是 BIOS 的问题,解决方案是刷新另一个BIOS 在你的主板上,并记住你必须刷新一个 CLEAN ME 版本而不是任何版本......我认为它可能是一个英特尔管理引擎错误......因此需要一个干净的 ME 版本......我从来没有尝试过清理主板上已有的 BIOS,但如果我的预感是正确的,那也可以解决问题...啊,最后一点...该错误主要存在于某些三星笔记本电脑型号中,但我看到在一些索尼,华硕甚至联想。

相关内容