4.8. LVM 用のカスタム報告

LVM では、カスタマイズされたレポートを生成したり、レポートの出力をフィルタリングしたりするためのさまざまな設定およびコマンドラインオプションが提供されます。LVM レポート機能の完全な説明については、lvmreport(7) の man ページを参照してください。
pvslvs、および vgs コマンドを使用して、LVM オブジェクトについての簡潔でカスタマイズ可能なレポートを作成することができます。これらのコマンドが生成するレポートには、オブジェクトごとに 1 行の出力が含まれます。各行には、オブジェクトに関連するプロパティーのフィールドの順序付けられた一覧が含まれます。レポートするオブジェクトを選択する方法には、物理ボリューム、ボリュームグループ、論理ボリューム、物理ボリュームセグメント、および論理ボリュームセグメント別の 5 つの方法があります。
Red Hat Enterprise Linux 7.3 リリースでは、lvm fullreport コマンドを使用して、物理ボリューム、ボリュームグループ、論理ボリューム、物理ボリュームセグメント、および論理ボリュームセグメントに関する情報を一度に報告できます。このコマンドとその機能については、lvm-fullreport(8) の man ページを参照してください。
Red Hat Enterprise Linux 7.3 リリースでは、LVM は、LVM コマンドの実行中に収集された操作、メッセージ、およびオブジェクトごとのステータス (完全なオブジェクト ID 付き) が含まれるメッセージログレポートをサポートします。LVM ログレポートの例は、「コマンドログレポート (Red Hat Enterprise Linux 7.3 以降)」 を参照してください。LVM ログレポートの詳細は、lvmreport(7) の man ページを参照してください。
以下のセクションでは、pvslvs、および vgs コマンドを使用したレポートのカスタマイズに関する概要情報を提供しています。

4.8.1. 形式の制御

pvslvs、または vgs コマンドのどれを使用するかによって、表示されるデフォルトのフィールドセットとソート順序が決定されます。これらのコマンドの出力は、以下の引数を使用することによって制御できます。
  • -o 引数を使用すると、表示するフィールドをデフォルト以外に変更することができます。たとえば、以下の出力は pvs コマンドのデフォルト表示です (物理ボリュームに関する情報を表示)。
    # pvs
      PV         VG     Fmt  Attr PSize  PFree
      /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G
      /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G
      /dev/sdd1  new_vg lvm2 a-   17.14G 17.14G
    以下のコマンドは、物理ボリュームの名前とサイズだけを表示します。
    # pvs -o pv_name,pv_size
      PV         PSize
      /dev/sdb1  17.14G
      /dev/sdc1  17.14G
      /dev/sdd1  17.14G
  • -o 引数との組み合わせで使用するプラス記号 (+) を使って、出力にフィールドを追加することができます。
    以下の例は、デフォルトフィールドに加えて、物理ボリュームの UUID を表示しています。
    # pvs -o +pv_uuid
      PV         VG     Fmt  Attr PSize  PFree  PV UUID
      /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G onFF2w-1fLC-ughJ-D9eB-M7iv-6XqA-dqGeXY
      /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G Joqlch-yWSj-kuEn-IdwM-01S9-X08M-mcpsVe
      /dev/sdd1  new_vg lvm2 a-   17.14G 17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-UqkCS
  • コマンドに -v 引数を追加すると、追加のフィールドが含まれます。たとえば、pvs -v コマンドは、デフォルトフィールドに加えて、DevSizePV UUID のフィールドも表示します。
    # pvs -v
        Scanning for physical volume names
      PV         VG     Fmt  Attr PSize  PFree  DevSize PV UUID
      /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G  17.14G onFF2w-1fLC-ughJ-D9eB-M7iv-6XqA-dqGeXY
      /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G  17.14G Joqlch-yWSj-kuEn-IdwM-01S9-XO8M-mcpsVe
      /dev/sdd1  new_vg lvm2 a-   17.14G 17.14G  17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-tUqkCS
  • --noheadings 引数は、見出し行を表示しません。これはスクリプトを作成する際に便利です。
    以下の例は、pv_name 引数と共に --noheadings 引数を使用して、すべての物理ボリュームの一覧を生成しています。
    # pvs --noheadings -o pv_name
      /dev/sdb1
      /dev/sdc1
      /dev/sdd1
  • --separator separator 引数は、separator を使用して各フィールドを分離します。
    次の例は、pvs コマンドのデフォルト出力フィールドを等号 (=) で分割しています。
    # pvs --separator =
      PV=VG=Fmt=Attr=PSize=PFree
      /dev/sdb1=new_vg=lvm2=a-=17.14G=17.14G
      /dev/sdc1=new_vg=lvm2=a-=17.14G=17.09G
      /dev/sdd1=new_vg=lvm2=a-=17.14G=17.14G
    separator 引数の使用時にフィールドを配置するには、--aligned 引数と共に separator 引数を使用します。
    # pvs --separator = --aligned
      PV        =VG    =Fmt =Attr=PSize =PFree
      /dev/sdb1 =new_vg=lvm2=a-  =17.14G=17.14G
      /dev/sdc1 =new_vg=lvm2=a-  =17.14G=17.09G
      /dev/sdd1 =new_vg=lvm2=a-  =17.14G=17.14G
