GRUB_DISABLE_LINUX_UUID=true のコメントを外すと何が起こりますか?

GRUB_DISABLE_LINUX_UUID=true のコメントを外すと何が起こりますか?

/etc/default/grub で GRUB_DISABLE_LINUX_UUID=true のコメントを外すと何が起こるでしょうか。

答え1

  • まあ、その行の上のコメントがすべてを物語っていると思う
    # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux

  • その行のコメントを解除すると、root= は UUID ではなくデバイス名として渡されます。

    linux /boot/vmlinuz-2.6.30-1-amd64 root=UUID=...

    linux /boot/vmlinuz-2.6.30-1-amd64 root=/dev/sdX

  • ただし、その行のコメントを解除することはお勧めしません。新しいパーティションを削除または作成すると、パーティション テーブルが変更されるためです。
  • そのため、システムを起動することはできません。

答え2

コメントを外すと、次に grub が /boot/grub.cfg を再生成するときに、UUID の代わりに絶対デバイス名 (例: /dev/sdXY) が配置されるようになります。

パーティションテーブルでパーティションを再配置すると(たとえば、パーティションの挿入/削除)、パーティション番号が変更され、grubは起動するカーネルを見つけることができません。

UUIDを使用すると、パーティションを再配置しても問題は発生しません。

UUID の欠点は、長いため覚えるのが難しいことです。

答え3

実際のところ、ディスクをシステムに追加することは重要です。ディスクが以前は /dev/sda で、唯一のドライブとして SATA1 に接続されていて、その後 2 番目のドライブを追加して SATA0 に接続した場合、そのディスクは /dev/sda になり、root= マッピングは無効になります。ただし、UUID は一意の識別子であるため、この問題はありません。

また、拡張カードが複数ある場合、それらのカードがわずかに異なるタイミングで検出されることがあり、その結果、それらのカードに接続されているドライブに異なるドライブ名が割り当てられます。この場合も、UUID は影響を受けません。また、ドライブが故障した場合、別のドライブがその場所を引き継ぐことがあります。たとえば、/dev/sda が故障した場合、次回の起動時に /dev/sdb が魔法のように /dev/sda になることがあります。これはよく起こります。

システムが大きくなればなるほど、または大きくなる可能性が高いほど、起動時にドライブがシャッフルされる可能性が高くなると思います。

個人的には、root= に UUID を使用することは好きではありませんが、それが適切な場所にあることは理解しています。

関連情報