通常、ブートメニューには2〜3個のOSがあります。
デフォルトの選択(この場合はWindows 7)以外のOSを使用していて再起動すると、GrubはUbuntu 10.04で起動します。これは起こらないはずです。Windows7で再起動したときに、Windows 7のままにしておきたいのですが、最後の選択を記憶して起動するようにGrubを構成する方法はありますか?
あるいは、Grub onlyを再起動したときに(最初にコンピューターの電源を入れたときではなく)これを行った方がよいでしょう。私はこれが可能ではないかもしれないことを理解しているので、単純な最後の選択を思い出すことに満足しています。
元のGrubでは、/ boot/grub/menu.lstで、defaultキーワードをに設定してこれを行います。 "saved"そして、各ブートメニューエントリでsavedefaultキーワードを使用します。
更新:
Grub2はもう少し複雑です。それもまた進化を続けているため、Ubuntu 9.10と10.04の両方でGrub2を使用していますが、興味深いものにするためにパッケージ化および構成する方法には十分な違いがあります。
両方でsavedefaultトリックを実行する方法は次のとおりです。
Ubuntu 10.04:
9.10方向はトリックです。 Lucidははるかに簡単です。詳細については buntuのヘルプ を参照してください。 / etc/default/grubで2つの変更を行う必要があります。
GRUB_DEFAULT=0
を読み取る行をGRUB_DEFAULT=saved
に変更します
GRUB_SAVEDEFAULT=true
を含む行を追加
それでおしまい。実はそんなに悪くないのでは? Sudo update-grub
を実行することを忘れないでください。
Ubuntu 9.10:
これを機能させるために、Ubuntuフォーラムにはいくつかのハックがあります。どうやらsavedefaultキーワードはGrubv1.97ではバグがありました。 buntuフォーラムのこの投稿 1つの方法を提供します。 別の投稿が示唆しています 少し簡単な方法:
GRUB_DEFAULT = savedを/ etc/default/grubに設定します。
これらの2行を /etc/grub.d/40_custom (下部近く、 "exec tail"行の後):
saved_entry=${chosen}
save_env saved_entry
私はこの方法をUbuntu 9.10でテストしましたが、うまくいきました。次回の起動では、最後に選択したエントリが自動的に強調表示されます。タイムアウトと組み合わせると、これは最後に起動したOSで自動的に起動します。
そして、Sudo update-grub
を実行することを忘れないでください。変更が終了した後。それは重要で、恥ずかしいほど忘れがちです。
Grubにはrebootとcold bootを区別する方法がないため、Grub自体では再起動時にこれを実行できません。ただし、Linuxを起動している場合は、Sudo grub-set-default N
(Nは0から始まるブートメニューエントリの番号)を使用して、次の起動時にエントリNを選択するように設定できます(エントリの代わりに)保存)。
理論的には、grub-set-defaultを実行したシャットダウンルーチン( pstartスクリプト 、おそらく)にフックしたものを一緒にハックすることができます。 Linuxにシャットダウンするように指示しました(ただし、再起動するように指示したときはそうではありません)。ただし、Windowsをシャットダウンすると、同じ機能は得られません。
GrubをFAT32またはNTFS/ bootパーティションにインストールすることを含むGrub4DOSまたはGrub1テクニックについて聞いた-これはgrubも実行できるようにする-set-default(Windowsの場合)。Windowsのログオフスクリプトから呼び出すことができます。前回それについて何かを見たとき、これはGrub2では不可能でした。それは今では変わっているかもしれません。
この投稿 はおそらくあなたにとって役に立つでしょう、それはかなり自明です。 10.04と9.10は同じGRUBバージョンを使用するため、状況はまったく同じである必要があることに注意してください。