lvs または vgs コマンドに -P 引数を追加して、通常の出力では表示されない、障害が発生したボリュームに関する情報を表示することができます。この引数を使用した場合に出力される情報については、「障害の発生したデバイスの情報を表示」 をご覧ください。
表示に関する引数の詳細は、pvs(8), vgs(8)、および lvs(8) の man ページを参照してください。
ボリュームグループフィールドは、物理ボリューム (および物理ボリュームセグメント) フィールド、または論理ボリューム (および論理ボリュームセグメント) フィールドと混在させることができますが、物理ボリュームフィールドと論理ボリュームフィールドは混在させることはできません。たとえば、以下のコマンドは、1 つの物理ボリュームつき 1 行の出力を表示します。
# vgs -o +pv_name
  VG     #PV #LV #SN Attr   VSize  VFree  PV
  new_vg   3   1   0 wz--n- 51.42G 51.37G /dev/sdc1
  new_vg   3   1   0 wz--n- 51.42G 51.37G /dev/sdd1
  new_vg   3   1   0 wz--n- 51.42G 51.37G /dev/sdb1

4.8.2. オブジェクト表示フィールド

このセクションでは、pvsvgs、および lvs コマンドを使って LVM オブジェクトについて表示できる情報を一覧表示する一連の表を提供します。
便宜上、フィールド名の接頭辞は、コマンドのデフォルトと一致する場合は省略できます。たとえば、pvs コマンドでは、namepv_namevgs コマンドでは、namevg_name と解釈されます。
以下のコマンドの実行は、pvs -o pv_free の実行に相当します。
# pvs -o free
  PFree
  17.14G
  17.09G
  17.14G

注記

pvsvgs、および lvs 出力の属性フィールドにある文字数は、以降のリリースで増える可能性があります。既存の文字フィールドの位置は変更しませんが、新しいフィールドが末尾に追加される可能性があります。相対的な位置を使って特定の属性文字を検索するスクリプトを作成する場合は、このことを考慮して、フィールドの終点ではなく、フィールドの始点を基点として文字検索を行います。たとえば、lv_attr フィールドの 9 番目のビットの文字 p を検索する場合、文字列 "^/........p/" を指定することはできますが、文字列 "/*p$/" は使用しないでください。

pvs コマンド

表4.3「pvs コマンド表示フィールド」 は、pvs コマンドの表示引数、ヘッダーに表示されるフィールド名、フィールドの説明を一覧にまとめています。

表4.3 pvs コマンド表示フィールド

引数ヘッダー説明
dev_sizeDevSize物理ボリュームを作成する基となる配下のデバイスのサイズ
pe_start1st PE配下のデバイス内の最初の物理エクステントの開始点までのオフセット
pv_attrAttr物理ボリュームのステータス: (a)llocatable または e(x)ported
pv_fmtFmt物理ボリュームのメタデータ形式 (lvm2 または lvm1)
pv_freePFree物理ボリュームにある残りの空き領域
pv_namePV物理ボリュームの名前
pv_pe_alloc_countAlloc使用される物理エクステントの数
pv_pe_countPE物理エクステントの数
pvseg_sizeSSize物理ボリュームのセグメントサイズ
pvseg_startStart物理ボリュームセグメントの最初の物理エクステント
pv_sizePSize物理ボリュームのサイズ
pv_tagsPV Tags物理ボリュームに割り当てられた LVM タグ
pv_usedUsed物理ボリューム上で現在使用中の領域の量
pv_uuidPV UUID物理ボリュームの UUID
デフォルトで pvs コマンドが表示するフィールドは、pv_namevg_namepv_fmtpv_attrpv_sizepv_free です。表示は pv_name でソートされます。
# pvs
  PV         VG     Fmt  Attr PSize  PFree
  /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G
  /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G
  /dev/sdd1  new_vg lvm2 a-   17.14G 17.13G
pvs コマンドに -v 引数を使用すると、デフォルトの表示に dev_size および pv_uuid のフィールドが追加されます。
# pvs -v
    Scanning for physical volume names
  PV         VG     Fmt  Attr PSize  PFree  DevSize PV UUID
  /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G  17.14G onFF2w-1fLC-ughJ-D9eB-M7iv-6XqA-dqGeXY
  /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G  17.14G Joqlch-yWSj-kuEn-IdwM-01S9-XO8M-mcpsVe
  /dev/sdd1  new_vg lvm2 a-   17.14G 17.13G  17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-tUqkCS
pvs コマンドに --segments 引数を使用すると、各物理ボリュームセグメントの情報を表示します。セグメントはエクステントの集合です。セグメントの表示は、論理ボリュームがフラグメント化 (断片化) しているかどうかを確認するのに役立ちます。
デフォルトで pvs --segments コマンドが表示するフィールドは、pv_namevg_namepv_fmtpv_attrpv_sizepv_freepvseg_startpvseg_size です。この表示は、物理ボリューム内で pv_namepvseg_size でソートされます。
# pvs --segments
  PV         VG         Fmt  Attr PSize  PFree  Start SSize
  /dev/hda2  VolGroup00 lvm2 a-   37.16G 32.00M     0  1172
  /dev/hda2  VolGroup00 lvm2 a-   37.16G 32.00M  1172    16
  /dev/hda2  VolGroup00 lvm2 a-   37.16G 32.00M  1188     1
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G     0    26
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G    26    24
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G    50    26
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G    76    24
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   100    26
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   126    24
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   150    22
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   172  4217
  /dev/sdb1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdc1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdd1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sde1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdf1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdg1  vg         lvm2 a-   17.14G 17.14G     0  4389
pvs -a コマンドを使用して、LVM が検出した、LVM 物理ボリュームとして初期化していないデバイスを確認できます。
# pvs -a
  PV                             VG     Fmt  Attr PSize  PFree
  /dev/VolGroup00/LogVol01                   --       0      0
  /dev/new_vg/lvol0                          --       0      0
  /dev/ram                                   --       0      0
  /dev/ram0                                  --       0      0
  /dev/ram2                                  --       0      0
  /dev/ram3                                  --       0      0
  /dev/ram4                                  --       0      0
  /dev/ram5                                  --       0      0
  /dev/ram6                                  --       0      0
  /dev/root                                  --       0      0
  /dev/sda                                   --       0      0
  /dev/sdb                                   --       0      0
  /dev/sdb1                      new_vg lvm2 a-   17.14G 17.14G
  /dev/sdc                                   --       0      0
  /dev/sdc1                      new_vg lvm2 a-   17.14G 17.09G
  /dev/sdd                                   --       0      0
  /dev/sdd1                      new_vg lvm2 a-   17.14G 17.14G

vgs コマンド

表4.4「vgs 表示フィールド」 は、vgs コマンドの表示引数、ヘッダーに表示されるフィールド名、およびフィールドの説明を一覧にまとめています。

表4.4 vgs 表示フィールド

引数ヘッダー説明
lv_count#LVボリュームグループに含まれる論理ボリュームの数
max_lvMaxLVボリュームグループ内で許容される論理ボリュームの最大数 (無制限の場合は 0)
max_pvMaxPVボリュームグループ内で許容される物理ボリュームの最大数 (無制限の場合は 0)
pv_count#PVボリュームグループを定義する物理ボリューム数
snap_count#SNボリュームグループに含まれるスナップショット数
vg_attrAttrボリュームグループのステータス: (w)riteable、(r)eadonly、resi(z)eable、e(x)ported、(p)artial、および (c)lustered
vg_extent_count#Extボリュームグループ内の物理エクステントの数
vg_extent_sizeExtボリュームグループ内の物理エクステントのサイズ
vg_fmtFmtボリュームグループのメタデータ形式 (lvm2 または lvm1)
vg_freeVFreeボリュームグループ内の残りの空き領域のサイズ
vg_free_countFreeボリュームグループ内の空き物理エクステントの数
vg_nameVGボリュームグループ名
vg_seqnoSeqボリュームグループの改訂を示す番号
vg_sizeVSizeボリュームグループのサイズ
vg_sysidSYS IDLVM1 システム ID
vg_tagsVG Tagsボリュームグループに割り当てられた LVM タグ
vg_uuidVG UUIDボリュームグループの UUID
デフォルトで vgs コマンドが表示するフィールドは、vg_namepv_countlv_countsnap_countvg_attrvg_sizevg_free です。表示は vg_name でソートされます。
# vgs
  VG     #PV #LV #SN Attr   VSize  VFree
  new_vg   3   1   1 wz--n- 51.42G 51.36G
vgs コマンドに -v 引数を使用すると、デフォルトの表示に vg_extent_size および vg_uuid のフィールドが追加されます。
# vgs -v
    Finding all volume groups
    Finding volume group "new_vg"
  VG     Attr   Ext   #PV #LV #SN VSize  VFree  VG UUID
  new_vg wz--n- 4.00M   3   1   1 51.42G 51.36G jxQJ0a-ZKk0-OpMO-0118-nlwO-wwqd-fD5D32

lvs コマンド

表4.5「lvs 表示フィールド」 は、lvs コマンドの表示引数、ヘッダーに表示されるフィールド名、およびフィールドの説明を一覧にまとめています。

注記

Red Hat Enterprise Linux の最近のリリースでは、lvs コマンドの出力に追加のフィールドが表示される場合がありますが、フィールドの順番は変わらず、追加のフィールドは最後に表示されます。

表4.5 lvs 表示フィールド

