Приховати меню GRUB2 ЗАКЛЮЧИТИ натиснутою клавішу Shift: як це зробити?


32

У мене є Ubuntu - налаштування подвійного завантаження Windows 7, і мені хотілося б, щоб мій ноутбук завантажував Windows 7, якщо я не натискаю клавішу Shift відразу після завантаження і не відкриваю меню Grub2, з якого я можу вибрати Ubuntu.

Я досліджував Grub2 та варіанти, etc/default/grubі намагався грати з комбінаціями зі значеннями GRUB_TIMEOUTта GRUB_HIDDEN_TIMEOUTзначеннями, але безрезультатно. Я спробував встановити GRUB_HIDDEN_TIMEOUTвище, ніж GRUB_TIMEOUTмислення, що обидва відліку починаються одночасно, але ні - GRUB_TIMEOUTпочинається лише після того, як буде зроблено інше.

Чи досяжна така поведінка?

Якщо так, то як?


1
Як я це роблю, це час у мене встановлений на 0 (встановити за допомогою Grub Customizer). Я не можу відобразити меню GRUB2, якщо я не утримую зсув відразу після біографії, яка потім відображає меню. sudo add-apt-repository ppa: danielrichter2007 / grub-customizer sudo apt-get update sudo apt-get install grub-customizer
Ryan McClure


@RyanMcClure Я спробував встановити тайм-аут вручну на 0, але, утримуючи праву, Shift взагалі не відображає меню Grub2.
Без Ермосо

Відповіді:


15

Я думаю, що я знайшов більш просту резолюцію. Змініть наступні рядки у файлі / etc / default / grub:

GRUB_HIDDEN_TIMEOUT = 0,0

GRUB_TIMEOUT = 0,0

Звичайно, ми нарешті запускаємо оновлення-grub. Це працює на моєму ПК.


6
Почешіть це. Це не дає мені меню grub, але я також не можу отримати його натисканням shift.
zorkerz

9

Це для Ubuntu 16.04.

Я вирішив це за допомогою невеликої комбінації деяких відповідей, знайдених вище, тому не потрібно змінювати 30_os-prober, уникаючи майбутніх злиття під час оновлення пакету grub ...

Сподіваюся, це допомагає.

Змінено деякі змінні в / etc / default / grub, щоб відобразити те, що я хочу;

GRUB_DEFAULT=4
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=""

GRUB_FORCE_HIDDEN_MENU="true"
export GRUB_FORCE_HIDDEN_MENU

Потім створили новий файл;

sudo touch /etc/grub.d/50_hidemenu
sudo chmod +x /etc/grub.d/50_hidemenu

наповнив його цим змістом;

#!/bin/sh
cat <<EOF
if [ "x\${timeout}" != "x-1" ]; then
  if keystatus; then
    if keystatus --shift; then
      set timeout=-1
    else
      set timeout=0
    fi
  else
    if sleep --interruptible ${GRUB_HIDDEN_TIMEOUT} ; then
      set timeout=0
    fi
  fi
fi
EOF

та оновлена ​​грязь;

sudo update-grub

Ура.


Не працює для мене.
Менаше

Я протестував це лише в 16.04. Ви перебуваєте в іншій версії?
tux1c

Можливо, були 16.10. Ти маєш рацію, безумовно, це слід було б згадати.
Менашех

Працює і над Debian видавлюванням
Jocelyn delalande

7

У Kubuntu 14.04 це не працює, якщо ви встановите GRUB_TIMEOUT= 0, як не дивно, після застосування цього і перезавантаження меню grub залишається видимим протягом 10 секунд.

Причиною цього є те, що в іншому скрипті grub є фрагмент коду, який встановлює grub_timeout до 10, якщо він має значення 0.

Ось так я працював:

зробити копію grubі 30_osproberфайлів !!! Коли щось піде не так, ви можете повернути оригінальні файли назад

В /etc/default/grub

GRUB_DEFAULT=4    #set this value to the OS you want to boot
GRUB_HIDDEN_TIMEOUT=0

GRUB_TIMEOUT=0

