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
であるデータディスクが使用されています。 操作は、インスタンスのイメージとディスクによって異なる場合があります。
(オプション) ディスクデータをバックアップするために、MBRからGPTに変換するデータディスクのスナップショットを作成します。
詳細については、「ディスクのスナップショットの作成」をご参照ください。
説明ほとんどの場合、元のディスクパーティションに保存されているデータは、Linuxインスタンス上のMBRディスクをGPTディスクに変換しても失われません。 誤った操作によるデータの損失や例外を防ぐため、ディスクデータを事前にバックアップすることをお勧めします。
スナップショットに対して課金されます。 詳細については、「スナップショットの課金」をご参照ください。
インスタンスに接続します。
詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。
次のコマンドを実行して、ディスク上のパーティションを確認します。
sudo fdisk -lu
上の図に示すコマンド出力は、インスタンスに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
コマンドを実行して、パーティションスタイルを確認できます。
インスタンスオペレーティングシステムに基づいて次のいずれかのコマンドを実行し、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
データディスクをMBRからGPTに変換します。
重要sgdisk
を使用すると、/dev/vdb
などのディスクでのみ操作を実行できます。 sgdiskを使用して/dev/vdb1
などのパーティションで操作を実行すると、パーティションのファイルシステムが破損している可能性があります。/dev/vdb
ディスクをMBRからGPTに変換するには、次のコマンドを実行します。sudo sgdisk -g /dev/vdb
説明sgdisk
コマンドの実行時にエラーが発生した場合は、返されるエラーメッセージに基づいて問題を解決します。 詳細については、このトピックの問題セクションを参照してください。ディスクがMBRからGPTに変換されているかどうかを確認します。
/dev/vdb
ディスクがMBRからGPTに変換されているかどうかを確認するには、次のコマンドを実行します。sudo fdisk -lu /dev/vdb
次の図に示すコマンド出力では、
Disklabel type
の値はgpt
です。これは、ディスクがGPTに変換されていることを示します。説明コマンドの出力は、オペレーティングシステムによって異なります。
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に変換する
(オプション) ディスク上のデータをバックアップします。
警告WindowsインスタンスのディスクをMBRからGPTに変換すると、ボリュームを削除すると、ボリュームに保存されているすべてのデータが消去されます。 ディスクに保存されているデータは、事前にバックアップすることをお勧めします。
ディスクがGPTに変換された後、バックアップから元のディスクのデータを復元できます。 次のいずれかの方法を使用して、ディスク上のデータをバックアップできます。
方法1: ディスクのスナップショットを作成します。
説明スナップショットに対して課金されます。 詳細については、「スナップショットの課金」をご参照ください。
ディスクのスナップショットを作成します。 詳細については「スナップショットの作成」をご参照ください。
スナップショットからディスクを作成し、新しいディスクをインスタンスにアタッチします。 詳細については、「スナップショットからのディスクの作成」および「データディスクのアタッチ」をご参照ください。
方法2: ディスクからインスタンス上の別のディスクにデータをコピーします。
インスタンスに接続します。
詳細については、「パスワードまたはキーを使用したWindowsインスタンスへの接続」をご参照ください。
Windowsデスクトップで、アイコンを右クリックし、[ディスクの管理] を選択します。
MBRからGPTに変換するデータディスクを見つけます。 この例では、ディスク1が使用されています。
シンプルボリュームを右クリックし、[ボリュームの削除] を選択します。
重要ボリュームを削除できない場合、インスタンス上の特定のプログラムがボリュームのデータまたは情報にアクセスしている可能性があります。 インスタンスを再起動してから、ボリュームを削除します。 インスタンスの再起動によりサービスが中断されます。 適切な期間にインスタンスを再起動することを推奨します。
[シンプルボリュームの削除] メッセージで、[はい] をクリックします。
ディスク1の横にある空白の領域を右クリックし、[ディスクに変換] を選択します。
[未割り当て] セクションを右クリックし、[新しいシンプルボリューム] を選択します。
[新しいシンプルボリュームウィザード] ウィンドウで、[次へ] をクリックし、プロンプトに従って設定を完了します。
[ボリュームサイズの指定] ステップで、[シンプルボリュームサイズ (MB単位)] を設定し、[次へ] をクリックします。
ディスク上にプライマリパーティションを1つだけ作成する場合は、デフォルト値を使用します。 ディスク1を複数のパーティションに分割する必要に応じて、単純なボリュームサイズを指定することもできます。
[ドライブ文字またはパスの割り当て] ステップで、[次のドライブ文字の割り当て] を選択し、ドライブ文字 (例: D) を選択して、[次へ] をクリックします。
[パーティションのフォーマット] ステップで、[次の設定でこのボリュームをフォーマットする] を選択し、フォーマット設定を設定して、[次へ] をクリックします。
新しいシンプルボリュームの情報を表示し、[完了] をクリックして [新しいシンプルボリュームウィザード] ウィンドウを閉じます。
次の図は、ディスクが変換された後の [ディスクの管理] ウィンドウの [ディスク1] の状態を示しています。
ステップ2 (オプション): 元のディスクに保存されたデータを復元する
元のディスクに保存されていたデータをバックアップして復元する場合は、ディスクをGPTに変換した後、バックアップしたデータをディスクにコピーします。 データを使用する前に、復元されたデータが正しいことを確認してください。
元のディスクに保存されていたデータをスナップショットから復元する場合は、不要な課金を防ぐため、データの復元後にスナップショットを削除することを推奨します。 スナップショットの削除方法については、「スナップショットの削除」をご参照ください。
問題
問題:
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: ディスクのサイズを変更して容量を拡張する」をご参照ください。
問題:
sgdisk -g
コマンドを実行してECSインスタンスのディスクをMBRからGPTに変換すると、次のメッセージが表示されます。原因: ディスクヘッダーに必要なGPTパーティションテーブルヘッダー情報を収容するのに十分なスペースがありません。 ほとんどの場合、データまたはパーティションがディスクの先頭近くにある場合、GPTパーティションテーブル構造のスペースが不十分です。 この場合、ディスクをMBRからGPTに変換することはできません。
解決策:
ディスクのスナップショットを作成してデータをバックアップします。 詳細については、「ディスクのスナップショットの作成」をご参照ください。
スナップショットからディスクを作成し、新しいディスクをインスタンスにアタッチします。 詳細については、「ディスクの作成」および「データディスクのアタッチ」をご参照ください。
rsync
コマンドを実行して、元のディスクのデータを新しいディスクにコピーします。元のディスクをデタッチして削除します。 詳細については、「データディスクのデタッチ」および「ディスクのリリース」をご参照ください。