私の[〜#〜] uefi [〜#〜]コンピューターの起動私は[〜#〜] lvm [〜#〜]を使用して新しいUbuntu 18.04.1 LTSをインストールしました数か月前のパーティション構成。
_$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 vfat 79DE-0D6B /boot/efi
└─sda2 LVM2_member ZBlrfj-ZwAJ-2T3b-gUHr-eKVw-nhIi-9bQQTs
├─ubuntu--vg-root ext4 e85edc94-cc00-42c5-8994-cbb835e8e315 /
└─ubuntu--vg-swap_1 swap e699c892-4046-4d0b-957a-f936cc4c9973 [SWAP]
_
すべての起動の最初の数か月は期待どおりに進みました。つまり、GRUB起動メニューは、システムが正しくシャットダウンされなかった場合にのみ表示されました。そのため、よく知られているrecordfail機能正常に動作するようでした。
しかし、それから数週間前、Ubuntu 18.04.2 LTSにシステムをアップグレードした後、GRUBブートメニューは、30秒のタイムアウトで、ブートごとに表示されるようになりました。もちろん、長い目で見れば、これは面倒です:
Grub構成ファイルを検査した後、_/boot/grub/grub.cfg
_がわかりました。recordfail機能は、LVMの使用に関して---(brokenとして宣言されています! recordfail機能が無効にされたため、GRUB=は毎回の起動で起動メニューを表示し続けます。
_ set recordfail=1
# GRUB lacks write support for lvm, so recordfail support is disabled.
_
この永続的な無効化されたrecordfail機能のソースは、check_writable()
関数のさらなるGRUB構成生成スクリプト_/etc/grub.d/00_header
_で見つけました。
_ abstractions="$(grub-probe --target=abstraction "${grubdir}")"
for abstraction in $abstractions; do
case "$abstraction" in
diskfilter | lvm)
cat <<EOF
# GRUB lacks write support for $abstraction, so recordfail support is disabled.
EOF
return 1
;;
esac
done
_
ご覧のとおり、著者は2つのモジュールdiskfilter
とlvm
を宣言して、recordfail機能を停止しました。その結果、毎回の起動で30秒という厄介なタイムアウトが発生しました。
これまでのところこれが現状であり、すべてが期待どおりに機能しているように見えます...しかし、なぜレコードフェイル機能が最初からうまく機能したのでしょうか。それを無効にする原因である未解決のバグはありますか?ブートローダーとパーティション構成のこのコンステレーションを実行している地球上で唯一の人ですか?誰かがこの謎を解決できることを楽しみにしています。
前もって感謝します
/ EDIT迷惑なGRUBブートメニューのタイムアウト)を単に解消したくありません。代わりに、この動作のために、下にある問題がどこにあるのかを理解したいのですが、です。
私もこの問題に気づきました。 1月9日からのこの変更に関連しているようです
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1800722
元のバグ修正によって引き起こされた問題を修正するためにバグが提出されたようです
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1815002