в/etc/grub.d/30_os-prober , є фрагмент коду, який встановлює час очікування роботи на 10s, якщо він встановлений на нуль /etc/default/grub, я не знаю, чому розробники поставили його туди, але це заважає приховувати меню grub.

set timeout_style=menu

if [ "\${timeout}" = 0 ]; then    
  set timeout=10  # I changed this from 10 to 0

Після цих змін запустіть sudo update-grubдля створення нової послідовності завантаження grub.

Я документую всі свої виправлення / моди Linux на https://sites.google.com/site/marcshomesite/Home/linux-tuning


Сподіваюся, ви не помістили пробіл після =в GRUB_TIMEOUT= 0.
муру

4

Для автоматичного завантаження Windows, не вибираючи з меню GRUB, нам потрібно відредагувати /etc/default/grubфайл зі значеннями, подібними до таких:

GRUB_DEFAULT= <number of default entry starting from 0>
GRUB_TIMEOUT= 0 # time in seconds to boot default
# GRUB_HIDDEN_TIMEOUT=0 # warning: activating this may lock you out from GRUB menu

Завжди корисно зробити резервні копії цих файлів, перш ніж їх редагувати. Після внесення змін нам потрібно активувати їх

sudo update-grub

Значення для GRUB_DEFAULT залежать від нашої індивідуальної системи. Щоб завжди завантажувати Windows, ми можемо вводити назву запису саме так, як це було показано в меню Grub (наприклад "Microsoft Windows XP Professional") замість номера запису.


Важлива примітка: у деяких машинах меню GRUB не можна відображати, натискаючи та утримуючи ліворуч Shiftпри завантаженні (див. Помилку № 425979 ). Тому, можливо, спочатку перевірити це за допомогою завантаження Ubuntu (не Windows), встановленого як ОС за замовчуванням. Тоді ви зможете легко скасувати налаштування GRUB у випадку, якщо на вас це вплине.


Хіба це не робить Ubuntu по-людськи незавантаженим, чи буде достатньо часу, щоб перехопити завантаження та вибрати Ubuntu, коли я хочу?
Без Ермосо

1
@Shasteriskt вам слід встановити значення часу, яке достатньо довго, щоб натиснути клавішу для вибору іншої завантажувальної ОС.
Таккат

Я встановив час очікування на 0 і натиснув клавішу Shift, але меню все ще не відображається. (Добре, що я встановив його для завантаження в Ubuntu, де я можу відредагувати налаштування так, як вони були.)
Без Ермосо

Словом, поведінка, яка мені потрібна, не досяжна?
Без Ермосо

@Shasteriskt: на жаль, на деяких машинах порушене натискання та утримання ліворуч-SHIFT під час завантаження, щоб відкрити меню GRUB (наприклад, ця помилка ). Можливо, вам пощастить, якщо ESC або SHIFT + ESC працює.
Таккат

4

Я намагався зробити те саме, і я знайшов велику допомогу на форумах Ubuntu, особливо в цій темі.

Якщо припустити, що ви зробили все правильно /etc/default/grub, правильно встановивши GRUB_TIMEOUTта GRUB_HIDDEN_TIMEOUT(я б сказав відповідно 0 і 5) і навіть GRUB_DEFAULTвказали зображення для замовчування для завантаження, ось процедура, щоб він працював правильно.

  1. Додайте ці рядки

    GRUB_FORCE_HIDDEN_MENU="true"
    export GRUB_FORCE_HIDDEN_MENU
    

    до кінця /etc/default/grub

  2. Створіть резервну копію свого /etc/grub.d/30_os-proberта перезапишіть його з наведеною тут версією

  3. Перевірте! Щоб показати меню, натисніть SHIFTклавішу

Ця проблема пов'язана з налаштуваннями декількох ОС, і редагування сценарію є одним із способів виправити це.

30_os-prober :

#! /bin/sh
set -e

# grub-mkconfig helper script.
# Copyright (C) 2006,2007,2008,2009  Free Software Foundation, Inc.
#
# GRUB is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# GRUB is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GRUB.  If not, see <http://www.gnu.org/licenses/>.

prefix="/usr"
exec_prefix="${prefix}"
datarootdir="${prefix}/share"

