web-dev-qa-db-ja.com

GRUBブート順序を変更するにはどうすればよいですか?

共有マシンにWindows 7とUbuntuの両方がインストールされています。多くの非開発者がWindowsを使用しているので、起動順序を変更して簡単にしたいと思います。

現在、起動順序は次のようになっています。

  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86(セーフブート)
  • 記憶力試験
  • 記憶力試験
  • /dev/sda6上のWindows 7

Windows 7がリストの一番上になるようにデフォルトの順序を変更するにはどうすればよいですか?

  • /dev/sda6上のWindows 7
  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86(セーフブート)
  • 記憶力試験
  • 記憶力試験
334
chrisjlee

Grub Customizer という使いやすいGUIアプリケーションを使用して、生活を少し楽にすることができます。名前が示すように、GRUBメニューエントリを並べ替えるだけではありません。

次の方法でインストールできます。

Sudo add-apt-repository ppa:danielrichter2007/grub-customizer
Sudo apt-get update
Sudo apt-get install grub-customizer

(Ubuntuに質問するPPAはシステムに追加しても安全ですか?また、注意すべき「レッドフラグ」は何ですか?を参照してください。)

How-To Geek それに関する記事があります、Linuxの設定方法GRUB 2簡単なブートメニュー。興味があるなら、それを見てください。また、Ubuntuフォーラムには解決済みのスレッドがあります。GRUB 2の起動順序を変更このツールについて言及しています。

スクリーンショットは次のとおりです。

screen_1

screen_2

screen_3


いくつかのトラブルシューティング:

Grub Customizerの設定は、Grubをインストールした最新のLinux/Ubuntuインストール内でのみ機能する場合があります。

たとえば、誰かが2つのOS-es(WindowsとUbuntu)をインストールしてから、3番目のOS(Manjaroなど)をインストールしてから上記の回答に従うようにすると、Grub Customizerの変更は2番目のOS( Ubuntu、例では)。 Grub Customizerは、それ自体がインストールされているシステムのインストールによって作成されたGrubファイルのみを編集できるように見えるため、プログラムはthirs OSにインストールする必要があります。

Grubブートメニューを決定するファイルは、ほとんどの場合、マシンにインストールされた最新のシステムに付属しているため、Grub Customizerをインストールして使用する必要がありますthat Linuxシステム。

294
Nitin Venkatesh

追加のツールをインストールせずに、コマンドラインからgrubのデフォルトのブートエントリを変更することもできます。これはリスト内の順序を変更しませんが、デフォルトで別のOSを起動できるようにします。

まず、/etc/default/grubのバックアップコピーを作成します。何か問題が発生した場合は、既知の正常なコピーに簡単に戻すことができます。

Sudo cp /etc/default/grub /etc/default/grub.bak

次に、vimまたは選択したテキストエディターを使用してファイルを編集します。

Sudo vim /etc/default/grub

を含む行を見つける

GRUB_DEFAULT=0

に設定します

GRUB_DEFAULT=x

ここで、xは、デフォルトで起動するgrubメニュー項目のインデックスです。メニュー項目のインデックスはゼロであることに注意してください。つまり、リストの最初の項目は0であり、6番目の項目は実際には5であることを意味します。したがって、リストの6番目の項目から起動するには、次の行が表示されます。

GRUB_DEFAULT=5

アイテムの順序を忘れた場合は、/boot/grub/grub.cfgをご覧ください。各メニューエントリは、次のタイプの行で指定されます。

menuentry 'Ubuntu' [options] {

インデックスの代わりに名前でデフォルトを選択することもできます、例:

GRUB_DEFAULT='Ubuntu'

menuentry 'Ubuntu'/boot/grub/grub.cfg行があった場合。これは、変更される可能性のあるエントリの順序に依存しないため、より良い方法です。

「以前のLinuxバージョン」サブメニューでカーネルを使用するには、次を使用します。

GRUB_DEFAULT="Previous Linux Versions>x"

(引用符を必ず含めてください)。ここで、xはサブメニューの古いカーネルのインデックス、または/boot/grub/grub.cfgに表示されるカーネルの名前です。例えば、

GRUB_DEFAULT="Previous Linux Versions>4.13.0-43-generic"

次に、更新されたgrubメニューを作成します。

Sudo update-grub
239
dcharles

tombuntuサイトTom による記事)から:

GRUBは、/etc/default/grubファイルを使用して構成できます。変更する前に、コピーを作成してバックアップすることをお勧めします。

Sudo cp /etc/default/grub /etc/default/grub.bak

元のバックアップをコピーして復元できます。

Sudo cp /etc/default/grub.bak /etc/default/grub

Root権限でテキストエディターを使用してファイルを開きます。

gksu gedit /etc/default/grub

GRUB_DEFAULT=0は、GRUBが起動する最初のメニュー項目を選択することを意味します。これをGRUB_DEFAULT=savedに変更します。この変更により、後でデフォルトのアイテムを簡単に変更できます。

ファイルを保存して閉じます。 GRUBの構成に変更を適用するには、次のコマンドを実行します。

Sudo update-grub

構成の変更により、grub-set-defaultおよびgrub-rebootコマンドをいつでも使用できます。これらにより、それぞれデフォルトのブート項目を永続的に変更したり、次回のブート時にのみ変更したりできます。

grub-set-defaultまたはgrub-rebootSudoを使用)を起動するメニュー項目の番号(最初の項目は0)で実行します。このコマンドは、デフォルトを2番目の項目に変更します。

Sudo grub-set-default 1
39
silenTK