Як потрапити до меню GRUB під час завантаження?


270

Це питання з’явилося нещодавно для мене (і мені було запропоновано подати його як конкретне питання):

Моя система не з двояким завантаженням, я запускаю стандартну настільну систему Ubuntu «на металі» (я думаю, що запуск її в VM такий же).

Натискання cпід час завантаження не призводить до появи меню GRUB (що, я вважаю, це робиться для системи з подвійним завантаженням).

Як я можу змусити меню GRUB представити себе в єдиній завантажувальній системі?


22
+1 відмінне запитання, щоб викрити принципово незадокументовану функцію завантажувального процесу Ubuntu, відповідь на яку я знайшов лише випадково, переглядаючи grub.cfg. Дякуємо, що підняли це на найвищий (Googleable) рівень.
msw

5
Кредит, де належить кредит ... Ця проблема виникла в іншому моєму питанні (закопане в коментарях). Хорхе Кастро припустив, що було б гарною ідеєю представити як питання це власне право ... (так йому належить заслуга .... і я радий грітися у відбитому сяйві;) Я бачу цінність вона є первинним Q / A.
Пітер.О

Відповіді:


249

Меню з'явиться, якщо натиснути і утримувати Shiftпід час завантаження Grub, якщо ви завантажуєтесь за допомогою BIOS. Коли ваша система завантажується за допомогою UEFI, натисніть Esc.

Для постійної зміни вам потрібно буде відредагувати /etc/default/grubфайл - розмістити символ "#" на початку рядка GRUB_HIDDEN_TIMEOUT=0.

Збережіть зміни та запустіть, sudo update-grubщоб застосувати зміни.

Документація: https://help.ubuntu.com/community/Grub2


4
@codeMonk: На жаль! (Я видалив свій попередній коментар, тому що я був неправильним шляхом) ... Я спочатку неправильно зрозумів контекст "GRUB_TIMEOUT = 0". Контекст, який ви маєте на увазі, стосується "постійного" відображення меню GRUB ... Я думав, що ви маєте на увазі метод клавіш "Shift" ... Це правда, що для постійно повторюваного відображення вам потрібно обоє " # GRUB_HIDDEN_TIMEOUT = 0 "та" GRUB_TIMEOUT = * NON-ZERO * ", як описано у посиланні у відповіді ... (Я тільки перевірив це обома способами.)
Peter.O

6
Тримати ліву зміну мені не вийшло :(
Нік

5
У Ubuntu 18.04 GRUB_HIDDEN_TIMEOUT=0у мене немає рядка /etc/default/grub- натомість є GRUB_TIMEOUT_STYLE=hidden(Shift під час завантаження ніколи не працював для мене (Dell?)). Будь-яка ідея, що робити?
jena

3
@jena Я знайшов поради вгорі /etc/default/grubкорисними: тобто подивитися info -f grub -n 'Simple configuration'. Це пояснює варіанти. Використовуйте GRUB_TIMEOUT_STYLE=menuдля відображення меню. Або натисніть, ESCякщо ви збережете налаштування, hiddenале хочете переглянути меню.
bovender

3
Груб змінюється з кожним випуском, будь ласка, врахуйте, щоб додати інформацію про версію. Факт, наприклад, що це працює лише за 14.04. Це впевнено більше не актуально для 18.04
onknows

75

Я спробував Shiftі Spaceклавіші, і клавіші, але нічого не працює. Тільки Escключ працює для Ubuntu 14.04 та 16.04, щоб отримати меню Grub під час завантаження.


2
те ж саме. З Ubuntu 14.04 працював лише ключ ESCAPE.
атмеліно

15
Те саме для Ubuntu 16.04 - працює лише Escape. Про це слід згадати в документації (режим відновлення)
matandked

2
Ubuntu 14.04 тут. НІЩО не працює.
yPhil

1
Клавіша Shift добре працює на моєму v16.04.
Sopalajo de Arrierez

7
Мені довелося кілька разів натискати клавішу ESC, а не утримувати її. У нас буде 6 способів зробити те саме. Linux - це весело.
Джеффрі Блатман

16
  • Продовжуйте натискати, Shiftдоки не з’явиться повідомлення "Grub Loading Message"
  • Після повідомлення натисніть і утримуйте Shift, доки не з'явиться меню.

Це той нюанс, який допоміг мені нарешті потрапити! Дякую! :)
ATSiem