. "${datarootdir}/grub/grub-mkconfig_lib"

found_other_os=

make_timeout () {

  if [ "x${found_other_os}" = "x" ] || [ "x${GRUB_FORCE_HIDDEN_MENU}" = "xtrue" ] ; then 
    if [ "x${1}" != "x" ] ; then
      if [ "x${GRUB_HIDDEN_TIMEOUT_QUIET}" = "xtrue" ] ; then
    verbose=
      else
    verbose=" --verbose"
      fi

      if [ "x${1}" = "x0" ] ; then
    cat <<EOF
if [ "x\${timeout}" != "x-1" ]; then
  if keystatus; then
    if keystatus --shift; then
      set timeout=-1
    else
      set timeout=0
    fi
  else
    if sleep$verbose --interruptible 3 ; then
      set timeout=0
    fi
  fi
fi
EOF
      else
    cat << EOF
if [ "x\${timeout}" != "x-1" ]; then
  if sleep$verbose --interruptible ${GRUB_HIDDEN_TIMEOUT} ; then
    set timeout=0
  fi
fi
EOF
      fi
    fi
  fi
}

adjust_timeout () {
  if [ "x$GRUB_BUTTON_CMOS_ADDRESS" != "x" ]; then
    cat <<EOF
if cmostest $GRUB_BUTTON_CMOS_ADDRESS ; then
EOF
    make_timeout "${GRUB_HIDDEN_TIMEOUT_BUTTON}" "${GRUB_TIMEOUT_BUTTON}"
    echo else
    make_timeout "${GRUB_HIDDEN_TIMEOUT}" "${GRUB_TIMEOUT}"
    echo fi
  else
    make_timeout "${GRUB_HIDDEN_TIMEOUT}" "${GRUB_TIMEOUT}"
  fi
}

if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then
  adjust_timeout
  exit 0
fi

if [ -z "`which os-prober 2> /dev/null`" -o -z "`which linux-boot-prober 2> /dev/null`" ] ; then
  # missing os-prober and/or linux-boot-prober
  adjust_timeout
  exit 0
fi

OSPROBED="`os-prober | tr ' ' '^' | paste -s -d ' '`"
if [ -z "${OSPROBED}" ] ; then
  # empty os-prober output, nothing doing
  adjust_timeout
  exit 0
fi

osx_entry() {
    found_other_os=1
        cat << EOF
menuentry "${LONGNAME} (${2}-bit) (on ${DEVICE})" --class osx --class darwin --class os {
EOF
    save_default_entry | sed -e "s/^/\t/"
    prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
    cat << EOF
        load_video
        set do_resume=0
        if [ /var/vm/sleepimage -nt10 / ]; then
           if xnu_resume /var/vm/sleepimage; then
             set do_resume=1
           fi
        fi
        if [ \$do_resume = 0 ]; then
           xnu_uuid ${OSXUUID} uuid
           if [ -f /Extra/DSDT.aml ]; then
              acpi -e /Extra/DSDT.aml
           fi
           $1 /mach_kernel boot-uuid=\${uuid} rd=*uuid
           if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions ]; then
              xnu_mkext /System/Library/Extensions.mkext
           else
              xnu_kextdir /System/Library/Extensions
           fi
           if [ -f /Extra/Extensions.mkext ]; then
              xnu_mkext /Extra/Extensions.mkext
           fi
           if [ -d /Extra/Extensions ]; then
              xnu_kextdir /Extra/Extensions
           fi
           if [ -f /Extra/devprop.bin ]; then
              xnu_devprop_load /Extra/devprop.bin
           fi
           if [ -f /Extra/splash.jpg ]; then
              insmod jpeg
              xnu_splash /Extra/splash.jpg
           fi
           if [ -f /Extra/splash.png ]; then
              insmod png
              xnu_splash /Extra/splash.png
           fi
           if [ -f /Extra/splash.tga ]; then
              insmod tga
              xnu_splash /Extra/splash.tga
           fi
        fi
}
EOF
}

wubi=