引数ヘッダー説明
chunksize
chunk_size
Chunkスナップショットボリュームのユニットサイズ
copy_percentCopy%ミラー化論理ボリュームの同期のパーセンテージ。さらに pv_move コマンドで物理エクステントを移動する時にも使用されます。
devicesDevices論理ボリュームを構成する配下のデバイス: 物理ボリューム、論理ボリューム、および物理エクステントと論理エクステントの開始点
lv_ancestorsAncestors(Red Hat Enterprise Linux 7.2 以降) シンプールスナップショットにおける、論理ボリュームの先祖 (ancestor)
lv_descendantsDescendants(Red Hat Enterprise Linux 7.2 以降) シンプールスナップショットにおける、論理ボリュームの子孫 (descendant)
lv_attrAttr論理ボリュームのステータス。論理ボリュームの属性ビットは以下のようになります。
ビット 1: ボリュームタイプ: (m)irrored (ミラー化)、(M)irrored without initial sync (初期同期なしのミラー化 )、(o)rigin (複製元)、(O)rigin with merging snapshot (マージするスナップショットがある複製元)、(r)aid (RAID)、(R)aid without initial sync (初期同期なしの RAID)、(s)napshot (スナップショット)、merging (S)napshot (マージするスナップショット)、(p)vmove (物理ボリュームの移動)、(v)irtual (仮想)、mirror or raid (i)mage (ミラーまたは RAID イメージ)、mirror or raid (I)mage out-of-sync (ミラーまたは RAID イメージの非同期)、mirror (l)og device (ミラーログデバイス)、under (c)onversion (変換中)、thin (V)olume (シンボリューム)、(t)hin pool (シンプール)、(T)hin pool data (シンプールデータ)、raid or thin pool m(e)tadata or pool metadata spare (RAID またはシンプールメタデータまたはプールメタデータのスペア)
ビット 2: パーミッション: (w)riteable (書き込み可能)、(r)ead-only (読み取り専用)、(R)ead-only activation of non-read-only volume (読み取り専用でないボリュームを読み取り専用にアクティブ化)
ビット 3: 割り当てポリシー: (a)nywhere、(c)ontiguous、(i)nherited、c(l)ing、(n)ormal。これは、たとえば pvmove コマンドの実行時など、割り当ての変更に対してボリュームが現在ロックされている場合に大文字になります。
ビット 4: 固定されたマイナー番号
ビット 5: 状態: (a)ctive (アクティブ)、(s)uspended (サスペンド)、(I)nvalid snapshot (無効なスナップショット)、invalid (S)uspended snapshot (無効なサスペンドされたスナップショット)、snapshot (m)erge failed (スナップショットのマージが失敗)、suspended snapshot (M)erge failed (サスペンドされたスナップショットのマージが失敗)、mapped (d)evice present without tables (テーブルのないマッピングされたデバイス)、mapped device present with (i)nactive table (非アクティブのテーブルを持つマッピングされたデバイス)
ビット 6: デバイス開放(o)
ビット 7: ターゲットタイプ: (m)irror (ミラー)、(r)aid (RAID)、(s)napshot (スナップショット)、(t)hin (シン)、(u)nknown (不明)、(v)irtual (仮想)。これは、同じターゲットのカーネルに関連する論理ボリュームをグループにまとめます。たとえば、ミラーイメージ、ミラーログ、ミラー自体が元のデバイスマッパーのミラーカーネルドライバーを使用する場合、それらは (m) と表示されます。md raid カーネルドライバーを使用する同等の raid はすべて (r) と表示されます。元のデバイスマッパードライバーを使用するスナップショットは (s) と表示され、シンプロビジョニングドライバーを使用するシンボリュームのスナップショットは (t) と表示されます。
ビット 8: 新しく割り当てられたデータブロックは使用前にゼロ(z) のブロックで上書きされます。
ビット 9: ボリュームの正常性: (p)artial (部分的)、(r)efresh needed (更新が必要)、(m)ismatches exist (不一致が存在)、(w)ritemostly (書き込み多発)。部分的 (p) は、この論理ボリュームが使用する 1 つ以上の物理ボリュームがシステムから欠落していることを表します。更新 (r) は、この RAID 論理ボリュームが使用する 1 つ以上の物理ボリュームが書き込みエラーが生じたことを表します。書き込みエラーは、その物理ボリュームの一時的な障害によって引き起こされたか、または物理ボリュームに障害があることを示すかのいずれかの可能性があります。デバイスは更新するか、または置き換える必要があります。不一致 (m) は、RAID 論理ボリュームのアレイに一貫していない部分があることを表します。不整合は、RAID 論理ボリューム上で check 操作を開始することによって検出されます。(スクラビング操作 check および repair は、lvchange コマンドによって RAID 論理ボリューム上で実行できます。) 書き込み多発 (w) は write-mostly とマークが付けられた RAID 1 論理ボリュームのデバイスを表します。
ビット 10: s(k)ip activation (アクティブ化のスキップ): このボリュームには、アクティブ化の実行時にスキップされるようにフラグが設定されます。
lv_kernel_majorKMaj論理ボリュームの実際のメジャーデバイス番号 (非アクティブの場合は -1)
lv_kernel_minorKMIN論理ボリュームの実際のマイナーデバイス番号 (非アクティブの場合は -1)
lv_majorMaj論理ボリュームの永続的なメジャーデバイス番号 (未指定の場合は -1)
lv_minorMin論理ボリュームの永続的なマイナーデバイス番号 (未指定の場合は -1)
lv_nameLV論理ボリュームの名前
lv_sizeLSize論理ボリュームのサイズ
lv_tagsLV Tags論理ボリュームに割り当てられた LVM タグ
lv_uuidLV UUID論理ボリュームの UUID
mirror_logLogミラーログが存在するデバイス
modulesモジュールこの論理ボリュームを使用するのに必要な対応するカーネルデバイスマッパーターゲット
move_pvMovepvmove コマンドで作成された一時的な論理ボリュームの元となる物理ボリューム
originOriginスナップショットボリュームの複製元のデバイス
regionsize
region_size
Regionミラー化論理ボリュームのユニットサイズ
seg_count#Seg論理ボリューム内のセグメント数
seg_sizeSSize論理ボリューム内のセグメントサイズ
seg_startStart論理ボリューム内のセグメントのオフセット
seg_tagsSeg Tags論理ボリュームのセグメントに割り当てられた LVM タグ
segtypeタイプ論理ボリュームのセグメントタイプ (例: ミラー、ストライプ、リニア)
snap_percentSnap%使用中スナップショットボリュームの現在のパーセンテージ
stripes#Str論理ボリューム内のストライプ、またはミラーの数
stripesize
stripe_size
Stripeストライプ化論理ボリューム内のストライプのユニットサイズ
デフォルトで lvs コマンドが表示するフィールドは、lv_namevg_namelv_attrlv_sizeoriginsnap_percentmove_pvmirror_logcopy_percentconvert_lv です。デフォルトの表示は、ボリュームグループ内で vg_namelv_name でソートされます。
# lvs
  LV         VG     Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lvol0      new_vg owi-a- 52.00M
  newvgsnap1 new_vg swi-a-  8.00M lvol0    0.20
