ESX および ESXi で partedUtil コマンドライン ユーティリティを使用する
search cancel

ESX および ESXi で partedUtil コマンドライン ユーティリティを使用する

book

Article ID: 341076

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

この記事には、ESXi および ESX で partedUtil コマンドライン ディスク パーティショニング ユーティリティを使用する方法が記載されています。

: ESXi/ESX ホストまたは vCenter Server に接続された vSphere Client を使用して、VMFS データストアの作成および削除を行うことができます。コマンドライン ユーティリティを使用してパーティションを手動で作成する必要はありません。詳細については、使用している ESXi/ESX バージョンの 『構成ガイド』 の 「ストレージの管理」 セクションを参照してください。


Symptoms:

免責事項: これは英文の記事 「Using the partedUtil command line utility on ESXi and ESX (1036609)」の日本語訳です。

記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。

最新情報は英語版の記事で参照してください。

partedUtil コマンドを使用して誤った GUID サイズを指定した結果、次のようなエラーが表示される

  • error: "Invalid guid (0xfb).Contains non-hexadecimal digits
  • Invalid guid (fb).Length should be 32
  • Invalid guid (251).Length should be 32


Environment

VMware ESXi 4.0.x Embedded
VMware vSphere ESXi 5.0
VMware ESXi 3.5.x Embedded
VMware vSphere ESXi 5.1
VMware ESXi 4.1.x Installable
VMware ESXi 3.5.x Installable
VMware ESX Server 3.0.x
VMware ESX 4.1.x
VMware vSphere ESXi 5.5
VMware ESX Server 3.5.x
VMware ESXi 4.0.x Installable
VMware ESX 4.0.x
VMware ESXi 4.1.x Embedded

Resolution

partedUtil コマンドライン ユーティリティを使用して、ESXi および ESX でローカルおよびリモート の SAN ディスクのパーティション テーブルを直接操作できます。

ESXi 5.x 以降のディスク パーティショニングには、 partedUtil コマンドラインのみがサポートされます。VMFS5 でフォーマットされた LUN では、コマンドライン ユーティリティ fdisk は機能しません。

: この記事は、ESXi または ESX ホストのコンソール セッションを使用できること、ユーザーがコンソールおよびディスク管理の概念に精通していること、作業を進める前に適切なバックアップを作成していることを前提とします。詳細については、以下を参照してください:

手順の実行について不明な点がある場合は、VMware サポートにお問い合わせください

PartedUtil を使用して、失われた VMFS パーティション テーブルを再作成する方法については、vSphere 5 で、失われた VMFS データストア パーティションを再作成する (2046610)(Re-creating a missing VMFS datastore partition in vSphere 5 (2046610)) を参照してください。

この記事では、次のタスクについて説明します。

ディスク デバイスのリストの取得

Each partedUtil コマンドは、操作の対象となるローカル ディスクまたは SAN ベース ディスクを指定するデバイス引数を受け入れます。これは 、/vmfs/devices/disks/ で始まるパス名である必要があります。この引数には、デバイス上の既存のパーティションではなく、ブロック デバイス全体を指定する必要があります。

partedUtil で管理できるディスク デバイス名のリストを取得するには、次のコマンドを実行します。

ls /vmfs/devices/disks/

ESXi/ESX 3.x での出力例:

vmhba0:0:0:0 <-- ディスク デバイス
vmhba0:0:0:1 <-- パーティション 1
vmhba0:0:0:2 <-- パーティション 2
vmhba0:0:0:3 <-- パーティション 3
vmhba0:0:0:5 <-- パーティション 5
vmhba3:0:0:0 <-- ディスク デバイス
vmhba3:0:0:1 <-- パーティション 1

ESXi/ESX 4.0 以降の出力例:

mpx.vmhba0:C0:T0:L0 <-- ディスク デバイス
mpx.vmhba0:C0:T0:L0:1 <-- パーティション 1
mpx.vmhba0:C0:T0:L0:2 <-- パーティション 2
mpx.vmhba0:C0:T0:L0:3 <-- パーティション 3
mpx.vmhba0:C0:T0:L0:5 <-- パーティション 5
naa.60060160205010004265efd36125df11 <-- ディスク デバイス
naa.60060160205010004265efd36125df11:1 <-- パーティション 1

: partedUtil コマンドを使用してブロック デバイスを指定する場合、フル パスを使用し、そのフル パスを二重引用符で囲みます。

特定のディスク デバイスを識別する方法については、VMware ESX を操作するときのディスクの識別 (1014953)(Identifying disks when working with VMware ESX (1014953)) を参照してください。

既存のパーティション テーブルの印刷

partedUtil コマンドライン ユーティリティを使用して、ブロック ディスク デバイス上の既存のパーティション テーブルを調べることができます。ブロック ディスク デバイスに定義されているパーティションのリストを取得するには:

  • ESXi/ESX 4.0 以前では、次のコマンドを使用します。

    partedUtil get "/vmfs/devices/disks/DeviceName"

  • ESXi/ESX 4.1 以降では、次のコマンドを使用します。

    partedUtil getptbl "/vmfs/devices/disks/DeviceName"

    : ESX 4.1 ホスト上のデバイスのパーティション テーブルを表示するには、次のように指定します。

partedUtil getptbl "/vmfs/devices/disks/mpx.vmhba0:C0:T0:L0"

出力例

msdos
17834 255 63 286513152
1 63 2249099 131 128
2 2249100 2474009 252 0
3 2474010 286487144 5 0
5 2474073 286487144 251 0

1 行目は、 getptbl 形式のコマンドでのみ表示されます。この行には、使用されるパーティショニング スキームを識別するディスク ラベルが表示されます。共通のラベルは、 bsd、dvh、gpt、loop、mac、msdos、pc98、および sun です。このうち、ESXi/ESX では、 msdos ラベルと gpt パーティショニング スキームのみが使用されます。

msdos は、デバイスに Windows ファイル システムが含まれていることや、デバイスが Windows マシンで使用されていることを意味するものではありません。これは、単に、MBR (マスタ ブート レコード) パーティションであることを意味します。

2 行目には、基礎となるデバイスから読み取られるディスクの配置情報が表示されます。

17834 255 63 286513152
| | | |
| | | \----- quantity of sectors
| |\-------- quantity of sectors per track
| \------------ quantity of heads
\------------------ quantity of cylinders

残りの行では、定義された各パーティションが識別されます。定義されたパーティションがない場合、このリストは空白になります。リストは保存されない場合があります。

: ここでは、4 つのパーティションが定義されています。1 番目のパーティション ( type 131 = 0x83 = Linux) は起動可能です。2 番目のパーティションは、VMKcore コアダンプ パーティション データストア ( type 252 = 0xFC) です。3 番目のパーティションは、追加の論理パーティションが含まれる拡張パーティション ( type 5) です。4 番目のパーティション (番号 5) は、パーティション番号 5 内の論理パーティションであり、このパーティションには VMFS データストア ( type 251 = 0xFB) が含まれます。

1 63 2249099 131 128
2 2249100 2474009 252 0
3 2474010 286487144 5 0
5 2474073 286487144 251 0
| | | | |
| | | | \--- attribute
| | | \------- type
| | \----------------- ending sector
| \------------------------- starting sector
\--------------------------- partition number

パーティションのプロパティ

  • 開始セクタと終了セクタには、パーティションで占有される連続ディスク領域の量が示されます。わかりやすいパーティション サイズをこの情報から計算できます。たとえば、VMKCore partition 2 は、ディスクのセクタ 2249100 から 2474009 までの 224909 セクタを使用します。このディスクはセクタごとに 512 バイト含まれます。したがって、このパーティションのサイズは、 224909 x 512 = 115153408 bytes = 109 MB になります。
  • パーティション タイプはパーティションの目的を識別するものであり、10 進数の識別子 (251 など) または UUID ( AA31E02A400F11DB9590000C2911D1B8) のいずれかで表すことができます。一般的に使用されるパーティションのリストについては、「追加情報」 セクションを参照してください。
  • パーティション属性は、パーティションのプロパティを識別する数字です。共通属性は 128 = 0x80 であり、これは、パーティションが起動可能であることを示します。起動可能でない場合、ほとんどのパーティションで属性値 0 が含まれます。

