想要隐藏 Grub 菜单

Mat*_*r79 4 boot grub2

首先,对不起我的英语(我是法国人)!

\n

我刚刚购买了一台 Dell Inspiron 13 二合一笔记本电脑,安装了 Kubuntu 21.10(无双引导),但我在使用 GRUB 时遇到了一些问题!

\n

grub 菜单在启动时仍然可见,并有 30 秒倒计时...

\n

我首先尝试使用 Grub 定制器更改配置,但没有结果。

\n

然后我手动修改了/etc/default/grub,加上了sudo update-grub,没有结果。

\n

我也尝试过本页中关于 os_prober 的解释: https: //gist.github.com/LeahCim/9332432但仍然没有任何结果...

\n

实际上,我的 /etc/default/grub 是

\n
# If you change this file, run \'update-grub\' afterwards to update\n# /boot/grub/grub.cfg.\n# For full documentation of the options in this file, see:\n#   info -f grub -n \'Simple configuration\'\n\nGRUB_DEFAULT=0\nGRUB_HIDDEN_TIMEOUT=0\nGRUB_HIDDEN_TIMEOUT_QUIET=true\nGRUB_DISABLE_OS_PROBER=true\nGRUB_TIMEOUT_STYLE="hidden"\nGRUB_TIMEOUT=0\nGRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"\nGRUB_CMDLINE_LINUX_DEFAULT="quiet splash"\nGRUB_CMDLINE_LINUX=""\n\n# Uncomment to enable BadRAM filtering, modify to suit your needs\n# This works with Linux (no patch required) and with any kernel that obtains\n# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)\n#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"\n\n# Uncomment to disable graphical terminal (grub-pc only)\n#GRUB_TERMINAL="console"\n\n# The resolution used on graphical terminal\n# note that you can use only modes which your graphic card supports via VBE\n# you can see them in real GRUB with the command `vbeinfo\'\n#GRUB_GFXMODE="640x480"\n\n# Uncomment if you don\'t want GRUB to pass "root=UUID=xxx" parameter to Linux\n#GRUB_DISABLE_LINUX_UUID="true"\n\n# Uncomment to disable generation of recovery mode menu entries\n#GRUB_DISABLE_RECOVERY="true"\n\n# Uncomment to get a beep at grub start\n#GRUB_INIT_TUNE="480 440 1"\n
Run Code Online (Sandbox Code Playgroud)\n

问候

\n

编辑 :

\n

由于这里的建议,我已将 GRUB_HIDDEN_TIMEOUT_QUIET= 从 false 更改为 true,但这并没有更好。即使将 GRUB_HIDDEN_TIMEOUT= 从 2 更改为 0 也没有改变任何内容。

\n

事实上,无论我在 /etc/default/grub 中进行什么更改,它似乎对 Grub 都没有影响;就像 GRUB 不关心 /boot/grub/grub.cfg,或者 grub.cfg 不关心 /etc/default/grub,即使在“sudo update-grub”之后也是如此。

\n

编辑2:

\n

无论我尝试什么,都没有改变...我试图在 grub.cfg 中找到一些东西,但这对我来说太困难了。我已经看到“timeout=30”(第 109 行)对应于 30 秒倒计时,但我不知道如何处理它,也不知道如何更改它。请问你能帮帮我吗 ?!!这是文件:

