いつの間にかデュアルブート環境でGRUBメニューが強制的に出るようになっていました。
今までは?
今までは/etc/default/grub
のGRUB_DEFAULT=0 #GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=2 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="" GRUB_CMDLINE_LINUX=""
#GRUB_HIDDEN_TIMEOUT=0
のコメントを外すだけでいけたような記憶があります。
今は?
単にGRUB_HIDDEN_TIMEOUT=0
にするだけだと
# update-grub Generating grub configuration file ... Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.こんな警告メッセージが出てしまいます。 さらに
GRUB_TIMEOUT=0
にすると警告は消えるのですが、この状態ではなぜかメニューが出てしまいました。
/boot/grub/grub.cfg
の中にこんな記述を発見。
if [ "${timeout}" = 0 ]; then set timeout=10 fiなにこれ強制的に10にしてんの?
結局どうした?
調べた限りではこの条件を取り除く方法は見つかりませんでした。かといってこのファイルは自動生成されるので、直接編集するのはスマートな方法じゃないですよね。試行錯誤の末にこうやりました。
GRUB_DEFAULT=0 #GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=00 # ←ここがポイント GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX=""
GRUB_TIMEOUT=00
がポイント。0じゃなくて00にすればさっきの条件には引っかからないぞっと。もう一度
update-grub
後に再起動したら、無事メニューが表示されずにLinuxが起動されました。
0 件のコメント:
コメントを投稿