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

Всегда сложно показать меню grub и множество ответов на эти вопросы. Ответ, кажется, держит сдвиг, но это не работает на последовательной консоли (на самом деле последовательный поверх локальной сети)

Я пробовал спамить пространство и бежать безрезультатно.

Это сервер, который проходит довольно много времени, чтобы пройти биос, и это делает его еще более сложным и трудоемким.

Есть ли хорошее решение для надежного ввода grub?

Очевидно, что редактирование / etc / default / grub поможет, но сейчас уже слишком поздно.

2 ответа

Решение

Не идеальное решение, но редактирование конфигурации с использованием живого USB исправило проблему.

Чтобы избежать этой проблемы в будущем, конфигурация grub исправлена ​​для отображения меню загрузки.

Время загрузки серверов в любом случае очень велико, поэтому добавление 10 секунд меню grub стоит того, когда что-то не работает.

Вот фиксированная конфигурация /etc/default/grub:

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT_QUIET=false
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

GRUB_CMDLINE_LINUX_DEFAULT="splash quiet"
# Kernel console on both serial and kvm/local console
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8 rootdelay=60"
# Show grub menu on both serial and kvm/local console
GRUB_TERMINAL="console serial"
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1"

Ubuntu 18.04 рабочий стол минимальное изменение

Вот минимальное изменение /etc/default/grub Мне нужно было сделать на Ubuntu 18.04 изображение на рабочем столе, чтобы все работало хорошо:

# Show the menu by default. Otherwise, you have to press ESC to see GRUB:
# https://Ask-ubuntu.ru/questions/16042/how-to-get-to-the-grub-menu-at-boot-time/1091821#1091821
-GRUB_TIMEOUT_STYLE=hidden
+#GRUB_TIMEOUT_STYLE=hidden

# Optional kernel options that you very likely want. Don't affect GRUB itself.
# Remove quiet to show the boot logs on terminal. Otherwise, you see just init onwards.
# Add console=ttyS0, or else kernel does not output anything to terminal.
-GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
-GRUB_CMDLINE_LINUX=""
+GRUB_CMDLINE_LINUX_DEFAULT=""
+GRUB_CMDLINE_LINUX="console=ttyS0"

# Show grub on both serial and on display.
-#GRUB_TERMINAL=console
+GRUB_TERMINAL="console serial"

а потом:

sudo update-grub

Протестировано с этой настройкой QEMU: https://Ask-ubuntu.ru/revisions/1046792/24

Сначала я вошел в систему с графическим интерфейсом, отредактировал эти настройки, а затем перезагрузил виртуальную машину.

Ubuntu 18.04 облачное изображение

Имейте в виду, что это изображение также имеет файл:

/etc/default/grub.d/50-cloudimg-settings.cfg

который переопределяет настройки из /etc/default/grub,

Помимо настроек рабочего стола, вам также необходимо установить:

GRUB_TIMEOUT=10

так как по умолчанию 0 и не дает вам времени для доступа к меню GRUB.

Протестировано с этой настройкой: есть ли готовый образ QEMU Ubuntu (32bit) онлайн?

Другие вопросы по тегам