
Ubuntu日本語フォーラム

ログインしていません。
Ubuntu 9.04 Jaunty Jackalopeのkernelとbind9にセキュリティ・アップデートがかかりました。
今回のアップデートではkernelが2.6.28-14になることから、menu.lstを変更するかどうかダイアログボックスで選択することになります。セキュリティ・ホールがfixされたkernel 2.6.28-14にアップデートする時は "パッケージメンテナのバージョンをインストール" を選択してください。従来のkernelを使用する場合は(セキュリティ・ホールは放置されることになりますが) "現在インストールされている自分のバージョンを残す" を選択してください。
素朴な質問なんですが「パッケージメンテナのバージョンをインストール」を選択しなかった場合は、grubのメニューで新しく入れたはずの kernel が選択できなくなりますが、これって単純にはupdate-grubで直るんでしたっけ?
sudo dpkg-reconfigure -plow linux-image-2.6.(以下色々あるので割愛
ではupdate-grubまで実行されるので直った感があるのですが、debconfでどうするかは聞いてくれてないので...(^^;;
# とか書いておくとエロ^H^H偉い人たちが回答してくれるに違いない!!
オフライン
n_saitoさん による投稿:
素朴な質問なんですが「パッケージメンテナのバージョンをインストール」を選択しなかった場合は、grubのメニューで新しく入れたはずの kernel が選択できなくなりますが、これって単純にはupdate-grubで直るんでしたっけ?
単純に "updaste-grub" では直らないケースが https://forums.ubuntulinux.jp/viewtopic.php?id=5422 でした。"sudo dpkg-reconfigure hogehoge..." に関しては知識がありません Orz
# 偉い人に解説していただけると、すごく助かりますけど、お忙しそうです。
# というわけで自分も調べてみます。
startup-manager って grub2 でなくても使えるのでしょうか?もし使えるのなら、リカバリーは startup-manager が楽そうです。
お返事ありがとうございます。
avidya による投稿:
単純に "updaste-grub" では直らないケースが https://forums.ubuntulinux.jp/viewtopic.php?id=5422 でした。"sudo dpkg-reconfigure hogehoge..." に関しては知識がありません Orz
なるほど。単純ではないとのことですね。
update-grubとkernelパッケージのpostinstとかをhackしないとダメそうですね。
それともバックアップファイルのmenu.lst~を戻してそれからupdate-grubとかすると選択できるようになるのか...ちょっと手元で試せるPCがないのがツラいな...orz
オフライン
DEBIAN AUTOMAGIC KERNELS LIST内についてはupdate-grub一発で更新されるのが通常の挙動です。リンク先の話はいろいろ不明瞭な要素がありますが、「update-grubで本当にそのファイルが更新されているのか不明(というか、「本来lsb_releaseの出力で更新されるはずのtitleがUbuntu 8.10のまま」という時点でupdate-grubがmenu.lstを更新していない)」という問題があるので破則としてはとらえられない気がします。まあこの問題には後述するバグが確認されていて、踏んでいる可能性は高そうですが。
更新されない場合はmenu.lstのどこかのmagic keywordを壊してしまっているとか、/boot/以下に必要なファイルがないか、バグを踏んでいるか、という重篤な問題が潜在しているはずで、おそらくdebconfの質問にどう答えたかは本質的な問題ではありません。keepにしておくと以下のような状態になるはずですが、
$ sudo debconf-show grub
grub/update_grub_changeprompt_threeway: keep_current
という状態でも/boot 以下を読んで menu.lstは普通に更新されるはずなのです。menu.lstが更新されない場合は、sudo update-grub の出力に何か妙なものが含まれてると思います。
magicな値以外を触ってしまっている場合は、一度menu.lstをどっかに移動させてupdate-grubして、その後で書き戻すのが妥当だと思います。
で、update-grubしてもmenu.lstが更新されないぜという邪悪な問題は、
https://bugs.launchpad.net/ubuntu/+source/grub/+bug/202009
で報告されていて、まだ直っていません。
ていうので回答になってるでしょうか。
オフライン
hito による投稿:
という状態でも/boot 以下を読んで menu.lstは普通に更新されるはずなのです。menu.lstが更新されない場合は、sudo update-grub の出力に何か妙なものが含まれてると思います。
ぬぐあ。
すいませんこれは厳密には嘘で、「何か妙なものが含まれているかもしれません。が、バグにより、見た目正常にも関わらず更新されないこともありえます」が正解。
# バグのレポーターがJamie(security関連パッケージのメンテナ&USN書いてたりする人)というあたりに問題の根深さがあらわれてます。
オフライン
hito による投稿:
で、update-grubしてもmenu.lstが更新されないぜという邪悪な問題は、
https://bugs.launchpad.net/ubuntu/+source/grub/+bug/202009
で報告されていて、まだ直っていません。
どうもありがとうございますー。
まだまだLTS使うような初心者なのでubuntuなBTSとかを見てませんでしたー。X-(
# 先に調べとけ > 俺 orz
オフライン
hitoさん、解説ありがとうございます。
要点をまとめると以下の通りでよろしいでしょうか。
1.通常 "update-grub" を実行することで menu.lst は復旧する
2.menu.lst が復旧できない場合は以下の原因が確認されている
・menu.lstのmagic keywordを壊してしまっている
・/boot/ 以下にインストールしたはずのカーネル関連ファイルが存在していない
・bug 202009 により、menu.lst が更新されない
# 私も初心者のため助長的になってしまうことをお許しください
avidya による投稿:
要点をまとめると以下の通りでよろしいでしょうか。
1.通常 "update-grub" を実行することで menu.lst は復旧する
2.menu.lst が復旧できない場合は以下の原因が確認されている
・menu.lstのmagic keywordを壊してしまっている
・/boot/ 以下にインストールしたはずのカーネル関連ファイルが存在していない
・bug 202009 により、menu.lst が更新されない
はい。さらに状況をややこしくするのは、アップデート・アップグレード時に 2 に遭遇すると、「メンテナーのバージョンをインストール」しないと、一見すると新しいカーネルで起動できないかのように見える、ということです。
オフライン
Ubuntu Weekly Topicsでの吉田さんの記事で今回のセキュリティ・アップデートの詳細が解説されています。