AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1239903
Accepted
Sanjay Prajapat
Sanjay Prajapat
Asked: 2020-05-16 05:29:30 +0800 CST2020-05-16 05:29:30 +0800 CST 2020-05-16 05:29:30 +0800 CST

如何在 Ubuntu 20.04 启动时禁用 grub 菜单?

  • 772

我已经在 Windows 旁边安装了 Ubuntu 20.04。当我启动系统时,它会显示 grub 菜单 10 秒钟以在 Ubuntu 和 Windows 之间进行选择。我不想要那个菜单,只想在按下电源按钮后立即启动它。我查看了这个线程并添加GRUB_HIDDEN_TIMEOUT_QUIET=true 甚至更改GRUB_TIMEOUT为0然后运行sudo update-grub。但它没有用,菜单仍然在启动时显示。这是我的/etc/default/grub文件-

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
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=""

# 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

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

如何禁用它?

grub2 boot dual-boot 20.04
  • 2 2 个回答
  • 15841 Views

2 个回答

  • Voted
  1. opx
    2020-08-29T07:00:48+08:002020-08-29T07:00:48+08:00

    解决方案/tl;博士

    echo 'set timeout_style=hidden
    set timeout=0' | sudo tee /boot/grub/custom.cfg
    

    解释

    尽管UnKNOWn 的方法确实有效,但应尽可能避免修改由基本系统安装的文件。在这种情况下(即 Ubuntu 20.04), apt-file 显示/etc/grub.d/30_os-prober属于该软件包(对于位于 中的所有grub-common文件也是如此,该命令用于编译最终的 GRUB 配置文件):/etc/grub.d/update-grub

    “apt-file search /etc/grub.d/30_os-prober”的输出

    如果包grub-common将来更新,apt 会检测到更改并提示您决定它应该做什么(因为这两个选项 - 您修改的文件以及分发者未修改的文件 - 都是有效的)。在最坏的情况下,您将不得不手动比较和合并文件内容。

    那么,如果我们想在多重引导环境中隐藏 GRUB 菜单,我们有哪些选择呢?这一次,该grub-common软件包只想确保每个用户都可以在已安装的操作系统之间切换。因此,该脚本/etc/grub.d/30_os-prober包含以下代码片段:

    adjust_timeout () {
      if [ "$quick_boot" = 1 ] && [ "x${found_other_os}" != "x" ]; then
        cat << EOF
    set timeout_style=menu
    if [ "\${timeout}" = 0 ]; then
      set timeout=10
    fi
    EOF
      fi
    }
    

    该脚本(在update-grub命令执行后进行评估)基本上允许您为多重引导环境设置自定义超时 - 但它不允许超时为 0,因为新手用户可能不知道如何在没有其他操作系统的情况下启动其他操作系统一个明显的菜单。这意味着您可以设置GRUB_TIMEOUT为 1,因此 GRUB 菜单会在引导默认引导选项之前显示一秒钟。

    但是我们怎样才能在不触及系统包安装的文件的情况下永久隐藏 GRUB 菜单呢?幸运的是,该grub-common软件包提供了一种应用一次性设置的工具。查看update-grub命令评估的最后一个文件/etc/grub.d/41_custom:

    #!/bin/sh
    cat <<EOF
    if [ -f  \${config_directory}/custom.cfg ]; then
      source \${config_directory}/custom.cfg
    elif [ -z "\${config_directory}" -a -f  \$prefix/custom.cfg ]; then
      source \$prefix/custom.cfg;
    fi
    EOF
    

    好的,所以每次评估 GRUB 配置文件时(即在引导时)都会获取一个名为 的文件custom.cfg,该文件必须与实际的 GRUB 配置文件 ( ) 放在相同的位置。因此,让我们将所需的设置添加到此文件 ( ):/boot/grub/grub.cfg/boot/grub/custom.cfg

    GRUB 现在将隐藏菜单并立即启动默认启动选项。其他操作系统仍然可以使用 UEFI 引导。

    • 8
  2. Best Answer
    UnKNOWn
    2020-05-16T06:03:21+08:002020-05-16T06:03:21+08:00

    通过 2 个 Ubuntu 20.04 操作系统的双启动测试

    /etc/default/grub编辑文件文件中的以下行

    GRUB_TIMEOUT=10
    

    像这样

    GRUB_TIMEOUT=0
    

    并运行以下命令

    sudo update-grub
    

    这使得超时为 0,条件是如果有单个操作系统,它将坚持为 0,否则它将被覆盖为 10。

    在/etc/grub.d/30_os-prober文件中,更改行

    quick_boot="1"
    

    至

    quick_boot="0"
    

    这将防止在多操作系统的情况下将超时值更改为 10 秒。

    从文件中查看函数“adjust_timeout”/etc/grub.d/30_os-prober

    prefix="/usr"
    exec_prefix="/usr"
    datarootdir="/usr/share"
    quick_boot="1"
    
    export TEXTDOMAIN=grub
    export TEXTDOMAINDIR="${datarootdir}/locale"
    
    . "$pkgdatadir/grub-mkconfig_lib"
    
    found_other_os=
    
    adjust_timeout () {
      if [ "$quick_boot" = 1 ] && [ "x${found_other_os}" != "x" ]; then
        cat << EOF
    set timeout_style=menu
    if [ "\${timeout}" = 0 ]; then
      set timeout=10
    fi
    EOF
      fi
    }
    

    当您想查看 grub 菜单时,Esc在 rite time 按下键将显示您。(仪式时间视情况而定,一般在 BIOS 菜单移交给 grub 菜单时间之后)

    如果您想更改默认操作系统,您可以从同一个文件进行设置/etc/default/grub。

    第一次,Esc在仪式时间点击进入 grub 菜单。然后从上数从 0 开始的数字,列出你最喜欢的 OS Entry..

    例如,我有两个 20.04 操作系统。一个在/dev/sda2,另一个在/dev/sda6 /dev/sda2是默认的。如果我想把它/dev/sda6作为默认操作系统,我需要找到它的编号,如下所示。

    在此处输入图像描述

    因此,它的位置在第 2 位。

    编辑文件/etc/default/grub并更改行

    GRUB_DEFAULT=0
    

    至

    GRUB_DEFAULT=2
    

    然后运行以下命令

    sudo update-grub
    

    系统将直接启动到 Ubuntu 20.04/dev/sda6

    • 5

相关问题

  • 更改 Wubi 的启动顺序

  • 如何从双启动计算机访问加密的主文件夹?

  • 如何在 Ubuntu 启动时显示或隐藏启动消息?

  • 如何避免启动时出现“S to Skip”消息?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve