第4章 CLI コマンドでの LVM 管理

この章では、論理ボリュームを作成し、保守するために LVM CLI (Command Line Interface) コマンドで実行できる個別の管理タスクについてまとめています。
LVM コマンドラインインターフェース (CLI) の他にも、System Storage Manager (SSM) を使用して LVM 論理ボリュームを設定することができます。SSM と LVM の使用方法については、『ストレージ管理ガイド』 を参照してください。

4.1. CLI コマンドの使用

すべての LVM CLI コマンドに共通する特性がいくつかあります。
コマンドライン引数でサイズ指定が必要な場合に、単位を指定することができます。単位を指定しない場合はデフォルトの単位 (通常 KB か MB) が使用されます。LVM CLI コマンドでは、小数は使用できません。
LVM では、コマンドライン引数で単位を指定する場合に、大文字と小文字は区別されず (たとえば、M と m はいずれも同じ単位)、2 の累乗 (1024 の倍数) が使用されます。ただし、--units 引数では、小文字の場合は単位が 1024 の倍数、大文字の場合は 1000 の倍数になります。
コマンドが、ボリュームグループ名または論理ボリューム名を引数として取る場合、完全パスにするかどうかはオプションとなります。たとえば、ボリュームグループ vg0 内の論理ボリューム lvol0 は、vg0/lvol0 と指定できます。ボリュームグループの一覧が必要なときに指定しないと、すべてのボリュームグループが対象になります。同様に、論理ボリュームの一覧が必要なときにボリュームグループを指定すると、そのボリュームグループ内の論理ボリュームの一覧が示されます。したがって、たとえば lvdisplay vg0 コマンドは、ボリュームグループ vg0 内のすべての論理ボリュームを表示します。
すべての LVM コマンドで -v 引数を使用できるため、この引数を複数回指定して出力の詳細度を高くすることができます。たとえば、次の例は、lvcreate コマンドのデフォルト出力になります。
# lvcreate -L 50MB new_vg
  Rounding up size to full physical extent 52.00 MB
  Logical volume "lvol0" created
次の例は、lvcreate コマンドに -v 引数を使用した場合の出力になります。
# lvcreate -v -L 50MB new_vg
    Finding volume group "new_vg"
  Rounding up size to full physical extent 52.00 MB
    Archiving volume group "new_vg" metadata (seqno 4).
    Creating logical volume lvol0
    Creating volume group backup "/etc/lvm/backup/new_vg" (seqno 5).
    Found volume group "new_vg"
    Creating new_vg-lvol0
    Loading new_vg-lvol0 table
    Resuming new_vg-lvol0 (253:2)
    Clearing start of logical volume "lvol0"
    Creating volume group backup "/etc/lvm/backup/new_vg" (seqno 5).
  Logical volume "lvol0" created
引数を -vv-vvv-vvvv とすると、表示されるコマンドの出力は徐々に詳しくなります。-vvvv 引数は、現時点で最も詳細な情報を提供します。以下の例は、lvcreate コマンドに -vvvv 引数を指定した場合に出力される最初の数行になります。
# lvcreate -vvvv -L 50MB new_vg
#lvmcmdline.c:913         Processing: lvcreate -vvvv -L 50MB new_vg
#lvmcmdline.c:916         O_DIRECT will be used
#config/config.c:864       Setting global/locking_type to 1
#locking/locking.c:138       File-based locking selected.
#config/config.c:841       Setting global/locking_dir to /var/lock/lvm
#activate/activate.c:358       Getting target version for linear
#ioctl/libdm-iface.c:1569         dm version   OF   [16384]
#ioctl/libdm-iface.c:1569         dm versions   OF   [16384]
#activate/activate.c:358       Getting target version for striped
#ioctl/libdm-iface.c:1569         dm versions   OF   [16384]
#config/config.c:864       Setting activation/mirror_region_size to 512
...
LVM のすべての CLI コマンドで、--help 引数を付ければ、そのコマンドのヘルプが表示されます。
# commandname --help
コマンドの man ページを表示するには、man コマンドを実行します。
# man commandname
man lvm コマンドは、LVM に関する一般的なオンライン情報を提供します。
すべての LVM オブジェクトは、内部的には、オブジェクトを作成する際に割り当てられる UUID で参照されます。これは、たとえばボリュームグループの一部である物理ボリューム /dev/sdf を削除してから接続し直したときに、名前が /dev/sdk に変わった場合などに役立ちます。LVM は、物理ボリュームを、デバイス名ではなく UUID で識別するため、デバイス名が変わっても物理ボリュームを見つけることができます。物理ボリュームの作成時に物理ボリュームの UUID を指定する方法については、「物理ボリュームメタデータの復元」 を参照してください。