我停止了双重引导,并且不再需要选择操作系统。我想直接启动到Ubuntu 12.04,而没有看到GRUB菜单。
我该如何实现?
我停止了双重引导,并且不再需要选择操作系统。我想直接启动到Ubuntu 12.04,而没有看到GRUB菜单。
我该如何实现?
Answers:
输入终端
sudo -H gedit /etc/default/grub
更改GRUB_HIDDEN_TIMEOUT_QUIET=false
为
GRUB_HIDDEN_TIMEOUT_QUIET=true
保存文件并退出
类型 sudo update-grub
如果没有得到想要的结果,请参见此错误。
我通过禁用OS Prober解决了这个问题。我这样做是因为在/boot/grub/grub.cfg
模板生成的部分中/etc/grub.d/30_os-prober
,“ timeout”为10,“ style”为菜单。
编辑/etc/default/grub
并添加以下行:
GRUB_DISABLE_OS_PROBER=true
希望你觉得这个有用!
顺便说一句,我完整的/ etc / default / grub是:
GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_DISTRIBUTOR= [...]
GRUB_DISABLE_OS_PROBER=true
GRUB_RECORDFAIL_TIMEOUT=0
快乐编码
GRUB_RECORDFAIL_TIMEOUT=0
是只对变化/etc/default/grub
,消除在30秒的超时时间(和共GRUB启动菜单),这似乎是一个错误:bugs.launchpad.net/ubuntu/+source/grub2/+bug/1814403/评论/ 4。另外,sudo update-grub
必须执行才能使编辑生效,答案中没有提到。请注意,0
除非机器是开发VM或类似机器,否则不建议将此值设置为(请参见上文引用的链接)。
我尝试了所有这些无效的技巧,最终将超时时间减少为零,如下所示:
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
sudo update-grub
更改值后运行
您需要在处编辑文件,/etc/default/grub
以防止显示grub菜单。
默认情况下,该文件中的条目如下所示。
GRUB_DEFAULT = 0 #GRUB_HIDDEN_TIMEOUT = 0 GRUB_HIDDEN_TIMEOUT_QUIET = false GRUB_TIMEOUT = 10 GRUB_DISTRIBUTOR =`lsb_release -i -s 2> / dev / null || 回声Debian` GRUB_CMDLINE_LINUX_DEFAULT =“安静的飞溅” GRUB_CMDLINE_LINUX =“”
#
从第二行删除标记,然后GRUB_HIDDEN_TIMEOUT_QUIET=false
为GRUB_HIDDEN_TIMEOUT_QUIET=true
。更改后,文件的所需部分将如下所示
GRUB_DEFAULT = 0 GRUB_HIDDEN_TIMEOUT = 0 GRUB_HIDDEN_TIMEOUT_QUIET = true GRUB_TIMEOUT = 10 GRUB_DISTRIBUTOR =`lsb_release -i -s 2> / dev / null || 回声Debian` GRUB_CMDLINE_LINUX_DEFAULT =“安静的飞溅” GRUB_CMDLINE_LINUX =“”
sudo update-grub
在终端中运行命令,然后重新启动以查看结果。我遇到了同样的问题,这里的所有提示均无效!唯一的方法是手动更改/boot/grub/grub.cfg。在该文件的某个时刻,他使超时时间达到10!因此,只需注释这些行
if [ "${timeout}" = 0 ]; then
set timeout=10
fi
但是,您永远无法再次执行update-grub,否则它将返回到同一文件,并且超时将再次变为10!保存文件(在vi中,即使您是su,也需要强制执行该操作)。重新启动计算机,它将正常工作!
if [ "${timeout}" = 10 ]; then set timeout=0 fi
呢?或者只是完全删除if语句,然后离开set timeout=0
?
如果要删除引导项,请键入:
sudo update-grub
如果那不起作用,请安装启动管理器,如下所示:
sudo apt-get install startupmanager
使用启动管理器,您可以
我找到了解决该问题的简单方法。
echo "
set timeout_style=hidden
set timeout=2" | sudo tee --append /etc/grub.d/40_custom
并更新grub。它将覆盖grub.cfg中的超时设置,因此与/ etc / default / grub中的内容无关。因此,我有隐藏菜单,可以通过切换2秒来调用。
对于所有在cmd行中出现单词飞溅的人,除了将0硬编码为超时外,其他任何方法都将不起作用,
GRUB_DEFAULT=0
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"
GRUB_CMDLINE_LINUX=""
尝试从倒数第二行中删除单词飞溅,更新并重新启动,瞧,没有菜单:)
hth,krex
这花了我一段时间,但确实有回报,这是我自己在挖掘的结果,上面的答案首先要确保您/etc/default/grub
和/usr/grub/default/grub
相同。然后gksu gedit /etc/grub.d/30_os-prober
在顶部附近是我们想要的两行,但是要找到它们,请搜索styke并将该行更改为hidden,然后搜索超时行,就像timeout = 0
设置为10一样,从if到文件的末尾删除该部分,确保您删除文件的末尾或拧紧后,您的grub配置应该记录这样的内容,例如,这是我的:
GRUB_DEFAULT="Windows 8 (loader) (on /dev/sda1)"
GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR="lsb_release -i -s 2> /dev/null || echo Debian"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Set this if you hide grubmenu at boot! hidden-timeout has to be 0-10
# NOT recommend with dual-boot systems
# Type ESC/ENTER at boot to make grub-menu visible again!
# in this case hidden-timeout has to be 3-10
GRUB_DISABLE_OS_PROBER=true
解决了问题!s.grub2 @ubuntuusers!;-)
也可以在引导过程中再次显示grub菜单!
重要信息:如果您崩溃了,并且想引导一个旧的(稳定的)内核!
(在基于Ubuntu 14.04的Linux Mint 17.3 Rosa上进行了测试)