すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:MBRパーティションをGPTパーティションに変換する

最終更新日:Aug 23, 2024

Master Boot Record (MBR) パーティションスタイルでは、サイズが2 TiBを超えるディスクはサポートされません。 MBRディスクを2 TiB以上に拡張する前に、ディスクをGUIDパーティションテーブル (GPT) ディスクに変換します。 このトピックでは、LinuxまたはWindows Elastic Compute Service (ECS) インスタンス上のデータディスクのMBRパーティションをGPTパーティションに変換する方法について説明します。

LinuxインスタンスのデータディスクをMBRからGPTに変換する

Linuxインスタンス上のデータディスクをMBRからGPTに変換するには、次の手順を実行します。 このセクションの例では、Alibaba Cloud Linux 3.2104 LTS 64ビットパブリックイメージと、デバイス名が /dev/vdbであるデータディスクが使用されています。 操作は、インスタンスのイメージとディスクによって異なる場合があります。

  1. (オプション) ディスクデータをバックアップするために、MBRからGPTに変換するデータディスクのスナップショットを作成します。

    詳細については、「ディスクのスナップショットの作成」をご参照ください。

    説明
    • ほとんどの場合、元のディスクパーティションに保存されているデータは、Linuxインスタンス上のMBRディスクをGPTディスクに変換しても失われません。 誤った操作によるデータの損失や例外を防ぐため、ディスクデータを事前にバックアップすることをお勧めします。

    • スナップショットに対して課金されます。 詳細については、「スナップショットの課金」をご参照ください。

  2. インスタンスに接続します。

    詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。

  3. 次のコマンドを実行して、ディスク上のパーティションを確認します。

    sudo fdisk -lu

    image

    上の図に示すコマンド出力は、インスタンスに2つのディスクがあることを示しています。デバイス名が /dev/vdaであるシステムディスクと、デバイス名が /dev/vdbであるデータディスクです。 この例では、/dev/vdbデータディスクが使用されています。 コマンド出力に含まれる次の情報に注意してください。

    • ①: データディスクのデバイス名

    • ②: データディスクのパーティションスタイル

      Disklabel typeの値がdosの場合、MBRパーティションスタイルが使用されます。 値がgptの場合、GPTパーティションスタイルが使用されます。

      説明
      • コマンドの出力は、オペレーティングシステムによって異なります。 Disklabel typeフィールドが表示されていない場合は、Systemフィールドをチェックしてパーティションスタイルを確認します。 Systemの値がLinuxの場合、MBRパーティションスタイルが使用されます。 値がGPTの場合、GPTパーティションスタイルが使用されます。

      • 以前のバージョンのfdiskを使用している場合、GPTパーティションスタイルが表示されない場合があります。 sudo gdisk -l /dev/vdbコマンドを実行して、パーティションスタイルを確認できます。

  4. インスタンスオペレーティングシステムに基づいて次のいずれかのコマンドを実行し、gdiskユーティリティをインストールします。

    • インスタンスがAlibaba Cloud Linux 2、Alibaba Cloud Linux 3、またはCentOS 6以降を実行している場合、次のコマンドを実行します。

      type sgdisk || sudo yum install -y gdisk
    • インスタンスがDebian 8以降、またはUbuntu 14以降を実行する場合は、次のコマンドを実行します。

      type sgdisk || sudo apt-get install -y gdisk
  5. データディスクをMBRからGPTに変換します。

    重要

    sgdiskを使用すると、/dev/vdbなどのディスクでのみ操作を実行できます。 sgdiskを使用して /dev/vdb1などのパーティションで操作を実行すると、パーティションのファイルシステムが破損している可能性があります。

    /dev/vdbディスクをMBRからGPTに変換するには、次のコマンドを実行します。

    sudo sgdisk -g /dev/vdb

    image

    説明

    sgdiskコマンドの実行時にエラーが発生した場合は、返されるエラーメッセージに基づいて問題を解決します。 詳細については、このトピックの問題セクションを参照してください。

  6. ディスクがMBRからGPTに変換されているかどうかを確認します。

    /dev/vdbディスクがMBRからGPTに変換されているかどうかを確認するには、次のコマンドを実行します。

    sudo fdisk -lu /dev/vdb

    次の図に示すコマンド出力では、Disklabel typeの値はgptです。これは、ディスクがGPTに変換されていることを示します。

    image

    説明

    コマンドの出力は、オペレーティングシステムによって異なります。 Disklabel typeフィールドがコマンド出力に含まれていない場合は、Systemフィールドをチェックして、ディスクがGPTに変換されているかどうかを確認できます。 Systemの値がGPTの場合、ディスクはGPTに変換されます。

WindowsインスタンスのデータディスクをMBRからGPTに変換する

次の手順を実行して、WindowsインスタンスのデータディスクをMBRからGPTに変換します。 このセクションの例では、Windows Server 2016の64ビットパブリックイメージとデータディスクのディスク1が使用されています。 操作は、インスタンスのイメージとディスクによって異なる場合があります。

重要

WindowsインスタンスのデータディスクをMBRからGPTに変換すると、ディスクに保存されているデータは一時的に使用できなくなります。 インスタンスで実行されているサービスがディスクに保存されているデータに依存している場合、問題が発生する可能性があります。 ディスクをMBRからGPTに変換する前に、インスタンスのサービスを停止することを推奨します。 ディスクがGPTに変換され、ディスクに保存されていたデータが復元されたら、サービスを再開します。