for OS in ${OSPROBED} ; do
  DEVICE="`echo ${OS} | cut -d ':' -f 1`"
  LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`"
  LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`"
  BOOT="`echo ${OS} | cut -d ':' -f 4`"

  if [ -z "${LONGNAME}" ] ; then
    LONGNAME="${LABEL}"
  fi

  echo "Found ${LONGNAME} on ${DEVICE}" >&2

  case ${BOOT} in
    chain)

      case ${LONGNAME} in
    Windows*)
      if [ -z "$wubi" ]; then
        if [ -x /usr/share/lupin-support/grub-mkimage ] && \
           /usr/share/lupin-support/grub-mkimage --test; then
          wubi=yes
        else
          wubi=no
        fi
      fi
      if [ "$wubi" = yes ]; then
        echo "Skipping ${LONGNAME} on Wubi system" >&2
        continue
      fi
      ;;
      esac

      found_other_os=1
      cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" --class windows --class os {
EOF
      save_default_entry | sed -e "s/^/\t/"
      prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"

      case ${LONGNAME} in
    Windows\ Vista*|Windows\ 7*|Windows\ Server\ 2008*)
    ;;
    *)
      cat << EOF
    drivemap -s (hd0) \${root}
EOF
    ;;
      esac

      cat <<EOF
    chainloader +1
}
EOF
    ;;
    linux)
      LINUXPROBED="`linux-boot-prober ${DEVICE} 2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
      prepare_boot_cache=

      for LINUX in ${LINUXPROBED} ; do
        LROOT="`echo ${LINUX} | cut -d ':' -f 1`"
        LBOOT="`echo ${LINUX} | cut -d ':' -f 2`"
        LLABEL="`echo ${LINUX} | cut -d ':' -f 3 | tr '^' ' '`"
        LKERNEL="`echo ${LINUX} | cut -d ':' -f 4`"
        LINITRD="`echo ${LINUX} | cut -d ':' -f 5`"
        LPARAMS="`echo ${LINUX} | cut -d ':' -f 6- | tr '^' ' '`"

        if [ -z "${LLABEL}" ] ; then
          LLABEL="${LONGNAME}"
        fi

    if [ "${LROOT}" != "${LBOOT}" ]; then
      LKERNEL="${LKERNEL#/boot}"
      LINITRD="${LINITRD#/boot}"
    fi

    if [ -z "${prepare_boot_cache}" ]; then
      prepare_boot_cache="$(prepare_grub_to_access_device ${LBOOT} | sed -e "s/^/\t/")"
      [ "${prepare_boot_cache}" ] || continue
    fi
    found_other_os=1
        cat << EOF
menuentry "${LLABEL} (on ${DEVICE})" --class gnu-linux --class gnu --class os {
EOF
    save_default_entry | sed -e "s/^/\t/"
    printf '%s\n' "${prepare_boot_cache}"
    cat <<  EOF
    linux ${LKERNEL} ${LPARAMS}
EOF
        if [ -n "${LINITRD}" ] ; then
          cat << EOF
    initrd ${LINITRD}
EOF
        fi
        cat << EOF
}
EOF
      done
    ;;
    macosx)
      OSXUUID="`grub-probe --target=fs_uuid --device ${DEVICE} 2> /dev/null`"
      osx_entry xnu_kernel 32
      osx_entry xnu_kernel64 64
    ;;
    hurd)
      found_other_os=1
      cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" --class hurd --class gnu --class os {
EOF
      save_default_entry | sed -e "s/^/\t/"
      prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/"
      grub_device="`${grub_probe} --device ${DEVICE} --target=drive`"
      mach_device="`echo "${grub_device}" | sed -e 's/(\(hd.*\),msdos\(.*\))/\1s\2/'`"
      grub_fs="`${grub_probe} --device ${DEVICE} --target=fs`"
      case "${grub_fs}" in
    *fs)    hurd_fs="${grub_fs}" ;;
    *)  hurd_fs="${grub_fs}fs" ;;
      esac
      cat << EOF
    multiboot /boot/gnumach.gz root=device:${mach_device}
    module /hurd/${hurd_fs}.static ${hurd_fs} --readonly \\
            --multiboot-command-line='\${kernel-command-line}' \\
            --host-priv-port='\${host-port}' \\
            --device-master-port='\${device-port}' \\
            --exec-server-task='\${exec-task}' -T typed '\${root}' \\
            '\$(task-create)' '\$(task-resume)'
    module /lib/ld.so.1 exec /hurd/exec '\$(exec-task=task-create)'
}
EOF
    ;;
    *)
      echo "  ${LONGNAME} is not yet supported by grub-mkconfig." >&2
    ;;
  esac
