
Ubuntu日本語フォーラム

ログインしていません。
UBUNTU8.10を使用しています。
カーネルの追加が実行されました。
それはよいのですが、menu.lstにデュアルブートのためのエントリを追加しています。
この起動ディフォルト値が狂ってしまいます。2世代のところが3世代になったことによる、
ディフォルト値の変更を、2つ増加すればよいことですが、カーネルの世代管利を、2世代に
抑えれば、これらの操作は不要になります。
そこで質問は、カーネルの世代数を設定しているモジュールとそのタグ名を教えてほしいのですが、
よろしくお願いします。
オフライン
どちらかというとマルチブートの構築方法が間違っています。
両方書くのは大変なので、
a. savedefaultを使い、「最後に起動されたエントリを次も使う」ようにする。
b. default boot entryを勝手に変更されないように設定する。
どちらがお好みでしょう? お好みの方の設定手順を書こうと思います。
オフライン
> どちらかというとマルチブートの構築方法が間違っています。
ということは、カーネルの世代管理数の指定する箇所はないということですね。
> b. default boot entryを勝手に変更されないように設定する。
こちらの方で、WINDOWS XPを既定値としたいです。
しかし、世代管理はできないということは、ユーザーの方で削除しないといけないということになるのでしょうか。
/boot/grub/defaultの中に、「7^@」とかありましたね。これで制御するのでしょうか。
7という数値は、WINDOWS XPのエントリ番号だったので記憶していました。
不要になったKernel削除方法も取得しておかないといけないのですか。
オフライン
> a. savedefaultを使い、「最後に起動されたエントリを次も使う」ようにする。
これは、menu.lstの中で、savedefaultを消すか、消さないかだと思います。
本当に、世代管理の既定値を設定するモジュールはないのかが知りたいです。
オフライン
menu.lstのどこかに
# updatedefaultentry=true
してください。たぶんお望みの挙動になるでしょう。
yakan9 による投稿:
ということは、カーネルの世代管理数の指定する箇所はないということですね。
ありますがお勧めしかねます、というのが正直なところです。
8.10以降は「不要になった」ものを自動的に判断し、システム側で能動的に消そうとする機能が付いています。これは世代管理するのではなく「最後に正常起動したカーネル」以外には削除可能のフラグを立てるものです。総称してlast-good-bootと呼ばれています。
https://wiki.ubuntu.com/KernelTeam/removing-old-kernels
……が、この機能は激しくワケわからん問題が出るおそれがある(というか出まくった)ので、デフォルトでは無効になっています。
/etc/default/kernel-helper-rcにDISABLE_LAST_GOODとかいう行があるのでこいつをコメントアウトするなり、=0にしてdisableしてやれば有効になります。
充分なトラブルシューティングができる自信がないなら触らない方がよいでしょうが、余計なカーネルを削除したければテストしてみてもいいかもしれません(でも、「何かあったとき」に悲惨な目に遭うで可能性があります)。
オフライン
ありがとうございます。
そういう裏があるとは、知りませんでした。
menu.lstの中の、howmanyなのかなと思っていましたが、違いましたか。
確かに、ユーザー側で、kernel削除となると、どこまで削除していいのやら、
不明点が多いです。
Fedoraは、/etc/yum.conf のinstallonly_limitでできたので、
てっきりどこかにあると思っていました。
/etc/default/kernel-helper-rcが、関係していましたか。
何となく、これもチェックしていましたが。
/bootパーティションを独立させて運用している場合、サイズを少し多めに取っておく必要がありそうですね。
Fedoraほどの頻度ではないにでしょうけど。
早速実行して様子を見ます。ありがとうございました。
オフライン