Как мне установить тайм-аут grub и загрузочную запись grub по умолчанию?

В Ubuntu 12.04 (или выше), как мне установить время GRUB и ОС по умолчанию (которую я вижу во время загрузки) при двойной загрузке Windows (7/8) и Ubuntu (12.04 или выше)?

  • Нажмите Alt + F2, тип gksudo gedit /etc/default/grub нажимать Enter и введите свой пароль.
  • Вы увидите следующее содержимое:

    >GRUB_DEFAULT=0GRUB_HIDDEN_TIMEOUT=0GRUB_HIDDEN_TIMEOUT_QUIET=trueGRUB_TIMEOUT=10GRUB_DISTRIBUTOR=`lsb_release -i -s 2 /dev/null || echo Debian`GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"GRUB_CMDLINE_LINUX=""
  • Вы можете изменить значение по умолчанию с 0 на любое число, соответствующее записи в меню загрузки Grub (первая запись равна 0, вторая равна 1 и т.д.)

  • Вы можете изменить "скрытый тайм-аут" (без меню); а также отобразить обратный отсчет (GRUB_HIDDEN_TIMEOUT_QUIET=false)
  • Вы можете принудительно отобразить меню grub, закомментировав два GRUB_HIDDEN линии с # в начале строки
  • И установите тайм-аут меню grub (по умолчанию 10 секунд).

  • Внесите свои изменения, нажмите Ctrl + S чтобы сохранить и Ctrl + Q чтобы выйти

  • Важный: Откройте терминал с помощью Ctrl + Alt + T и введите sudo update-grub чтобы применить только что внесенные изменения
  • Перезагрузитесь, и вы должны увидеть изменение вашего тайм-аута / записи по умолчанию

Связанный Вопрос:

Если вы прочтете файл, который вы редактируете в приведенном выше примере (/etc/default/grub), вы заметите, что самые первые две строки инструктируют вас выполнить update-grub после внесения изменений, чтобы обновить фактический файл, который grub считывает, чтобы "получить его инструкции" (/boot/grub/grub.cfg). Обратите внимание, что вы должны фактически запустить его с помощью sudoсначала выполните команду, так как вам нужны права суперпользователя, чтобы фактически выполнить команду (именно поэтому на плакате выше было сказано ввести sudo update-grub). Это приведет к тому, что внесенные вами изменения будут записаны в /boot/grub/grub.cfg. Следующие несколько строк сообщают вам, что вы можете прочитать полную документацию по параметрам в этом файле (опять же, /etc/default/grub), набрав info -f grub -n 'Simple configuration'.

Тем не менее, установите GRUB_TIMEOUT равным -1, если вы хотите установить "время загрузки" на неопределенный срок. Другими словами, он никогда не загрузится автоматически. Вам придется сделать выбор.

Наконец, чтобы ответить на ваш вопрос, вот описания этих "скрытых строк grub" прямо из вышеупомянутой документации:

GRUB_HIDDEN_TIMEOUT    Wait this many seconds for a key to be pressed before displaying    the menu.  If no key is pressed during that time, boot    immediately.  Unset by default.GRUB_HIDDEN_TIMEOUT_QUIET    In conjunction with `GRUB_HIDDEN_TIMEOUT', set this to `true' to    suppress the verbose countdown while waiting for a key to be    pressed before displaying the menu.  Unset by default.

Я надеюсь, что это поможет!

Вы можете использовать приложение под названием Настройщик личинки. Это гораздо проще.

Вы можете установить его с помощью:

sudo add-apt-repository ppa:danielrichter2007/grub-customizersudo apt-get updatesudo apt-get install grub-customizer

Если вы получаете ошибки при добавлении ppa, возможно, grub-customizer уже включен. Попробуйте установить без добавления ppa.

Об этом есть статья с практическими рекомендациями, Как настроить загрузочное меню Linux GRUB 2 простым способом. Кроме того, на форумах Ubuntu есть решенная тема, Измените порядок загрузки в GRUB 2 в котором упоминается этот инструмент.

Вот несколько снимков экрана этого программного обеспечения:

screen_1

screen_2

screen_3

Я последовал первому ответу, но, похоже, он нуждается в обновлении, если вы выполняете двойную загрузку с Windows 7 Pro и Ubuntu 16.04. Также убедитесь, что в BIOS отключена безопасная загрузка.

а) Сначала он говорит использовать Alt + F2 когда я думаю, что он хочет использовать, чтобы открыть окно терминала. В моем случае это Ctrl+Alt+T.

б) В первой записи gksudo gedit /etc/default/grub то gksudo команда не установлена по умолчанию в Ubuntu 16.04. Чтобы обойти это, выполните следующие действия в терминале:

sudo -i и нажмите Enter и введите свой пароль, а затем Enter снова.

затем введите:

gedit /etc/default/grub и нажмите Enter.

c) Теперь вы увидите выкапывать измените меню, как показано в ответе 1. Следуйте его ответу, пока он не доберется до Ctrl + S чтобы сохранить изменения. Это не работает в Ubuntu 16.04, но вы должны увидеть кнопку сохранения в правом верхнем углу экрана. Нажмите на это.

d) Ctrl + Q бросить курить.

e) Следующий тип sudo update-grub и Enter