done

adjust_timeout


    cat <<EOF
if [ "x\${timeout}" != "x-1" ]; then
  if keystatus; then
    if keystatus --shift; then
      set timeout=-1
    else
      set timeout=0
    fi
  else
    if sleep$verbose --interruptible 3 ; then
      set timeout=0
    fi
  fi
fi
EOF

1
Я спробував ваш метод, і він не вдався. Ubuntu 14.04 LTS
Mayukh Nair

1
Які частини файлу слід змінити? Мій файл 14,04 має багато відмінностей у цьому файлі, тому я вважаю, що слід внести лише цільові зміни.
Макіш

@MayukhNair: У мене є Ubuntu 14.04 і цей метод спрацював. Я зробив наступне - 1. Встановіть GRUB_DEFAULT = 0 в / etc / default / grub 2. Встановіть GRUB_HIDDEN_TIMEOUT = 0 (на відміну від того, що сказав Dariopnc). Файл 30-os_prober 4. sudo update-grub2
Pushpak Dagade

Зауважте, груб потрібно оновити sudo update-grubпісля зміни /etc/default/grubфайлу
Вільф

3

У Ubuntu 16.04 я змінив наступні зміни. Звичайно, для цього потрібно бути привілейованим користувачем.

  1. Перша зміна у /etc/grub.d/30_os-proberфайлі:

    • Відкрийте його sudo gedit /etc/grub.d/30_os-prober
    • Змінити quick_boot="1"наquick_boot="0"
    • збережіть файл
  2. Після цього ви можете встановити значення тайм-ауту в /etc/default/grubнульове або якесь інше значення:

    • Відкрийте його sudo gedit /etc/default/grub
    • GRUB_HIDDEN_TIMEOUT=0і GRUB_TIMEOUT=0.
    • збережіть файл
  3. Останній крок - оновити груб

    • sudo update-grub

Зміни першого файлу полягають у тому, що за замовчуванням встановлено, що якщо знайдено іншу ОС (наприклад, Windows 10), час очікування завжди встановлюється на 10 секунд, і тому його не можна змінити /etc/default/grub. Це виконується функцією, adjust_timeoutяка називається, яка запитує, чи quick_bootвстановлено та чи є інші ОС.


Нарешті соміт зат вир 16.04!
JLTD

2

встановити оптимізатор grub

sudo add-apt-repository ppa: danielrichter2007 / grub-customizer

sudo apt-get update
sudo apt-get install grub-customizer

Тепер налаштування Grub з’явиться в меню «Програми»> «Системні інструменти».

Або ви можете відкрити його з командного рядка.

gksudo grub-customizer

зображення всередині для варіантів grub

введіть тут опис зображення


3
Що це може зробити, чого не вдасться зробити редагуванням etc/default/grub?
Без Ермосо

3
@Shasteriskt: це може бути корисно носіям, які не володіють англійською мовою, людям, які не знайомі з командним рядком, або людям, які просто хочуть користуватися комп’ютером і не спілкуються з файлами конфігурації.
Flimm

Чому це було скасовано? Схоже, це не вирішує жодних проблем; Я спробував grub-customizer(не "оптимізатор"), і, працюючи, це не допомагає мені приховати меню GRUB, якщо не натиснути клавішу Shift.
Микола Лещів

1

У мене була однакова проблема в одній завантажувальній системі. Якщо значення GRUB_TIMEOUT не дорівнює нулю, меню завжди з’явиться, незалежно від GRUB_HIDDEN_TIMEOUT. Якщо значення GRUB_TIMEOUT дорівнювало нулю, воно проспало б GRUB_HIDDEN_TIMEOUT секунди, але меню не показало ні SHIFT, ні ESC.