\n
#\n# DO NOT EDIT THIS FILE\n#\n# It is automatically generated by grub-mkconfig using templates\n# from /etc/grub.d and settings from /etc/default/grub\n#\n\n### BEGIN /etc/grub.d/00_header ###\nif [ -s $prefix/grubenv ]; then\n  set have_grubenv=true\n  load_env\nfi\nif [ "${initrdfail}" = 2 ]; then\n   set initrdfail=\nelif [ "${initrdfail}" = 1 ]; then\n   set next_entry="${prev_entry}"\n   set prev_entry=\n   save_env prev_entry\n   if [ "${next_entry}" ]; then\n      set initrdfail=2\n   fi\nfi\nif [ "${next_entry}" ] ; then\n   set default="${next_entry}"\n   set next_entry=\n   save_env next_entry\n   set boot_once=true\nelse\n   set default="0"\nfi\n\nif [ x"${feature_menuentry_id}" = xy ]; then\n  menuentry_id_option="--id"\nelse\n  menuentry_id_option=""\nfi\n\nexport menuentry_id_option\n\nif [ "${prev_saved_entry}" ]; then\n  set saved_entry="${prev_saved_entry}"\n  save_env saved_entry\n  set prev_saved_entry=\n  save_env prev_saved_entry\n  set boot_once=true\nfi\n\nfunction savedefault {\n  if [ -z "${boot_once}" ]; then\n    saved_entry="${chosen}"\n    save_env saved_entry\n  fi\n}\nfunction initrdfail {\n    if [ -n "${have_grubenv}" ]; then if [ -n "${partuuid}" ]; then\n      if [ -z "${initrdfail}" ]; then\n        set initrdfail=1\n        if [ -n "${boot_once}" ]; then\n          set prev_entry="${default}"\n          save_env prev_entry\n        fi\n      fi\n      save_env initrdfail\n    fi; fi\n}\nfunction recordfail {\n  set recordfail=1\n  # GRUB lacks write support for lvm, so recordfail support is disabled.\n}\nfunction load_video {\n  if [ x$feature_all_video_module = xy ]; then\n    insmod all_video\n  else\n    insmod efi_gop\n    insmod efi_uga\n    insmod ieee1275_fb\n    insmod vbe\n    insmod vga\n    insmod video_bochs\n    insmod video_cirrus\n  fi\n}\n\nif [ x$feature_default_font_path = xy ] ; then\n   font=unicode\nelse\ninsmod part_gpt\ninsmod lvm\ninsmod ext2\nset root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\nif [ x$feature_platform_search_hint = xy ]; then\n  search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\nelse\n  search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\nfi\n    font="/usr/share/grub/unicode.pf2"\nfi\n\nif loadfont $font ; then\n  set gfxmode=auto\n  load_video\n  insmod gfxterm\n  set locale_dir=$prefix/locale\n  set lang=fr_FR\n  insmod gettext\nfi\nterminal_output gfxterm\nif [ "${recordfail}" = 1 ] ; then\n  set timeout=30\nelse\n  if [ x$feature_timeout_style = xy ] ; then\n    set timeout_style=hidden\n    set timeout=0\n  # Fallback hidden-timeout code in case the timeout_style feature is\n  # unavailable.\n  elif sleep --interruptible 0 ; then\n    set timeout=0\n  fi\nfi\nif [ $grub_platform = efi ]; then\n  set timeout=30\n  if [ x$feature_timeout_style = xy ] ; then\n    set timeout_style=menu\n  fi\nfi\n### END /etc/grub.d/00_header ###\n\n### BEGIN /etc/grub.d/05_debian_theme ###\nset menu_color_normal=white/black\nset menu_color_highlight=black/light-gray\n#set_background_image "images/tile.png";\n\nset menu_color_normal=white/black\nset menu_color_highlight=black/light-gray\nif background_color 0,0,0; then\n  clear\nfi\n### END /etc/grub.d/05_debian_theme ###\n\n### BEGIN /etc/grub.d/10_linux ###\nfunction gfxmode {\n    set gfxpayload="${1}"\n    if [ "${1}" = "keep" ]; then\n        set vt_handoff=vt.handoff=7\n    else\n        set vt_handoff=\n    fi\n}\nif [ "${recordfail}" != 1 ]; then\n  if [ -e ${prefix}/gfxblacklist.txt ]; then\n    if hwmatch ${prefix}/gfxblacklist.txt 3; then\n      if [ ${match} = 0 ]; then\n        set linux_gfx_mode=keep\n      else\n        set linux_gfx_mode=text\n      fi\n    else\n      set linux_gfx_mode=text\n    fi\n  else\n    set linux_gfx_mode=keep\n  fi\nelse\n  set linux_gfx_mode=text\nfi\nexport linux_gfx_mode\nmenuentry \'Ubuntu\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-simple-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n    recordfail\n    load_video\n    gfxmode $linux_gfx_mode\n    insmod gzio\n    if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n    insmod part_gpt\n    insmod lvm\n    insmod ext2\n    set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n    if [ x$feature_platform_search_hint = xy ]; then\n      search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n    else\n      search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n    fi\n    linux   /boot/vmlinuz-5.13.0-21-generic root=/dev/mapper/vgkubuntu-root ro  quiet splash $vt_handoff\n    initrd  /boot/initrd.img-5.13.0-21-generic\n}\nsubmenu \'Options avanc\xc3\xa9es pour Ubuntu\' $menuentry_id_option \'gnulinux-advanced-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n    menuentry \'Ubuntu, avec Linux 5.13.0-21-generic\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-5.13.0-21-generic-advanced-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n        recordfail\n        load_video\n        gfxmode $linux_gfx_mode\n        insmod gzio\n        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n        insmod part_gpt\n        insmod lvm\n        insmod ext2\n        set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n        if [ x$feature_platform_search_hint = xy ]; then\n          search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        else\n          search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        fi\n        echo    \'Chargement de Linux 5.13.0-21-generic\xe2\x80\xa6\'\n        linux   /boot/vmlinuz-5.13.0-21-generic root=/dev/mapper/vgkubuntu-root ro  quiet splash $vt_handoff\n        echo    \'Chargement du disque m\xc3\xa9moire initial\xe2\x80\xa6\'\n        initrd  /boot/initrd.img-5.13.0-21-generic\n    }\n    menuentry \'Ubuntu, avec Linux 5.13.0-21-generic (recovery mode)\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-5.13.0-21-generic-recovery-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n        recordfail\n        load_video\n        insmod gzio\n        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n        insmod part_gpt\n        insmod lvm\n        insmod ext2\n        set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n        if [ x$feature_platform_search_hint = xy ]; then\n          search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        else\n          search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        fi\n        echo    \'Chargement de Linux 5.13.0-21-generic\xe2\x80\xa6\'\n        linux   /boot/vmlinuz-5.13.0-21-generic root=/dev/mapper/vgkubuntu-root ro recovery nomodeset dis_ucode_ldr \n        echo    \'Chargement du disque m\xc3\xa9moire initial\xe2\x80\xa6\'\n        initrd  /boot/initrd.img-5.13.0-21-generic\n    }\n    menuentry \'Ubuntu, avec Linux 5.13.0-20-generic\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-5.13.0-20-generic-advanced-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n        recordfail\n        load_video\n        gfxmode $linux_gfx_mode\n        insmod gzio\n        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n        insmod part_gpt\n        insmod lvm\n        insmod ext2\n        set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n        if [ x$feature_platform_search_hint = xy ]; then\n          search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        else\n          search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        fi\n        echo    \'Chargement de Linux 5.13.0-20-generic\xe2\x80\xa6\'\n        linux   /boot/vmlinuz-5.13.0-20-generic root=/dev/mapper/vgkubuntu-root ro  quiet splash $vt_handoff\n        echo    \'Chargement du disque m\xc3\xa9moire initial\xe2\x80\xa6\'\n        initrd  /boot/initrd.img-5.13.0-20-generic\n    }\n    menuentry \'Ubuntu, avec Linux 5.13.0-20-generic (recovery mode)\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-5.13.0-20-generic-recovery-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n        recordfail\n        load_video\n        insmod gzio\n        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n        insmod part_gpt\n        insmod lvm\n        insmod ext2\n        set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n        if [ x$feature_platform_search_hint = xy ]; then\n          search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        else\n          search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        fi\n        echo    \'Chargement de Linux 5.13.0-20-generic\xe2\x80\xa6\'\n        linux   /boot/vmlinuz-5.13.0-20-generic root=/dev/mapper/vgkubuntu-root ro recovery nomodeset dis_ucode_ldr \n        echo    \'Chargement du disque m\xc3\xa9moire initial\xe2\x80\xa6\'\n        initrd  /boot/initrd.img-5.13.0-20-generic\n    }\n    menuentry \'Ubuntu, avec Linux 5.13.0-19-generic\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-5.13.0-19-generic-advanced-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n        recordfail\n        load_video\n        gfxmode $linux_gfx_mode\n        insmod gzio\n        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n        insmod part_gpt\n        insmod lvm\n        insmod ext2\n        set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n        if [ x$feature_platform_search_hint = xy ]; then\n          search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        else\n          search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        fi\n        echo    \'Chargement de Linux 5.13.0-19-generic\xe2\x80\xa6\'\n        linux   /boot/vmlinuz-5.13.0-19-generic root=/dev/mapper/vgkubuntu-root ro  quiet splash $vt_handoff\n        echo    \'Chargement du disque m\xc3\xa9moire initial\xe2\x80\xa6\'\n        initrd  /boot/initrd.img-5.13.0-19-generic\n    }\n    menuentry \'Ubuntu, avec Linux 5.13.0-19-generic (recovery mode)\' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option \'gnulinux-5.13.0-19-generic-recovery-5a9194c9-d3ba-4f02-925e-a6bf54b49c06\' {\n        recordfail\n        load_video\n        insmod gzio\n        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi\n        insmod part_gpt\n        insmod lvm\n        insmod ext2\n        set root=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'\n        if [ x$feature_platform_search_hint = xy ]; then\n          search --no-floppy --fs-uuid --set=root --hint=\'lvmid/WJ7HiC-1808-IY8B-ZnJg-m2JO-X2Sp-eon3xJ/0mBBLm-PWoV-07pO-6ItQ-H0vK-80Oc-7ctcrG\'  5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        else\n          search --no-floppy --fs-uuid --set=root 5a9194c9-d3ba-4f02-925e-a6bf54b49c06\n        fi\n        echo    \'Chargement de Linux 5.13.0-19-generic\xe2\x80\xa6\'\n        linux   /boot/vmlinuz-5.13.0-19-generic root=/dev/mapper/vgkubuntu-root ro recovery nomodeset dis_ucode_ldr \n        echo    \'Chargement du disque m\xc3\xa9moire initial\xe2\x80\xa6\'\n        initrd  /boot/initrd.img-5.13.0-19-generic\n    }\n}\n\n### END /etc/grub.d/10_linux ###\n\n### BEGIN /etc/grub.d/10_linux_zfs ###\n### END /etc/grub.d/10_linux_zfs ###\n\n### BEGIN /etc/grub.d/20_linux_xen ###\n\n### END /etc/grub.d/20_linux_xen ###\n\n### BEGIN /etc/grub.d/20_memtest86+ ###\n### END /etc/grub.d/20_memtest86+ ###\n\n### BEGIN /etc/grub.d/25_pre-os-prober ###\nset timeout_bak=${timeout}\nset timeout_style_bak=${timeout_style}\n### END /etc/grub.d/25_pre-os-prober ###\n\n### BEGIN /etc/grub.d/30_os-prober ###\n### END /etc/grub.d/30_os-prober ###\n\n### BEGIN /etc/grub.d/30_uefi-firmware ###\nmenuentry \'UEFI Firmware Settings\' $menuentry_id_option \'uefi-firmware\' {\n    fwsetup\n}\n### END /etc/grub.d/30_uefi-firmware ###\n\n### BEGIN /etc/grub.d/35_post-os-prober ###\nset timeout=${timeout_bak}\nset timeout_style=${timeout_style_bak}\n### END /etc/grub.d/35_post-os-prober ###\n\n### BEGIN /etc/grub.d/40_custom ###\n# This file provides an easy way to add custom menu entries.  Simply type the\n# menu entries you want to add after this comment.  Be careful not to change\n# the \'exec tail\' line above.\n### END /etc/grub.d/40_custom ###\n\n### BEGIN /etc/grub.d/41_custom ###\nif [ -f  ${config_directory}/custom.cfg ]; then\n  source ${config_directory}/custom.cfg\nelif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then\n  source $prefix/custom.cfg;\nfi\n### END /etc/grub.d/41_custom ###\n\n
Run Code Online (Sandbox Code Playgroud)\n