3
Це так для мене не працює. Незалежно від того, що я роблю з цим бідним ключем SHIFT, цей Intel NUC пропускає меню грубу :(
yPhil

2
@yPhil Intel NUC - виродник, який їсть Shift. Це працює скрізь. Мені пощастило, що Escпрацює для мого NUC, але це, здається, не працює для вас, чи не так?
Франклін Ю

15

У Ubuntu 18.04 немає GRUB_HIDDEN_TIMEOUT=0рядка /etc/default/grub- натомість є GRUB_TIMEOUT_STYLE=hidden. Відповідно до info -f grub -n 'Simple configuration':

якщо цю опцію вимкнено або встановлено на "меню", то GRUB відобразить меню, а потім зачекає, поки закінчиться час очікування, встановлене "GRUB_TIMEOUT", перед завантаженням запису за замовчуванням. Натискання клавіші перериває час очікування.

Тож якщо ви видалите або прокоментуєте рядок як:

#GRUB_TIMEOUT_STYLE=hidden

тоді меню відображається за замовчуванням.

18.04 + Не подвійний черевик, чоботи в грі 5 секунд:

GRUB_TIMEOUT_STYLE = помилково

GRUB_TIMEOUT = (немає значення). Відмінно працює LVM.


1
Ідеально! Тестовано з допомогою цього налаштування QEMU: askubuntu.com/questions/924913/…
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

також працює в 18.10
Бюджет техніка

Це працювало на моєму пізньому 2010 MBP з Lubuntu 19.04.
ВиживанняМахін

8

За замовчуванням GRUB покаже меню, якщо інстальована друга операційна система. Якщо встановлено лише Ubuntu, GRUB, як правило, завантажує Ubuntu, не показуючи меню. Щоб перенастроїти GRUB, щоб завжди показувати меню :

  1. Редагувати /etc/default/grub:

    Встановити GRUB_HIDDEN_TIMEOUT=(немає =знаку після знака).
    Встановіть показ меню протягом n секунд.GRUB_TIMEOUT=n

  2. Запустіть update-grubдля відновлення /boot/grub/grub.cfgна основі /etc/default/grubналаштувань.

Ви можете змусити GRUB показати меню, навіть якщо GRUB_HIDDEN_TIMEOUT=0налаштування за замовчуванням діють:

  • Якщо ваш комп'ютер використовує BIOS для завантаження, натисніть Shiftклавішу, поки GRUB завантажується, щоб отримати меню завантаження.
  • Якщо ваш комп'ютер використовує UEFI для завантаження, натисніть Escкілька разів, поки GRUB завантажується, щоб отримати меню завантаження.

Сподіваємось, це усуває плутанину щодо того, чому Shiftпрацює для одних користувачів та чи Escпрацює для інших .


3

Я чув, як Shift це робить. Але я раніше використовував Космос, і він працював.


1
Я тільки зараз спробував і Shift, і Space, у двох ситуаціях: У VM та "на металі" ... "Shift" працював в обох ситуаціях ... "Space" провалився в обох ситуаціях ...
Пітер.О

4
Якщо ви не можете використовувати shift, спробуйте втекти. Здається, для мене працює Ubuntu 12.10.
користувач530873

Ubuntu 15.04. Космічний ключ працює. Дякую!
ДмитроКануннікофф

0

Для новіших версій Ubuntu немає, GRUB_HIDDEN_TIMEOUTзамість цього GRUB_TIMEOUT_STYLEвстановлено hiddenза замовчуванням.

Відкрийте файл sudo nano /etc/default/grub Змінити значення GRUB_TIMEOUT_STYLEз hiddenна menuі переконайтесь, що GRUB_TIMEOUTне встановлено, 0а потім запустити

sudo update-grub

Done!!!

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