web-dev-qa-db-ja.com

grub2に最後の選択を記憶させる方法は?

Grub2-コミュニティUbuntuドキュメント は次のように述べています:

DEFAULT = savedが/ etc/default/grubで設定されている場合、Sudo grub-set-defaultを実行することでOSを保存できます。 GRUB_SAVEDEFAULT = trueが/ etc/default/grubでも設定されている場合にも保存されます。この場合、新しいOSがGRUB 2メニューから手動で選択されるか、grub-set-defaultコマンドが実行されるまで、デフォルトOSは残ります。

DEFAULT=savedGRUB_SAVEDEFAULT=trueおよび/etc/default/grubの行を挿入し、Sudo grub-set-defaultを実行しました。出力は次のとおりです。

$ Sudo grub-set-default
entry not specified.
Usage: grub-set-default [OPTION] entry
Set the default boot entry for GRUB.

  -h, --help              print this message and exit
  -v, --version           print the version information and exit
  --boot-directory=DIR    expect GRUB images under the directory DIR/grub
                          instead of the /boot/grub directory

ENTRY is a number or a menu item title.

Report bugs to <[email protected]>.

ドキュメントに正しく従っていませんか?これを行う正しい方法は何ですか?

100
Jay Sullivan

この場合のドキュメントは間違っています。 /etc/default/grubのすべての変数はGRUB_で始まるため、GRUB_DEFAULT=savedであるため、notDEFAULT=savedです。 Ubuntuのwikiを修正して、それを反映させました。

公式のgrubマニュアルはこれを正しく説明しています: http://www.gnu.org/software/grub/manual/grub.html#Simple-configuration

/etc/default/grubに次を入力します。

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

次に実行します:

Sudo update-grub
150
Jordan Uggla

私の場合、savedefault行が欠落していた/etc/grub.d/40_customで定義されたエントリでは機能していませんでした。

menuentry "Chameleon" {
    savedefault ### <<<< this must be added
    set root="(hd1)"
    chainloader +1
}
3
ccpizza

番号を忘れています(つまり、テキストの「エントリは番号またはメニュー項目のタイトルです。」)。

Sudo grub-set-default 1

オプション1がデフォルトになります。

常にSudo update-grubファイルを変更して変更を適用した後、/etc/default/grubを実行します。

2
Rinzwind

自動生成されたgrub.cfgに適切なヘッダーがない場合、savedefaultは機能しません。

適切なヘッダーを生成するには、/ etc/default/grubに設定する必要があります

GRUB_DEFAULT=saved

grub-mkconfigを作成して、grub.cfgのコピーを置き換えます

grub-mkconfig -o /boot/grub.cfg

grub 2.02のsavedefaultは追加の引数を必要としません

Grub.cfgにsavedefaultのソースが表示されます

1
Dblmok