f) Тип exit. Вам нужно сделать это дважды.

g) Перезагрузка

Я обнаружил, что на моем компьютере после нескольких входов в систему процесс загрузки не будет показывать выкапывать экран при запуске, и поэтому я не мог войти в Ubuntu, так как я установил Windows в качестве загрузки по умолчанию с задержкой в 7 секунд на случай, если я захочу войти в Ubuntu.

Чтобы исправить эту проблему, вам нужно войти в Windows.

  1. Нажмите на меню "Пуск" и введите CMD в поле поиска.

  2. Щелкните правой кнопкой мыши на строке CMD, которая должна находиться в верхней части экрана, созданного щелчком правой кнопки мыши.

  3. Нажмите на запуск от имени администратора.

  4. В командной строке введите bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi. Эта запись приводит к регистрации меню grub в диспетчере загрузки Windows. (Заслуга: Grub не отображается при запуске для Windows 8.1 Ubuntu 13.10 с двойной загрузкой)

  5. Наконец, я перезагрузился обратно в Windows.

Я надеюсь, что это поможет.

Использование записи по умолчанию, идентифицированной номером, удивило меня, так как она была введена в GRUB. Это действительно плохая идея. Существует множество ситуаций, которые приведут к изменению нумерации (т.е. обновлению с помощью резервных копий записей).

Вместо этого используйте сохраненный чтобы запомнить последнюю выбранную запись. Обновление /etc/default/grub с:

GRUB_DEFAULT=savedGRUB_SAVEDEFAULT=true

Затем примените обновление GRUB с помощью:

sudo update-grub

Ссылка: http://www.gnu.org/software/grub/manual/grub/grub.html#Simple-configuration

У меня это тоже не работает 16.04.

Но я исправил это, изменив файл /boot/grub/grub.cfg

sudo vim /etc/default/grub

редактировать личинку

sudo update-grubsudo chmod u+w /boot/grub/grub.cfgsudo vim /boot/grub/grub.cfg

изменить значение тайм-аута

###segment in /boot/grub/grub.cfg:set timeout_style=menuif [ "${timeout}" = 0 ]; then  #set timeout=10 # comment this original  set timeout=0 # add thisfisudo chmod -w /boot/grub/grub.cfgreboot

В 20.10 (по крайней мере) с машиной на базе EFI вам необходимо указать GRUB_RECORDFAIL_TIMEOUT как тайм-аут из-за того, что, на мой взгляд, является ошибкой (https://bugs .launchpad.net/ubuntu /+источник/grub2/+ошибка/1918736)

Как таковой ваш /etc/default/grub должен содержать:

GRUB_RECORDFAIL_TIMEOUT=10

на 10-секундный тайм-аут.

ЧТОБЫ обновить конфигурацию grub и проверить правильность вывода:

sudo update-grub && grep -B3 "set timeout=" /boot/grub/grub.cfg

И вы должны увидеть:

...if [ $grub_platform = efi ]; then  set timeout=10...

Я думаю, у вас есть такая фраза:

GRUB_TIMEOUT_STYLE=hidden

Измените его на:

GRUB_TIMEOUT_STYLE=menu

И прокомментируйте все строки, касающиеся HIDDEN особенности.

Это можно легко сделать без каких-либо кодов. Просто выполните следующие действия.

  1. Откройте файловую систему.
  2. Открыть /etc папка.
  3. Открыть default папка.
  4. Найди grub файл и откройте его с помощью leafpad (или любой другой текстовый редактор).
  5. Набор GRUB_TIMEOUT к вашей потребности и сохраните ее.
  6. Теперь откройте терминал и введите update-grub.
  7. Перезагрузите свою систему.

Это оно.

Что касается настройки записи Grub по умолчанию, вы можете использовать (по крайней мере, в Ubuntu 20+, CentOS 7+ и Debian 10+) grub-set-default.

Вы используете это в сочетании с пунктом меню в вашем grub.cfg файл (на моем компьютере, хранящийся на /boot/grub/grub.cfg).

Например, если бы я хотел загрузить пункт меню:

menuentry 'GNU/Linux, with Linux 5.10.0-rc5.bm.1-amd64+' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.10.0-rc5.bm.1-amd64+-advanced-f3257130-7310-45a9-990b-d0393ee336f5'

Тогда я смогу сделать grub-set-default "GNU/Linux, with Linux 5.10.0-rc5.bm.1-amd64+" чтобы установить эту запись по умолчанию. Вы можете убедиться, что это сработало, проверив grubenv (хранится на моем компьютере по адресу /boot/grub/grubenv). Мой говорит

saved_entry=GNU/Linux, with Linux 5.10.0-rc5.bm.1-amd64+

Убедитесь, что у вас есть GRUB_DEFAULT=saved В вашем /etc/default/grub файл.

Вы также можете установить одноразовую загрузку только с помощью команды grub-reboot, таким же образом, как и выше.

время загрузки означает время обратного отсчета, когда я должен выбрать ОС на стартовом экране BIOS. Извините, но я точно не знаю, как называется это меню выбора операционной системы, поэтому я опубликовал его как grub time.

Не могли бы вы дать больше информации? Что вы подразумеваете под “временем загрузки” и какова ваша операционная система по умолчанию. В вашем меню grub какие разные строки?