grub设置启动项

1、查看当前系统的启动项有哪些

grep menuentry /boot/grub/grub.cfg

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
  menuentry_id_option=""
export menuentry_id_option
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1fb97f59-9026-48b4-ab2b-f4aa547a577d' {
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-1fb97f59-9026-48b4-ab2b-f4aa547a577d' {
    menuentry 'Ubuntu, with Linux 4.4.0-31-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-31-generic-advanced-1fb97f59-9026-48b4-ab2b-f4aa547a577d' {
    menuentry 'Ubuntu, with Linux 4.4.0-31-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-31-generic-recovery-1fb97f59-9026-48b4-ab2b-f4aa547a577d' {
    menuentry 'Ubuntu, with Linux 3.13.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-24-generic-advanced-1fb97f59-9026-48b4-ab2b-f4aa547a577d' {
    menuentry 'Ubuntu, with Linux 3.13.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-24-generic-recovery-1fb97f59-9026-48b4-ab2b-f4aa547a577d' {
menuentry 'Memory test (memtest86+)' {
menuentry 'Memory test (memtest86+, serial console 115200)' {

我们看到有三个 以menuentry为开头的选项,这三个选项就是grub启动菜单主菜单的选项,在这合格例子中,他们的编号分别为:
- 0:Ubuntu
- 1:Memory test (memtest86+)
- 2:Memory test (memtest86+, serial console 115200)
其中,Ubuntu选项下面有四个子菜单,编号分别为:
- 0:Ubuntu, with Linux 4.4.0-31-generic
- 1:Ubuntu, with Linux 4.4.0-31-generic (recovery mode)
- 2:3.13.0-24-generic’ –class ubuntu
- 3:Ubuntu, with Linux 3.13.0-24-generic (recovery mode)

2、编辑启动项配置文件

打开 /etc/default/grub

GRUB_DEFAULT="0"
#GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 3.13.0-24-generic"
GRUB_HIDDEN_TIMEOUT=-1
GRUB_HIDDEN_TIMEOUT_QUIET=false
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX="find_preseed=/preseed.cfg auto noprompt priority=critical locale=en_US"

参数解释
1. GRUB_DEFAULT=0

设置默认启动项,在grub.cfg文件中按menuentry顺序开始计数,从0开始计数。比如要默认从第四个菜单项启动,数字改为3,若改为 saved,则默认为上次启动项。


  1. GRUB_HIDDEN_TIMEOUT=0

此配置将影响grub菜单显示。若设置此选项为一个常数,则将在此时间内隐藏菜单而显示引导画面。菜单将会被隐藏,如果注释掉该行,即:(#GRUB_HIDDEN_TIMEOUT=0)。则grub菜单能够显示,等待用户的选择,以决定进入那个系统或内核。GRUB2第一次执行时将会寻找其他操作系统。若没有其他操作系统被检测到,菜单将会配置为隐藏。若辨认出其他操作系统,菜单将会显示。若是大于 0 的整数,系统将会依此配置的秒数暂停,但不会显示菜单。0 则菜单不会显示,也不会有延迟。使用者可以在启动时按住 SHIFT 键不放以强制显示菜单。启动过程中,系统将会检查 SHIFT 键状态。若无法辨识按键状态,会有一个短时间的延迟让使用者可通过按下 ESC 键来显示菜单。
  • GRUB_HIDDEN_TIMEOUT_QUIET=true
    true不显示倒计时。屏幕将会是空白的。false 在 GRUB_HIDDEN_TIMEOUT 中配置的时间,空白屏幕上会有一个倒数计时器。
  • GRUB_TIMEOUT=10
    此命令将顺从 GRUB_HIDDEN_TIMEOUT 配置,除非 GRUB_HIDDEN_TIMEOUT 被注释掉(#)。若 GRUB_HIDDEN_TIMEOUT 启用,则当菜单显示时,GRUB_TIMEOUT 将会只执行一次。配置此值为 -1 将会导致菜单一直显示,直到用户选择。GRUB2菜单默认为隐藏,除非其他操作系统被系统检测到。若没有其他操作系统,此行将会被注释掉,除非使用者修改它。为了在每次启动时显示菜单,去掉此行的注释并使用 1 或更大的值。
  • GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
    quiet的意思是内核启动时候简化提示信息,splash是以图形界面启动。
  • - 假如我们想要有启动菜单选择界面,可以设置GRUB_HIDDEN_TIMEOUT=-1
    - 如果要进入子菜单,如进入3.13.0-24-generic’ 可以设置GRUB_DEFAULT=“0>2”

    修改完之后执行
    sudo update-grub
    sudo reboot

    猜你喜欢

    转载自blog.csdn.net/kinghuangjin/article/details/80308032