web-dev-qa-db-ja.com

キーを押すまで、Grub2のスプラッシュ画面が非表示モードで表示されない

ターンキーコアの形でLucidを使用します。デフォルトでWindowsを起動するようにGrubを設定し、リカバリモードとしてUbuntuを起動するオプションと、デフォルトのイメージをWindowsパーティションに復元するスクリプトを使用しています。

アイデアは、回復オプションのためにShiftを押し続けるようにユーザーに指示するスプラッシュ画面を用意することです。そうしないと、Windowsが起動するだけです。

残念ながら、スプラッシュ画面は機能しますが、キーを押すまで表示されません。矢印キー、文字、数字はすべて機能しているように見えるため、どのキーでも問題ないようです。その時点で、スプラッシュ画面が表示され、左上隅に表示されます。これはGRUB_HIDDEN_TIMEOUTのように見え、キーを押すたびに数値が更新されます。それ以外の場合は、実際のカウントダウンが終了するまで静的なままです。 (これは、GRUB_HIDDEN_TIMEOUT_QUIETがfalseに設定されているため、カウントダウンも表示されていないことを示していると思います。)この時点からすべてが正常に機能します。Shiftキーを押すとメニューが表示され、それ以外の場合はWindowsが起動します。 。

#11 here を使用して、マルチOSモードでメニューを非表示にしました。

何か案は?

説明:私の問題は、キーを押すまでスプラッシュ画面が表示されないことです。スプラッシュ画面が単独で表示されるようにする必要があります。

/ etc/default/grubおよび/boot/grub/grub.cfgの内容が利用可能です ここ

1
jdw

OPに代わって回答として投稿:

スプラッシュ画面を完全に無視し、ネストされたGrubメニューを使用するという提案を受けた後、私はそれを試してみることにしました。その過程で、タイムアウトが0のGrubメニューを作成し、configfileを介して別のGrubを自動的にロードできることを発見しました。そうすることで、実際に2番目のメニューのスプラッシュ画面がトリガーされます。したがって、grub.cfgにはこれが含まれ、デフォルトは1に設定され、タイマーは0に設定されています。

menuentry "Other menu" { configfile (hd0,1)/boot/grub/othergrub.cfg }

2番目のGrubをロードすると、2番目のGrubのスプラッシュ画面も問題なくロードされます。キーを押す必要はありません。

奇妙な回避策ですが、それでうまくいきます。

2
Tom Brossman