lvs コマンドで -v 引数を使用すると、デフォルトの表示に seg_countlv_majorlv_minorlv_kernel_majorlv_kernel_minorlv_uuid のフィールドが追加されます。
# lvs -v
    Finding all logical volumes
  LV         VG     #Seg Attr   LSize  Maj Min KMaj KMin Origin Snap%  Move Copy%  Log Convert LV UUID
  lvol0      new_vg    1 owi-a- 52.00M  -1  -1 253  3                                          LBy1Tz-sr23-OjsI-LT03-nHLC-y8XW-EhCl78
  newvgsnap1 new_vg    1 swi-a-  8.00M  -1  -1 253  5    lvol0    0.20                         1ye1OU-1cIu-o79k-20h2-ZGF0-qCJm-CfbsIx
lvs コマンドで --segments 引数を使用すると、セグメント情報を強調したデフォルトのコラムで情報を表示します。segments 引数を使用すると、seg 接頭辞はオプションとなります。デフォルトで lvs --segments コマンドが表示するフィールドは、lv_namevg_namelv_attrstripessegtypeseg_size です。デフォルトの表示は、ボリュームグループ内の vg_namelv_name でソートされ、論理ボリューム内では seg_start でソートされます。論理ボリュームがフラグメント化されている場合、このコマンドの出力は以下を表示します。
# lvs --segments
  LV       VG         Attr   #Str Type   SSize
  LogVol00 VolGroup00 -wi-ao    1 linear  36.62G
  LogVol01 VolGroup00 -wi-ao    1 linear 512.00M
  lv       vg         -wi-a-    1 linear 104.00M
  lv       vg         -wi-a-    1 linear 104.00M
  lv       vg         -wi-a-    1 linear 104.00M
  lv       vg         -wi-a-    1 linear  88.00M
lvs --segments コマンドで -v 引数を使用すると、デフォルトの表示に seg_startstripesizechunksize のフィールドが追加されます。
# lvs -v --segments
    Finding all logical volumes
  LV         VG     Attr   Start SSize  #Str Type   Stripe Chunk
  lvol0      new_vg owi-a-    0  52.00M    1 linear     0     0
  newvgsnap1 new_vg swi-a-    0   8.00M    1 linear     0  8.00K
以下の例は、1 つの設定された論理ボリュームを持つシステム上での lvs コマンドのデフォルト出力を示しています。その後に、segments 引数を指定した lvs コマンドのデフォルト出力を表示しています。
# lvs
  LV    VG     Attr   LSize  Origin Snap%  Move Log Copy%
  lvol0 new_vg -wi-a- 52.00M
