web-dev-qa-db-ja.com

UEFIでLinuxディスクをMBRからGPTに変換するにはどうすればよいですか?

Linuxボックス(Ubuntu 16.04)があり、そのブートディスクはMBRを使用してパーティション分割されています。どうすればGPT + UEFIに変換できますか?

3
Chris Jones

開始する前に、バックアップがあることを確認し、Linuxライブブートがシステムをレスキューする準備ができていることを確認してください。これを台無しにするのは簡単です!

  1. Gdiskを使用して、パーティションテーブルをGPTに変換します。

    gdisk /dev/sda

  2. GRUBに必要な「BIOSブート」パーティションを作成します。

    n新しいパーティションを作成します。約1MBである必要があります。あなたはおそらくセクター34-2047からこれを絞ることができます。 Lまたはlを使用して、「BIOSブート」(ef02)のコードを検索します。

  3. 新しいパーティションテーブルを書き込みます。

    w

  4. パーティションテーブルをリロードします。

    partprobe /dev/sda

  5. 新しいパーティションスキームを使用して、GRUBブートローダーを再インストールします。

    grub-install /dev/sda

    必要に応じて、再起動して機能していることを確認します。 UEFIではなくGPTのみが必要な場合は、ここで終了できます。

  6. Gdiskを使用して、「EFIシステム」パーティション(ESP)を追加します。公式には100-500MBですが、私の場合は130kBしか使用していません。ディスク上の任意の場所に配置できるため、物理ディスクなどのサイズ変更できないメディアを使用している場合は、最後に置くことを検討してください。

    gdisk /dev/sdaおよびnを使用してパーティションを作成します。

  7. ESP EFI-systemのような空白のない特徴的なラベルを付けます。これは、fstabでパーティションラベルを参照するためです。

    cはラベルを設定します。

  8. パーティションテーブルを書き込みます。

    w

  9. パーティションテーブルをリロードします。

    partprobe /dev/sda

  10. ESPのファイルシステムを構築します。

    mkfs -t vfat -v /dev/disk/by-partlabel/EFI-system

  11. ESPマウントポイントを作成します。

    mkdir /boot/efi

  12. ESP to /etc/fstabを追加します。次のようになります:

    / dev/disk/by-partlabel/EFI-system/boot/efi vfat defaults 0 2

  13. ESPをマウントします。

    mount /boot/efi

  14. GRUB EFIブートローダーをインストールします。

    grub-install --target=x86_64-efi /dev/sda

  15. リブート。
  16. BIOSをBIOSブートからUEFIブートに変更します。
  17. ワンタイムブートメニューを使用して、ディスクを強制的にブートします。ディスクに移動する必要がある場合があります-> EFI-> ubuntu-> grubx64.efi
  18. GRUBのEFIブートローダーを再インストールして、UEFIブートセレクターを更新します。

    grub-install

リソース:

2
Chris Jones