新しいパーティション テーブルの作成

partedUtil コマンドライン ユーティリティを使用して、ブロック ディスク デバイスに新しいパーティション テーブルを作成できます。ブロック デバイスに新しいパーティションを作成するには、ESXi/ESX のバージョンに応じて異なるコマンドを使用します。

  • ESXi/ESX 4.0 以前では、次のコマンドを使用します。

    partedUtil set "/vmfs/devices/disks/DeviceName" ["partNum startSector endSector type/guid attribute"]*

  • ESXi/ESX 4.1 以降では、次のコマンドを使用します。

    partedUtil setptbl "/vmfs/devices/disks/DeviceName" DiskLabel ["partNum startSector endSector type/guid attribute"]*

ディスク ラベルは setptbl 形式のコマンドでのみ指定されます。これは、使用されるパーティショニング スキームを識別するディスク ラベルを設定します。共通のラベルは、bsd、dvh、gpt、loop、mac、msdos、pc98、および sun です。ESXi 5.x 以上では、msdos gpt のラベルおよびパーティショニング スキームがサポートされますが、ESXi/ESX 4.1 以前では、msdos のラベルおよびパーティション スキームのみがサポートされます。

ディスクに適用するパーティションのリストを partedUtil コマンドラインに完全に指定する必要があります。既存のパーティションが設定されているディスクに別のパーティションを追加するには、元のパーティションと新しいパーティションの両方をコマンドラインに指定します。これを行わない場合、既存のパーティションが失われます。パーティションのリストは、引用符付き文字列として指定します。各文字列には、パーティション番号、開始セクタ、終了セクタ、タイプ ID、および属性の 5 つの項目で構成されるタプルをカプセル化します。

  • startSector endSector には、パーティションで占有される連続ディスク領域の量を指定します。開始セクタは、同じパーティションの終了セクタの前に強制的に配置されますが、定義されたパーティションが別のパーティションに重ならないという保証はありません。
  • パーティションの type はパーティションの目的を識別するものであり、10 進数の識別子 (251 など)または UUID ( AA31E02A400F11DB9590000C2911D1B8) のどちらかで表すことができます。一般的に使用されるパーティションのリストについては、「追加情報」 セクションを参照してください。gpt ディスクラベルを使用して ESXi 5.x 以上に作成するパーティションは、GUID を使用して指定する必要があります。
  • パーティションの attribute は、パーティションのプロパティを識別する数字です。共通属性は 128 = 0x80 であり、これは、パーティションが起動可能であることを示します。起動可能でない場合、ほとんどのパーティションで属性値 0 が含まれます。

: 2 つの連続する ~244 MB パーティションをタイプ 131 = 0x83で作成し、その1 番目のパーティションを起動可能としてオフセット 128 から開始します。

  • ESXi/ESX 4.0 以前では、次のコマンドを使用します。

    partedUtil set "/vmfs/devices/disks/mpx.vmhba0:C0:T0:L0" "1 128 500000 131 128" "2 500001 999999 131 0"

  • ESXi/ESX 4.1 以降の msdos ラベルでは、次のコマンドを使用します。

    partedUtil set "/vmfs/devices/disks/mpx.vmhba0:C0:T0:L0" msdos "1 128 500000 251 0"

  • ESXi 5.x 以降の gpt ラベルでは、次のコマンドを使用します。

    partedUtil setptbl "/vmfs/devices/disks/mpx.vmhba0:C0:T0:L0" gpt "1 128 500000 AA31E02A400F11DB9590000C2911D1B8 128" "2 500001 999999 AA31E02A400F11DB9590000C2911D1B8 0"