# lvs --segments
  LV    VG     Attr   #Str Type   SSize
  lvol0 new_vg -wi-a-    1 linear 52.00M

4.8.3. LVM 報告のソート

通常、lvsvgs、または pvs のコマンドの出力全体をソートして、コラムを正しく配置するには、まずそれを生成して内部に保管する必要があります。--unbuffered 引数を指定すると、生成直後にソートされていないままの出力で表示することができます。
別の順列のコラム一覧のソートを指定するには、報告コマンドのいずれかと一緒に -O 引数を使用します。出力自体の中にこれらのフィールドを含める必要はありません。
以下の例は、物理ボリュームの名前、サイズ、および空き領域を表示する pvs コマンドの出力を示しています。
# pvs -o pv_name,pv_size,pv_free
  PV         PSize  PFree
  /dev/sdb1  17.14G 17.14G
  /dev/sdc1  17.14G 17.09G
  /dev/sdd1  17.14G 17.14G
以下の例では、空き領域のフィールドでソートされた同じ出力を示しています。
# pvs -o pv_name,pv_size,pv_free -O pv_free
  PV         PSize  PFree
  /dev/sdc1  17.14G 17.09G
  /dev/sdd1  17.14G 17.14G
  /dev/sdb1  17.14G 17.14G
以下の例では、ソートするフィールドを表示する必要がないことを示しています。
# pvs -o pv_name,pv_size -O pv_free
  PV         PSize
  /dev/sdc1  17.14G
  /dev/sdd1  17.14G
  /dev/sdb1  17.14G
逆順でソートするには、-O 引数の後で指定するフィールドの先頭に - 印を付けます。
# pvs -o pv_name,pv_size,pv_free -O -pv_free
  PV         PSize  PFree
  /dev/sdd1  17.14G 17.14G
  /dev/sdb1  17.14G 17.14G
  /dev/sdc1  17.14G 17.09G

4.8.4. ユニットの指定

LVM 報告表示用の単位を指定するには、報告コマンドに --units 引数を使用します。バイト(b)、キロバイト(k)、メガバイト(m)、ギガバイト(g)、テラバイト(t)、エクサバイト(e)、ペタバイト(p)、および人間が読める表示(h) を指定できます。デフォルトは人間が読める表示です。このデフォルト設定を上書きするには、lvm.conf ファイルの global セクション内の units パラメーターを設定します。
以下の例は、pvs コマンドの出力をデフォルトのギガバイトでなく、メガバイトで指定しています。
# pvs --units m
  PV         VG     Fmt  Attr PSize     PFree
  /dev/sda1         lvm2 --   17555.40M 17555.40M
  /dev/sdb1  new_vg lvm2 a-   17552.00M 17552.00M
  /dev/sdc1  new_vg lvm2 a-   17552.00M 17500.00M
  /dev/sdd1  new_vg lvm2 a-   17552.00M 17552.00M
デフォルトでは、単位は 2 の累乗 (1024 の倍数) で表示されます。単位を 1000 の倍数で表示するには、大文字 (B、K、M、G、T、H) で単位を指定することができます。
以下のコマンドは、デフォルト動作である 1024 の倍数として出力を表示します。
# pvs
  PV         VG     Fmt  Attr PSize  PFree
  /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G
  /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G
  /dev/sdd1  new_vg lvm2 a-   17.14G 17.14G
以下のコマンドは 1000 の倍数として出力を表示します。
#  pvs --units G
  PV         VG     Fmt  Attr PSize  PFree
  /dev/sdb1  new_vg lvm2 a-   18.40G 18.40G
  /dev/sdc1  new_vg lvm2 a-   18.40G 18.35G
  /dev/sdd1  new_vg lvm2 a-   18.40G 18.40G
