12.8. コマンドラインを使用した仮想マシンのストレージの削除
仮想マシン (VM) に仮想ディスクをアタッチする必要がなくなった場合、またはホストのストレージリソースを解放したい場合は、仮想マシンからストレージを削除できます。
コマンドラインを使用すると、以下のいずれかの操作を実行できます。
- 仮想ディスクを仮想マシンから接続解除します。
- 仮想ディスクとその内容を削除します。
- 仮想ディスクに関連するストレージプールを非アクティブ化します。
- 仮想ディスクに関連するストレージプールを削除します。
手順
仮想マシンから仮想ディスクを接続解除するには、
virsh detach-diskコマンドを使用します。オプション: 仮想マシンに接続されているすべてのストレージデバイスをリスト表示します。
# *virsh domblklist --details <vm-name> Type Device Target Source ----------------------------------------------------------------------------- file disk hda /home/VirtualMachines/vm-name.qcow2 file cdrom hdb - file disk vdc /home/VirtualMachines/test-disk2.qcow2ディスクを接続解除するには、
targetパラメーターを使用します。たとえば、vdcとして接続されているディスクをtestguest仮想マシンから接続解除するには、次のコマンドを使用します。# virsh detach-disk testguest vdc --persistent
ディスクを削除するには、次のいずれかを実行します。
ディスクがストレージボリュームとして管理されている場合は、
virsh vol-deleteコマンドを使用します。たとえば、ストレージプールRHEL-storage-poolに関連付けられたボリュームtest-disk2を削除するには、次のコマンドを実行します。# virsh vol-delete --pool RHEL-storage-pool test-disk2ディスクが純粋にファイルベースの場合は、ファイルを削除します。
# rm /home/VirtualMachines/test-disk2.qcow2
ストレージプールを非アクティブ化するには、
virsh pool-destroyコマンドを使用します。ストレージプールを非アクティブ化すると、そのプールに新しいボリュームを作成できなくなります。ただし、そのプール内にボリュームがある仮想マシンは、引き続き実行されます。これは、たとえば、システムパフォーマンスを向上させるためにプール内に作成できるボリュームの数を制限する場合に役立ちます。
# virsh pool-destroy RHEL-storage-pool Pool RHEL-storage-pool destroyedストレージプールを完全に削除するには、
virsh pool-undefineコマンドを使用してその定義を削除します。# virsh pool-undefine RHEL-storage-pool Pool RHEL-storage-pool has been undefined
検証
仮想マシンストレージへの変更が成功したことを確認するには、ホストで仮想ストレージの現在の状態を調べます。
手順は、コマンドラインを使用した仮想マシンのストレージ情報の表示 を参照してください。