ステップ1: ディスクをMBRからGPTに変換する

  1. (オプション) ディスク上のデータをバックアップします。

    警告

    WindowsインスタンスのディスクをMBRからGPTに変換すると、ボリュームを削除すると、ボリュームに保存されているすべてのデータが消去されます。 ディスクに保存されているデータは、事前にバックアップすることをお勧めします。

    ディスクがGPTに変換された後、バックアップから元のディスクのデータを復元できます。 次のいずれかの方法を使用して、ディスク上のデータをバックアップできます。

  2. インスタンスに接続します。

    詳細については、「パスワードまたはキーを使用したWindowsインスタンスへの接続」をご参照ください。

  3. Windowsデスクトップで、开始图标アイコンを右クリックし、[ディスクの管理] を選択します。

  4. MBRからGPTに変換するデータディスクを見つけます。 この例では、ディスク1が使用されています。

    磁盘1

  5. シンプルボリュームを右クリックし、[ボリュームの削除] を選択します。

    删除卷

    重要

    ボリュームを削除できない場合、インスタンス上の特定のプログラムがボリュームのデータまたは情報にアクセスしている可能性があります。 インスタンスを再起動してから、ボリュームを削除します。 インスタンスの再起動によりサービスが中断されます。 適切な期間にインスタンスを再起動することを推奨します。

  6. [シンプルボリュームの削除] メッセージで、[はい] をクリックします。

  7. ディスク1の横にある空白の領域を右クリックし、[ディスクに変換] を選択します。

    转换GTP

  8. [未割り当て] セクションを右クリックし、[新しいシンプルボリューム] を選択します。

    新建简单卷

  9. [新しいシンプルボリュームウィザード] ウィンドウで、[次へ] をクリックし、プロンプトに従って設定を完了します。

    1. [ボリュームサイズの指定] ステップで、[シンプルボリュームサイズ (MB単位)] を設定し、[次へ] をクリックします。

      ディスク上にプライマリパーティションを1つだけ作成する場合は、デフォルト値を使用します。 ディスク1を複数のパーティションに分割する必要に応じて、単純なボリュームサイズを指定することもできます。指定卷大小

    2. [ドライブ文字またはパスの割り当て] ステップで、[次のドライブ文字の割り当て] を選択し、ドライブ文字 (例: D) を選択して、[次へ] をクリックします。

      分配驱动号

    3. [パーティションのフォーマット] ステップで、[次の設定でこのボリュームをフォーマットする] を選択し、フォーマット設定を設定して、[次へ] をクリックします。

      设置格式化信息

    4. 新しいシンプルボリュームの情報を表示し、[完了] をクリックして [新しいシンプルボリュームウィザード] ウィンドウを閉じます。

    次の図は、ディスクが変換された後の [ディスクの管理] ウィンドウの [ディスク1] の状態を示しています。新磁盘状态

ステップ2 (オプション): 元のディスクに保存されたデータを復元する

元のディスクに保存されていたデータをバックアップして復元する場合は、ディスクをGPTに変換した後、バックアップしたデータをディスクにコピーします。 データを使用する前に、復元されたデータが正しいことを確認してください。

説明

元のディスクに保存されていたデータをスナップショットから復元する場合は、不要な課金を防ぐため、データの復元後にスナップショットを削除することを推奨します。 スナップショットの削除方法については、「スナップショットの削除」をご参照ください。

問題

  1. 問題: sgdisk -gコマンドを実行してディスクをMBRからGPTに変換すると、次のメッセージが表示されます。

    Warning! Secondary partition table overlaps the last partition by 33 blocks!
    You will need to delete this partition or resize it in another utility.

    原因: ディスクの末尾に33未満の空きセクタが存在し、MBRからGPTへの変換に十分な空き容量がありません。

    解決策: ECSコンソールでディスク容量を拡張してディスクのサイズを変更し、ディスクをMBRからGPTに変換します。 ディスクのサイズを変更する方法については、「手順1: ディスクのサイズを変更して容量を拡張する」をご参照ください。

  2. 問題: sgdisk -gコマンドを実行してECSインスタンスのディスクをMBRからGPTに変換すると、次のメッセージが表示されます。

    image

    原因: ディスクヘッダーに必要なGPTパーティションテーブルヘッダー情報を収容するのに十分なスペースがありません。 ほとんどの場合、データまたはパーティションがディスクの先頭近くにある場合、GPTパーティションテーブル構造のスペースが不十分です。 この場合、ディスクをMBRからGPTに変換することはできません。

    解決策:

    1. ディスクのスナップショットを作成してデータをバックアップします。 詳細については、「ディスクのスナップショットの作成」をご参照ください。

    2. スナップショットからディスクを作成し、新しいディスクをインスタンスにアタッチします。 詳細については、「ディスクの作成」および「データディスクのアタッチ」をご参照ください。

    3. rsyncコマンドを実行して、元のディスクのデータを新しいディスクにコピーします。

    4. 元のディスクをデタッチして削除します。 詳細については、「データディスクのデタッチ」および「ディスクのリリース」をご参照ください。