セクター (512 バイトとして定義) またはカスタム単位も指定できます。
以下の例は、pvs コマンドの出力をセクター数として表示します。
# pvs --units s
  PV         VG     Fmt  Attr PSize     PFree
  /dev/sdb1  new_vg lvm2 a-   35946496S 35946496S
  /dev/sdc1  new_vg lvm2 a-   35946496S 35840000S
  /dev/sdd1  new_vg lvm2 a-   35946496S 35946496S
以下の例は、pvs コマンドの出力を 4 MB 単位で表示しています。
# pvs --units 4m
  PV         VG     Fmt  Attr PSize    PFree
  /dev/sdb1  new_vg lvm2 a-   4388.00U 4388.00U
  /dev/sdc1  new_vg lvm2 a-   4388.00U 4375.00U
  /dev/sdd1  new_vg lvm2 a-   4388.00U 4388.00U

4.8.5. JSON 形式の出力 (Red Hat Enterprise Linux 7.3 以降)

Red Hat Enterprise Linux 7.3 では、LVM 表示コマンドで、--reportformat オプションを使用して JSON 形式で出力を表示できます。
以下の例は、標準的なデフォルト形式の lvs の出力を示しています。
# lvs
  LV      VG            Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  my_raid my_vg         Rwi-a-r---  12.00m                                    100.00
  root    rhel_host-075 -wi-ao----   6.67g
  swap    rhel_host-075 -wi-ao---- 820.00m
以下のコマンドは、JSON 形式を指定する場合と同じ LVM 設定の出力を表示します。
# lvs --reportformat json
  {
      "report": [
          {
              "lv": [
                  {"lv_name":"my_raid", "vg_name":"my_vg", "lv_attr":"Rwi-a-r---", "lv_size":"12.00m", "pool_lv":"", "origin":"", "data_percent":"", "metadata_percent":"", "move_pv":"", "mirror_log":"", "copy_percent":"100.00", "convert_lv":""},
                  {"lv_name":"root", "vg_name":"rhel_host-075", "lv_attr":"-wi-ao----", "lv_size":"6.67g", "pool_lv":"", "origin":"", "data_percent":"", "metadata_percent":"", "move_pv":"", "mirror_log":"", "copy_percent":"", "convert_lv":""},
                  {"lv_name":"swap", "vg_name":"rhel_host-075", "lv_attr":"-wi-ao----", "lv_size":"820.00m", "pool_lv":"", "origin":"", "data_percent":"", "metadata_percent":"", "move_pv":"", "mirror_log":"", "copy_percent":"", "convert_lv":""}
              ]
          }
      ]
  }
また、/etc/lvm/lvm.conf ファイルで output_format 設定を使用して、レポート形式を設定オプションとして設定することもできます。ただし、コマンドラインの --reportformat 設定はこの設定よりも優先されます。

4.8.6. コマンドログレポート (Red Hat Enterprise Linux 7.3 以降)

Red Hat Enterprise Linux 7.3 では、レポート指向および処理指向の LVM コマンドを使用して、コマンドログを報告できます (これが log/report_command_log 設定で有効になっている場合)。このレポートで表示およびソートするフィールドセットを決定できます。
以下の例では、LVM コマンド向けの完全なログレポートを生成するよう LVM を設定します。この例では、論理ボリューム lvol0lvol1 の両方が、それらの論理ボリュームを含むボリュームグループ VG とともに正常に処理されたことを確認できます。
# lvmconfig --type full log/command_log_selection
command_log_selection="all"

# lvs
  Logical Volume
  ==============
  LV    LSize Cpy%Sync
  lvol1 4.00m 100.00
  lvol0 4.00m

  Command Log
  ===========
  Seq LogType Context    ObjType ObjName ObjGrp  Msg     Errno RetCode
    1 status  processing lv      lvol0   vg      success     0       1
    2 status  processing lv      lvol1   vg      success     0       1
    3 status  processing vg      vg              success     0       1

# lvchange -an vg/lvol1
  Command Log
  ===========
  Seq LogType Context    ObjType ObjName ObjGrp  Msg     Errno RetCode
    1 status  processing lv      lvol1   vg      success     0       1
    2 status  processing vg      vg              success     0       1
LVM レポートおよびコマンドログの設定の詳細については、lvmreport の man ページを参照してください。