我注意到在 KDE 分区管理器中我的 NVME 驱动器出现了 2 次:第一次是 /dev/nvme0n1 (有 2 个分区:/dev/nvme0n1p1 安装在 /boot/efi 512Mio FAT32 上,/dev/nvme0n1p2 安装在 vgkubuntu 476 上, 44Gio LVM2 PV)和第二个 /dev/vgkubuntu (有 2 个分区:/dev/vgkubuntu/root 安装在 / 475,48Gio EXT4 和 /dev/vgkubuntu/swap_1 980Mio linuxswap)。\n这正常吗?它可以解释我的 GRUB 问题吗?

\n

Nma*_*ath 5

我相信你需要改变

GRUB_HIDDEN_TIMEOUT=2
Run Code Online (Sandbox Code Playgroud)

GRUB_HIDDEN_TIMEOUT=0
Run Code Online (Sandbox Code Playgroud)

sudo update-grub更改配置文件后还需要运行。

您绝对不需要 GRUB 定制器。IMO GRUB 定制器是一个瘟疫:大多数人都希望启动尽可能安全和稳定。将不太稳定、不太安全、美观的东西安装到一个你只能看到几秒钟的基本低级实用程序有点愚蠢。但 Linux 最好的事情之一就是你有很多选择,包括不太好的选择。用配置隐藏 GRUB 绝对是更好的选择。

  • 我希望我能给+100只是为了*安装不太稳定、不太安全、引人注目的基本低级实用程序,你只看到几秒钟是有点愚蠢。* (4认同)