Я виправив це, додавши в статтю сну ще один пункт до кінця коригувального часу () у 30_os-prober. Тепер, якщо його не перервано, час очікування дорівнює нулю, і він завантажується без меню, але якщо він перерваний, я встановив час очікування на 10.

Це насправді здається назад, оскільки сон повинен повернути 0 (помилково), якщо він не перерваний, і 1 (правда), якщо він є, але мені здається, він працює.


0

РОБОТА МЕНЮ БУТКА GRUB2 АВТОМАТИЧНО ВІДМОВА

З якоїсь причини редагування GRUB_GFXMODE=640x480налаштувань у Grub Customizer зазвичай робить меню завантаження видимим:

  1. Встановіть grub-customizer, як зазначено вище, та оновіть
  2. знайдіть Grub Customizer у графічному інтерфейсі (для мене це в Системі> Адміністрація> ..., але для деяких це фонд у розділі Програми> Системні інструменти> ..)
  3. Відкрийте Grub Customizer і виберіть Налаштування> Додатково
  4. Виберіть GRUB_gfxmode (640X480) - якщо він уже вибраний, зніміть позначку, перезавантажте та виберіть його ще раз.
  5. схрестіть пальці і перезавантажте!

Я поняття не маю, чому це працювало для мене, але воно працювало на обох моїх комп’ютерах, так що, сподіваюся, воно буде працювати і для вас!


0

Shasteriskt, одна з альтернатив рішення SHIFT - це просто створити сценарій, який виконує деякі операції переміщення для вас. Я маю на увазі створення файлу під назвою, grub.bakякий є точною копією вашого grub.cfgфайлу, з тією лише різницею, що set timeout=0рядок змінено, set timeout=10наприклад. Створіть скрипт оболонки, який робить перемикач, що дозволяє перезавантажуватись відповідно до ваших потреб. Я створив еквівалентний сценарій python, який відповідає цим вимогам, але, звичайно, це потрібно викликати sudo. Я просто вкладаю це в /usr/binмоє налаштування як символьне посилання на власне сам сценарій. Примітка: я запускаю fluxbox в Arch, тому я не впевнений, чи є розбіжності між цим скриптом і Ubuntu, але я повинен вважати, що жодних змін не повинно бути. Сценарій виглядає так:

#! /usr/bin/python
from shlex import split
from subprocess import call
from os import rename, chdir

chdir('/boot/grub/')
try:
    with open('grub.bak','r') as alternate:
        pass
    if raw_input('Auto-boot is set. Un-set?> ') == 'y':
        rename('grub.cfg','grub.back')
        rename('grub.bak','grub.cfg')

    if raw_input('Reboot system?> ') == 'y':
        call(split('shutdown -r now'))

except:
    if raw_input('Auto-boot is not set. Set?> ') == 'y':
        rename('grub.cfg','grub.bak')
        rename('grub.back','grub.cfg')

    if raw_input('Reboot system?> ') == 'y':
        call(split('shutdown -r now'))

В основному сценарій визначає, чи є у вас меню для завантаження чи ні (автозавантаження чи ні). На основі отриманих результатів він запитує, чи хочете ви його ввімкнути чи вимкнути, а потім запитує, чи хочете ви перезавантажитись. І навпаки, якщо ви хочете, щоб воно працювало навпаки (тобто в Windows), і у вас налаштована Windows для доступу до файлів в Linux, ви можете запустити той самий сценарій, що і в цьому середовищі, якщо хочете. Сподіваюся, що це допомагає.


0

Тож навіть якщо ви встановите GRUB_TIMEOUT на 0, якщо у вас є GRUB_HIDDEN_TIMEOUT, 30_os-prober встановить тайм-аут до 10, вам це подобається чи ні. Інші рішення тут редагують цей скрипт, але це може спричинити проблеми з оновленням, які вам доведеться об'єднати, якщо GRUB буде оновлено.

Краще рішення: напишіть таке /etc/grub.d/50_goddamnit(новий файл):

#!/bin/sh
echo "set timeout=0"

В основному, це запуститься останнім і буде завершальним рядком у /boot/grub/grub.conf, тим самим змінивши всі інші нерозумні мішігуси в конфігурації за замовчуванням.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.