如何设置grub超时和grub默认启动项?

在Ubuntu 12.04(或更高版本)中,如何设置GRUB时间和默认操作系统(我在启动时看到),因为我是双启动Windows(7/8)和Ubuntu(12.04或更高版本)?

  • Alt + F2 ,键入gksudo gedit /etc/default/grubEnter键并输入密码。
  • 您将看到以下内容:

     GRUB_DEFAULT = 0
     GRUB_HIDDEN_TIMEOUT = 0
     GRUB_HIDDEN_TIMEOUT_QUIET =真
     GRUB_TIMEOUT = 10
     GRUB_DISTRIBUTOR =`lsb_release -i -s 2> / dev / null || 回应Debian`
     GRUB_CMDLINE_LINUX_DEFAULT =“安静的飞溅”
     GRUB_CMDLINE_LINUX = “”
    
  • 您可以将默认值从0更改为任何数字,对应于Grub启动菜单中的条目(第一个条目为0,第二个条目为1,等等)

  • 您可以更改“隐藏超时”(无菜单); 并显示倒计时( GRUB_HIDDEN_TIMEOUT_QUIET=false
  • 您可以通过在行的开头用#注释掉两个GRUB_HIDDEN行来强制显示grub菜单
  • 并设置grub菜单超时(默认为10秒)

  • 进行更改,按Ctrl + S保存, 按Ctrl + Q退出

  • 重要提示 :使用Ctrl + Alt + T打开终端并键入sudo update-grub以应用您刚刚进行的更改
  • 重新启动,您应该看到超时/默认条目更改

相关问题:

  • 如何将Windows设置为引导加载程序中的默认引导?

如果您在上面的示例中读取了您正在编辑的文件(/ etc / default / grub),您会注意到在开始更改之后,最初的几行指示您运行update-grub以更新grub的实际文件读取“获取其指令”(/boot/grub/grub.cfg)。 请注意,您必须首先使用sudo命令实际运行它,因为您需要root权限才能实际运行命令(这就是上面的海报说明键入sudo update-grub )。 这将导致您所做的更改写入/boot/grub/grub.cfg。 接下来的几行告诉您,您可以通过键入info -f grub -n 'Simple configuration'来阅读该文件中的选项的完整文档(同样,/ etc / default / grub)。

也就是说,如果要将“grub time”设置为无限期,请将GRUB_TIMEOUT设置为-1。 换句话说,它永远不会自动启动。 你必须做出选择。

最后,为了回答您的问题,以下是直接来自上述文档的“grub隐藏线”的描述:

 GRUB_HIDDEN_TIMEOUT Wait this many seconds for a key to be pressed before displaying the menu. If no key is pressed during that time, boot immediately. Unset by default. GRUB_HIDDEN_TIMEOUT_QUIET In conjunction with `GRUB_HIDDEN_TIMEOUT', set this to `true' to suppress the verbose countdown while waiting for a key to be pressed before displaying the menu. Unset by default. 

我希望这有帮助!

您可以使用名为Grub Customizer的应用程序。 它更容易。

您可以通过以下方式安装:

 sudo add-apt-repository ppa:danielrichter2007/grub-customizer sudo apt-get update sudo apt-get install grub-customizer 

有一篇关于它的How-To Geek文章, 如何轻松配置Linux GRUB 2引导菜单 。 此外,在Ubuntu论坛上有一个已解决的线程, 在GRUB 2更改引导顺序 ,提到了这个工具。

以下是该软件的一些屏幕截图:

SCREEN_1

screen_2

screen_3

我按照第一个答案,但如果您使用Windows 7 Pro和Ubuntu 16.04进行双启动,则似乎需要更新。 还要确保BIOS中的安全启动已关闭。

a)首先他说当我想用他打开终端窗口时使用Alt + F2 。 在我的例子中,它是Ctrl + Alt + T.

b)在第一个条目gksudo gedit /etc/default/grub ,默认情况下不会在Ubuntu 16.04中安装gksudo命令。 要解决此问题,请在终端中执行以下操作:

sudo -i并按Enter键输入密码,然后再次输入

然后输入:

gedit /etc/default/grub并按Enter键

c)现在您将看到grub更改菜单,如答案1所示。按照他的回答,直到他进入Ctrl + S保存更改。 这在Ubuntu 16.04中不起作用,但您应该在屏幕的右上角看到一个保存按钮。 点击它。

d) Ctrl + Q退出。

e)接下来输入sudo update-grubEnter

f)键入exit 。 你需要做两次。

g)重新启动

我发现在我的计算机上经过几次登录之后,启动过程不会在启动时显示grub屏幕,因此我无法进入Ubuntu,因为我已将Windows设置为默认启动,延迟时间为7秒,以防我想要获取进入Ubuntu。

要解决此问题,您需要进入Windows。

  1. 单击开始菜单,然后在搜索框中键入CMD

  2. 右键单击CMD行,该行应位于右键单击生成的屏幕顶部。

  3. 单击以管理员身份运行

  4. 在命令行上键入bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi 。 此条目具有使用Windows启动管理器注册grub菜单的效果。 (信用: Grub没有在Windows 8.1 Ubuntu 13.10双启动时启动时显示 )

  5. 最后,我重新启动回到Windows。

我希望这有帮助。

自从GRUB引入以来,使用基于数字的默认条目让我感到惊讶。 这真是个糟糕的主意。 内核更新和自动grub重新配置怎么样? 那些不喜欢在列表末尾喜欢输入的用户怎么样? 更新将破坏基于默认号码的配置。

而是在这里使用SAVED选项来记住最后选择的条目:

 GRUB_DEFAULT=SAVED GRUB_SAVEDEFAULT=TRUE 

然后应用GRUB

 sudo update-grub 

这在16.04也不适用于我。

但我通过更改文件/boot/grub/grub.cfg来修复它

 sudo vim /etc/default/grub 

编辑grub

 sudo update-grub sudo chmod u+w /boot/grub/grub.cfg sudo vim /boot/grub/grub.cfg 

更改超时值

 ###segment in /boot/grub/grub.cfg: set timeout_style=menu if [ "${timeout}" = 0 ]; then #set timeout=10 # comment this original set timeout=0 # add this fi sudo chmod -w /boot/grub/grub.cfg reboot