我一直试图更改 Grub 以将 Linux-Ubuntu 设置为默认选项,但没有成功,因为现在我必须先进入启动菜单,否则 Windows 会启动。我已经更改了文件/etc/default/grubg
并使用了 Grub Customizer App,但显然我的笔记本电脑似乎不接受更改,它一直将 Windows 加载为默认启动选项。
具体来说,我一直在更改文件中的行/etc/default/grub
。该文件的当前状态如下:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT="true"
#GRUB_HIDDEN_TIMEOUT="0"
GRUB_HIDDEN_TIMEOUT_QUIET="true"
GRUB_TIMEOUT="10"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=1"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL="console"
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE="640x480"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID="true"
我尝试使用从 0 到 2 的几个数字来更改默认值,并打开和关闭选项,GRUB_SAVEDEFAULT="true"
但笔记本电脑的行为仍然相同。
我根据 oldfred 的建议解决了这个问题,特别是这个链接帮助了我http://askubuntu.com/questions/485261/change-boot-order-using-efibootmgr
据我了解,Windows 指的是其配置文件名shimx64.efi
,而不是文件grub2
。因此,我运行boot repair
以修复与启动相关的任何问题,然后我进入 Windows 并在 Windows 管理员命令提示符中执行以下行:
bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi
最后,问题解决了。感谢大家
答案1
/etc/default/grub 中的这两个参数:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true # note the difference
它会记住上次选择的操作系统。因此选择 Ubuntu,下次启动时它将默认使用 Ubuntu。
您必须在对 /etc/default/grub 进行更改后执行操作sudo update-grub
才能使其正常工作。