: VMFS-3 から VMFS-5 にアップグレードされたボリュームの VMFS パーティションは、セクタ 2048 ではなく、引き続きセクタ 128 から開始されます。

注意: 新しいパーティション テーブルを作成する以外に、パーティション テーブルの変更を元に戻す機能はありません。変更を加える前に必ずバックアップを作成してください。パーティションを変更する前に、パーティションへのアクティブな I/O がないことを確認します。

パーティションのサイズ計算はこの記事の範囲外です。詳細については、VMware ESX/ESXi のインストールに推奨されるディスクまたは LUN サイズ (1026500)(Recommended disk or LUN sizes for VMware ESXi/ESX installations (1026500)) を参照してください。

パーティションの削除

partedUtil コマンドライン ユーティリティを使用して、ブロック ディスク デバイスのパーティション テーブルから 1 つのパーティションを削除できます。

パーティションを削除するには、次のコマンドを使用します。

partedUtil delete "/vmfs/devices/disks/DeviceName" PartitionNumber



partedUtil delete "/vmfs/devices/disks/mpx.vmhba0:C0:T0:L0" 2

注意: 新しいパーティション テーブルを作成する以外に、パーティション テーブルの変更を元に戻す機能はありません。変更を加える前に必ずバックアップを作成してください。パーティションを変更する前に、パーティションへのアクティブな I/O がないことを確認します。

パーティションのサイズ変更

partedUtil コマンドを使用して、ESXi/ESX 4.0 以上の既存のパーティションのサイズを変更できます。これによって、パーティション内のファイル システムのサイズが変更されることはありません。このサイズ変更は、パーティションを削除し、新しい開始セクタまたは終了セクタを使用してパーティションを再作成することと変わりません。

パーティションのサイズを変更するには、次のコマンドを使用します。

partedUtil resize "/vmfs/devices/disks/DeviceName" PartitionNumber NewStartSector NewEndSector

: 同じ場所 (例: 2474073)で開始し、新しい終了セクタ (1234567890) で終了するようにパーティション 4 を移動するには、次のコマンドを実行します。

partedUtil resize "/vmfs/devices/disks/mpx.vmhba0:C0:T0:L0" 4 2474073 1234567890

注意: 新しいパーティション テーブルを作成する以外に、パーティション テーブルの変更を元に戻す機能はありません。変更を加える前に必ずバックアップを作成してください。パーティションを変更する前に、パーティションへのアクティブな I/O がないことを確認します。


Additional Information

パーティション タイプはパーティションの目的を識別するものであり、特定のオペレーティング システムによる使用目的を示すことができます。パーティション タイプは、パーティション テーブル内で GUID のみによって指定される必要があります (partedUtil setptbl コマンドを使用する場合)。

GUID は、次のコマンドを使用して取得できます。

partedUtil showGuids

ESXi/ESX で一般的に使用されるパーティション タイプは次のとおりです。

パーティション

GUID

タイプ 16 進)

タイプ 10 進)

VMFS データストア

AA31E02A400F11DB9590000C2911D1B8

0xFB

251

VMKCore 診断

9D27538040AD11DBBF97000C2911D1B8

0xFC

252

VMware 予約済み

9198EFFC31C011DB8F78000C2911D1B8

基本データ

EBD0A0A2B9E5443387C068B6B72699C7

0x83

131

Linux スワップ

0657FD6DA4AB43C484E50933C84B4F4F

0x82

130

Linux LVM

E6D6D379F50744C2A23C238F2A3DF928

0x8E

142

Linux RAID

A19D880F05FC4D3BA006743F0F84911E

0xFD

253

EFi システム

C12A7328F81F11D2BA4B00A0C93EC93B

0xEF

239

Microsoft 予約済み

E3C9E3160B5C4DB8817DF92DF00215AE

未使用エントリ

00000000000000000000000000000000

Fat16

0x6

6

拡張

0x5

5

SFS

0x42

66

NTFS

0x7

7

Using the partedUtil command line utility on ESXi and ESX