在启动时如何进入GRUB菜单?


270

这个问题最近对我来说已经出现了(提示我将其作为一个特定的问题提出):

我的系统不是双启动,而是在金属上运行标准的Ubuntu桌面系统(我认为在VM中运行它是相同的)。

c引导时按该键不会导致GRUB菜单出现(我相信这对于双引导系统也是如此)。

如何获得GRUB菜单以在引导系统上显示自己?


22
+1了一个很好的问题,公开了Ubuntu引导过程的一个基本未记录的功能,这个答案是我在通过grub.cfg进行浏览时偶然发现的。感谢您将其提升到最高(Googleable)级别。
msw 2010年

5
归功于应归功于信贷...这个问题是我的另一个问题(深藏在评论中)。豪尔赫·卡斯特罗(Jorge Castro)提出,将其本身的问题作为一个问题提出来是一个好主意...(所以要对他表示感谢。这是主要的Q / A。
Peter.O 2010年

Answers:


249

如果您Shift在加载Grub的过程中按住不放,并且使用BIOS引导,则会出现菜单。当系统使用UEFI引导时,按Esc

要进行永久更改,您需要编辑/etc/default/grub文件-在行的开头放置一个“#”符号GRUB_HIDDEN_TIMEOUT=0

保存更改并运行sudo update-grub以应用更改。

说明文件:https : //help.ubuntu.com/community/Grub2


4
@codeMonk:糟糕!(我删除了先前的评论,因为我走的路不正确)...我最初误解了“ GRUB_TIMEOUT = 0”的上下文。你的意思是上下文是相对于“永久” GRUB菜单的显示...我想你有关的意思“SHIFT”键的方法......这是事实,对于一个永久重复显示,你需要两个 “ #GRUB_HIDDEN_TIMEOUT = 0“和” GRUB_TIMEOUT = * NON-ZERO *“,如答案中的链接所述(我已经双向测试了。)
Peter.O 2010年

6
保持左移对我不起作用:(
尼克

5
在Ubuntu 18.04中GRUB_HIDDEN_TIMEOUT=0,我没有一行/etc/default/grub-而是GRUB_TIMEOUT_STYLE=hidden(引导过程中的Shift对我不起作用(Dell?))。知道该怎么办吗?
耶拿

3
@jena我在/etc/default/grub有用的顶部找到了建议:即,看看info -f grub -n 'Simple configuration'。这说明了选项。用于GRUB_TIMEOUT_STYLE=menu显示菜单。或者ESC如果您将设置保持在,hidden但要查看菜单,请按。
bovender

3
Grub在每个发行版中都会发生变化,请考虑添加版本信息。例如,事实仅适用于14.04。它肯定不再与18.04相关
onknows

75

我已经尝试了ShiftSpace键,但是没有用。只有该Esc键才适用于Ubuntu 14.04和16.04在启动时获取Grub Menu。


2
同样在这里。只有ESCAPE密钥可用于Ubuntu 14.04。
atmelino

15
与Ubuntu 16.04相同-仅Escape可用。在文档(恢复模式)中应提到这一点
2016年

2
Ubuntu 14.04在这里。没什么用。
yPhil '16

1
Shift键可以在我的v16.04上正常工作。
Sopalajo de Arrierez,2016年

7
我不得不反复按ESC键,而不是按住它。让我们用6种方法来做同样的事情。Linux很有趣。
杰弗里·布拉特曼

16
  • 继续点击Shift直到看到“ Grub Loading Message”
  • 出现消息后,按住Shift直到出现菜单。

这是帮助我最终进入的细微差别!谢谢!:)
ATSiem 2014年

3
那样对我不起作用。不管我对这个可怜的SHIFT键做什么,此Intel NUC都会跳过grub菜单:(
yPhil

2
@yPhil英特尔NUC是吃东西的怪胎Shift。它在其他任何地方都可以使用。我很幸运,它Esc适用于我的NUC,但它似乎并不适合您,对吗?
富兰克林·于

15

在Ubuntu 18.04中,没有GRUB_HIDDEN_TIMEOUT=0/etc/default/grub-而是行GRUB_TIMEOUT_STYLE=hidden。根据info -f grub -n 'Simple configuration'

如果未设置此选项或将其设置为“菜单”,则GRUB将显示菜单,然后等待“ GRUB_TIMEOUT”设置的超时时间到期,然后再引导默认条目。按一个键可中断超时。

因此,如果您将该行删除或注释为:

#GRUB_TIMEOUT_STYLE=hidden

然后默认情况下会显示菜单。

18.04 +非双启动,在grub中启动5秒:

GRUB_TIMEOUT_STYLE = false

GRUB_TIMEOUT =(无值)。可以正常运行LVM。



也适用于18.10
Budget Tech

这在Lubuntu 19.04上对我的2010年末MBP起作用。
SurvivalMachine

8

默认情况下,如果安装了第二个操作系统,GRUB将显示菜单。如果仅安装了Ubuntu,则GRUB通常将在不显示菜单的情况下加载Ubuntu。要重新配置GRUB以始终显示菜单

  1. 编辑/etc/default/grub

    设置GRUB_HIDDEN_TIMEOUT==符号后无值)。
    设置为显示菜单n秒。GRUB_TIMEOUT=n

  2. 运行update-grub/boot/grub/grub.cfg根据/etc/default/grub设置重新生成。

即使默认GRUB_HIDDEN_TIMEOUT=0设置生效,也可以使GRUB显示菜单

  • 如果您的计算机使用BIOS进行引导,则Shift在加载GRUB时按住键,以获取引导菜单。
  • 如果您的计算机使用UEFI进行引导,请Esc在加载GRUB时按几次以获取引导菜单。

希望这清除了困惑,为什么Shift一些用户的工作Esc工作的人


3

我听说Shift做到了。但是我以前使用过Space,但它确实有效。


1
我刚刚在两种情况下同时尝试了Shift和Space:在VM中和“在金属上” ...“ Shift”在两种情况下都有效...“ Space”在两种情况下都失败了...
Peter.O 2010年

4
如果您不能使用shift,请尝试转义。似乎可以在Ubuntu 12.10上为我工作。
user530873 2013年

Ubuntu 15.04。空格键起作用。谢谢!
DmitryKanunnikoff 2015年

0

对于较新的Ubuntu版本,有没有GRUB_HIDDEN_TIMEOUT替代有GRUB_TIMEOUT_STYLE其设置为hidden默认。

打开文件sudo nano /etc/default/grub ,将GRUB_TIMEOUT_STYLEfrom的值更改为hiddenmenu并确保GRUB_TIMEOUT未将其设置为0然后运行

sudo update-grub

Done!!!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.