web-dev-qa-db-ja.com

シリアルコンソールを使用してブート時にGRUBメニューにアクセスする方法は?

グラブメニューを表示するのは常に困難であり、それに関する多くの回答された質問です。答えはシフトを保持しているようですが、シリアルコンソール(実際にはLAN経由のシリアル)では機能しません

私はスペースをスパムしようとしましたが、無駄に逃げました。

これは、BIOSを渡すのに非常に長い時間がかかるサーバーであり、さらに困難で時間がかかります。

GRUBに確実に入力する良い方法はありますか?

明らかに/ etc/default/grubを編集することは役に立ちますが、今では手遅れです。

1
feitingen

完全な解決策ではありませんが、ライブ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"
1
feitingen

Ubuntu 18.04デスクトップの最小限の変更

うまく動作させるために、Ubuntu 18.04デスクトップイメージで行う必要のある/etc/default/grubへの最小限の変更を次に示します。

# Show the menu by default. Otherwise, you have to press ESC to see GRUB:
# https://askubuntu.com/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://askubuntu.com/revisions/1046792/24

最初にGUIで1回ログインし、それらの構成を編集してから、VMを再起動しました。

Ubuntu 18.04クラウドイメージ

この画像にはファイルもあることに注意してください:

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

/etc/default/grubの設定を上書きします。

デスクトップ設定に加えて、以下も設定する必要があります。

GRUB_TIMEOUT=10

デフォルトは0であり、GRUBメニューにアクセスする時間がないためです。

このセットアップでテスト: 事前に構築されたQEMU Ubuntuイメージ(32ビット)がありますか?