Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

20.30. ストレージボリュームコマンド

本セクションでは、ストレージボリュームの作成、削除、および管理を行うコマンドを説明します。ストレージボリュームを作成するには、少なくとも 1 つのストレージプールが必要です。ストレージプールの作成方法の例は、例20.78「XML ファイルからストレージプールを作成する方法」 を参照してください。ストレージプールの詳細は、「ストレージプールの使用」 を参照してください。ストレージボリュームの詳細は、「ストレージボリュームの使用」 を参照してください。

20.30.1. ストレージボリュームの作成

virsh vol-create-from pool file vol コマンドは、別のボリュームを入力として使用してボリュームを作成します。このコマンドには、ストレージプール名またはストレージプール UUID のいずれかが必要で、次のパラメーターとオプションが必要です。
  • --pool string - 必須 - ストレージボリュームに割り当てるストレージプールまたはストレージプールの UUID の名前が含まれます。このストレージプールは、この新規ストレージボリュームのベースに使用するストレージボリュームに関連付けられたものと同じストレージプールである必要はありません。
  • --file string - 必須 - ストレージボリュームのパラメーターを含む XML ファイルの名前が含まれます。
  • --vol string - 必須 - この新しいストレージボリュームの基となるストレージボリュームの名前が含まれます。
  • --inputpool string - 任意 - 新しいストレージボリュームの入力として使用するストレージボリュームに関連付けられたストレージプールに名前を付けることができます。
  • --prealloc-metadata - 任意 - 新しいストレージボリュームに、(完全割り当てではなく qcow2 の) メタデータを事前に割り当てます。
例については、「ストレージボリュームの作成」 を参照してください。

20.30.2. パラメーターからのストレージボリュームの作成

virsh vol-create-as pool name capacity コマンドは、引数のセットからボリュームを作成します。pool 引数は、ボリュームを作成するストレージプールの名前または UUID を含みます。このコマンドには、以下の必須パラメーターおよびオプションがあります。
  • [--pool] string - 必須 - 関連付けられたストレージプールの名前が含まれます。
  • [--name] string - 必須 - 新しいストレージボリュームの名前が含まれます。
  • [--capacity] string - 必須 - ストレージボリュームのサイズで、整数で表されます。指定がない場合は、デフォルトはバイトになります。バイト、キロバイト、メガバイト、ギガバイト、およびテラバイトには、それぞれ接尾辞 b、k、M、G、T を使用します。
  • --allocation string - 任意 - 最初の割り当てサイズで、整数で表されます。指定がない場合は、デフォルトはバイトになります。
  • --format string - 任意 - ファイル形式の種類が含まれます。指定できるタイプは、raw、bochs、qcow、qcow2、qed、host_device、および vmdk です。ただし、これはファイルベースのストレージプールのみを対象としています。デフォルトで使用される qcow バージョンはバージョン 3 です。バージョンを変更する場合は、「target 要素の設定」 を参照してください。
  • --backing-vol string - 任意 - バッキングボリュームが含まれます。これは、スナップショットを撮る場合に使用されます。
  • --backing-vol-format string- 任意 - バッキングボリュームの形式が含まれます。これは、スナップショットを撮る場合に使用されます。
  • --prealloc-metadata - 任意 - メタデータを事前に割り当てることができます (完全割り当てではなく qcow2)。

例20.88 一連のパラメーターからストレージボリュームを作成する方法

以下の例では、vol-new という名前の 100MB のストレージボリュームを作成します。これには、例20.78「XML ファイルからストレージプールを作成する方法」 で作成したvdisk ストレージプールが含まれます。
# virsh vol-create-as vdisk vol-new 100M


vol vol-new created

20.30.3. XML ファイルからのストレージボリュームの作成

virsh vol-create pool file コマンドは、ストレージボリュームパラメーターを含む XML ファイルから新しいストレージボリュームを作成します。

例20.89 既存の XML ファイルからストレージボリュームを作成する方法

以下の例では、以下のように、ファイルvol-new.xmlに基づいてストレージボリュームを作成します。
<volume>
	<name>vol-new</name>
	<allocation>0</allocation>
	<capacity unit="M">100</capacity>
	<target>
		<path>/var/lib/libvirt/images/vol-new</path>
		<permissions>
			<owner>107</owner>
			<group>107</group>
            		<mode>0744</mode>
            		<label>virt_image_t</label>
          	</permissions>
        </target>
</volume>

ストレージボリュームは、ストレージプールvdiskに関連付けられています。イメージへのパスは /var/lib/libvirt/images/vol-new です。
# virsh vol-create vdisk vol-new.xml

vol vol-new created

20.30.4. ストレージボリュームのクローンの作成

virsh vol-clone vol-name new-vol-name コマンドは、既存のストレージボリュームのクローンを作成します。virsh vol-create-from コマンドも使用できますが、ストレージボリュームのクローンを作成することは推奨されません。このコマンドは、--pool string オプションを受け入れます。これにより、新しいストレージボリュームに関連付けられるストレージプールを指定できます。vol 引数は、ソースストレージボリュームの名前またはキーまたはパスです。name 引数は、新しいストレージボリュームの名前を指します。追加情報は、「virsh を使用したストレージボリュームの作成」 を参照してください。

例20.90 ストレージボリュームのクローンを作成する方法

以下の例では、vol-new という名前のストレージボリュームを、vol-clone という名前の新しいボリュームにクローンします。
# virsh vol-clone vol-new vol-clone


vol vol-clone cloned from vol-new