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

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

book

Article ID: 341076

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

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

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


Symptoms:

免責事項: これは英文の記事 「Using the partedUtil command line utility on ESXi」の日本語訳です。
記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。
最新情報は英語版の記事で参照してください。

Environment

VMware vSphere ESXi 6.x
VMware vSphere ESXi 7.x
VMware vSphere ESXi 8.x

Resolution

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

ESXi 5.x 以降のディスク パーティショニングには、 partedUtil コマンドラインのみがサポートされます。VMFS5 または VMFS6 でフォーマットされた LUN では、コマンドライン ユーティリティ fdisk は機能しません。
partedUtil ユーティリティでの SD /USB ブート デバイスのパーティションの変更はサポートしません。partedUtil ユーティリティはローカル ハードディスク ストレージ(SSD/HDD) と SAN 接続のストレージで使用します。

: この記事は、ESXi のコンソール セッションを使用できること、管理ユーザーがコンソールおよびディスク管理の概念に精通していること、ディスク/パーティションの変更によるデータの破損の可能性があるため、作業を進める前に適切なバックアップを作成していることを前提とします。

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

  • ディスク デバイスのリストの取得
  • 既存のパーティション テーブルの表示
  • 新しいパーティション テーブルの作成
  • パーティションの削除
  • パーティションのサイズ変更


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

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

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

ls -ltrh /vmfs/devices/disks/

出力例:



青で表示された VML ID フィールドはハイライトされたものと同一デバイスです。

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

例:

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

特定のディスク デバイスを識別する方法については、identifying disks when working with VMware ESXi を参照してください。


既存のパーティション テーブルの出力

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

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

例:

partedUtil getptbl "/vmfs/devices/disks/naa.6589cfc000000dcc6071c4243094f34b"

出力例:

gpt
32635 255 63 524288000
1 2048 524287966 AA31E02A400F11DB9590000C2911D1B8 vmfs 0

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

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

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

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

例:

ここでは、1 つのパーティションが定義されています。

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

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



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

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

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

例:

partedUtil setptbl /vmfs/devices/disks/naa.6589cfc000000dcc6071c4243094f34b gpt "1 2048 7516192734 AA31E02A400F11DB9590000C2911D1B8 0"

コマンドの詳細:

DiskLabel - gpt
partNum - 1
startSector - 2048
endSector - 7516192734
GUID - AA31E02A400F11DB9590000C2911D1B8
attribute - 0


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

ESXi 5.x 以上では、msdos gpt のラベルおよびパーティショニング スキームがサポートされますが、ESXi/ESX 4.1 以前では、msdos のラベルおよびパーティション スキームのみがサポートされます。

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

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

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

startSector endSector には、パーティションで占有される連続ディスク領域の量を指定します。開始セクタは、同じパーティションの終了セクタの前に強制的に配置されますが、定義されたパーティションが別のパーティションに重ならないという保証はありません。

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

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

パーティションのサイズ計算はこの記事の範囲外です。


パーティションの削除

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

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

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

例:

partedUtil delete "/vmfs/devices/disks/naa.6589cfc000000dcc6071c4243094f34b" 1

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



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

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

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

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

例:

上記のVMFSデータストアのパーティションサイズを、既存の最後のセクター524287966から新しい最後のセクター8679954582に増加させるには、以下のコマンドを実行する必要があります。

partedUtil resize "/vmfs/devices/disks/naa.6589cfc000000dcc6071c4243094f34b" 1 2048 8679954582

注意: 新しいパーティション テーブルを作成する以外に、パーティション テーブルの変更を元に戻す機能はありません。変更を加える前に必ずバックアップを作成してください。パーティションを変更する前に、パーティションへのアクティブな 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