如何设置grub超时和grub默认启动项?
在Ubuntu 12.04(或更高版本)中,如何设置GRUB时间和默认操作系统(我在启动时看到),因为我是双启动Windows(7/8)和Ubuntu(12.04或更高版本)?
- 按Alt + F2 ,键入
gksudo gedit /etc/default/grub
按Enter键并输入密码。 -
您将看到以下内容:
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中更改引导顺序 ,提到了这个工具。
以下是该软件的一些屏幕截图:
我按照第一个答案,但如果您使用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-grub
和Enter
f)键入exit
。 你需要做两次。
g)重新启动
我发现在我的计算机上经过几次登录之后,启动过程不会在启动时显示grub屏幕,因此我无法进入Ubuntu,因为我已将Windows设置为默认启动,延迟时间为7秒,以防我想要获取进入Ubuntu。
要解决此问题,您需要进入Windows。
-
单击开始菜单,然后在搜索框中键入
CMD
。 -
右键单击CMD行,该行应位于右键单击生成的屏幕顶部。
-
单击以管理员身份运行 。
-
在命令行上键入
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
。 此条目具有使用Windows启动管理器注册grub菜单的效果。 (信用: Grub没有在Windows 8.1 Ubuntu 13.10双启动时启动时显示 ) -
最后,我重新启动回到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