Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
4.8. LVM 用のカスタム報告
LVM では、カスタマイズされたレポートを生成したり、レポートの出力をフィルタリングしたりするためのさまざまな設定およびコマンドラインオプションが提供されます。LVM レポート機能の完全な説明は、lvmreport(7) man ページを参照してください。
pvs、lvs コマンド、および 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 ページを参照してください。
以下のセクションでは、pvs コマンド、lvs コマンド、および vgs コマンドを使用して、レポートをカスタマイズする概要を説明します。
- 「形式の制御」。レポートの書式を制御するために使用できるコマンド引数の概要を提供します。
- 「オブジェクト表示フィールド」。各 LVM オブジェクトに対して表示できるフィールドの一覧を提供します。
- 「LVM 報告のソート」。生成されたレポートをソートするために使用できるコマンド引数の概要を提供します。
- 「ユニットの指定」。レポート出力の単位を指定する手順を提供します。
- 「JSON 形式の出力 (Red Hat Enterprise Linux 7.3 以降)」。JSON 形式の出力を指定する例を提供します (Red Hat Enterprise Linux 7.3 以降)。
- 「コマンドログレポート (Red Hat Enterprise Linux 7.3 以降)」。コマンドログの例を提供します。
4.8.1. 形式の制御
pvs、lvs コマンド、または 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 コマンドは、デフォルトフィールドに加えて、DevSize
フィールドと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.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
引数は、区切り文字 を使用して、各フィールドを区切ります。以下の例は、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.14Gseparator
引数の使用時にフィールドを配置するには、--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
表示引数の完全なリストは、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. オブジェクト表示フィールド
このセクションでは、pvs コマンド、vgs コマンド、および lvs コマンドを使用して、LVM オブジェクトについて表示できる情報を一覧表示する一連の表を提供します。
便宜上、フィールド名の接頭辞は、コマンドのデフォルトと一致する場合は省略できます。たとえば、pvs コマンドでは、
name
は pv_name
を意味しますが、vgs コマンドでは、name
は vg_name
として解釈されます。
以下のコマンドを実行すると、pvs -o pv_free の実行と同じです。
# pvs -o free
PFree
17.14G
17.09G
17.14G
注記
pvs、vgs、および lvs 出力の属性フィールドにある文字数は、後続のリリースで増加する可能性があります。既存の文字フィールドの位置は変更しませんが、新しいフィールドが末尾に追加される可能性があります。相対的な位置を使用して特定の属性文字を検索するスクリプトを作成する場合は、このことを考慮して、フィールドの終点ではなく、フィールドの始点を基点として文字検索を行います。たとえば、
lv_attr
フィールドの 9 番目のビットの文字 p
を検索するには、文字列 "^/........p/" を検索できますが、文字列 "/*p$/" を検索することはできません。
pvs コマンド
表4.3「pvs コマンド表示フィールド」 は、pvs コマンドの表示引数、ヘッダーに表示されるフィールド名、およびフィールドの説明をリストにまとめています。
表4.3 pvs コマンド表示フィールド
引数 | ヘッダー | 説明 |
---|---|---|
dev_size | DevSize | 物理ボリュームを作成する基となるデバイスのサイズ |
pe_start | 1st PE | 基となるデバイス内の最初の物理エクステントの開始点までのオフセット |
pv_attr | Attr | 物理ボリュームのステータス - (a)llocatable または e(x)ported |
pv_fmt | Fmt | 物理ボリュームのメタデータ形式(lvm2 または lvm1 ) |
pv_free | PFree | 物理ボリュームにある残りの空き領域 |
pv_name | PV | 物理ボリュームの名前 |
pv_pe_alloc_count | Alloc | 使用される物理エクステントの数 |
pv_pe_count | PE | 物理エクステントの数 |
pvseg_size | SSize | 物理ボリュームのセグメントサイズ |
pvseg_start | Start | 物理ボリュームセグメントの最初の物理エクステント |
pv_size | PSize | 物理ボリュームのサイズ |
pv_tags | PV Tags | 物理ボリュームに割り当てられた LVM タグ |
pv_used | Used | 物理ボリュームで現在使用中の領域の量 |
pv_uuid | PV UUID | 物理ボリュームの UUID |
pvs コマンドは、デフォルトで
pv_name
、vg_name
、pv_fmt
、pv_attr
、、pv_size
、pv_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_name
、vg_name
、pv_fmt、pv_fmt
、pv_attr
、pv_size
、pvseg_
start
、pvseg_size
のフィールドを表示します。この表示は、物理ボリューム内では pv_name
および pvseg_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_lv | MaxLV | ボリュームグループで許容される論理ボリュームの最大数 (無制限の場合は 0) |
max_pv | MaxPV | ボリュームグループで許容される物理ボリュームの最大数 (無制限の場合は 0) |
pv_count | #PV | ボリュームグループを定義する物理ボリューム数 |
snap_count | #SN | ボリュームグループに含まれるスナップショット数 |
vg_attr | Attr | ボリュームグループのステータス - (w)riteable (書き込み可能)、(r)eadonly (読み取りのみ)、resi(z)eable (サイズ変更可能)、e(x)ported (エクスポート済)、(p)artial (部分的)、および (c)lustered (クラスター化) |
vg_extent_count | #Ext | ボリュームグループの物理エクステントの数 |
vg_extent_size | Ext | ボリュームグループの物理エクステントのサイズ |
vg_fmt | Fmt | ボリュームグループのメタデータ形式(lvm2 または lvm1 ) |
vg_free | VFree | ボリュームグループの残りの空き領域のサイズ |
vg_free_count | Free | ボリュームグループの空き物理エクステントの数 |
vg_name | VG | ボリュームグループ名 |
vg_seqno | Seq | ボリュームグループの改訂を示す番号 |
vg_size | VSize | ボリュームグループのサイズ |
vg_sysid | SYS ID | LVM1 システム ID |
vg_tags | VG Tags | ボリュームグループに割り当てられた LVM タグ |
vg_uuid | VG UUID | ボリュームグループの UUID |
vgs コマンドは、デフォルトで
vg_name
、pv_count
、lv_count
、snap_count
、vg_attr
、vg_size
、vg_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 表示フィールド
引数 | ヘッダー | 説明 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chunk | スナップショットボリュームのユニットサイズ | ||||||||||
copy_percent | Copy% | ミラー化論理ボリュームの同期率。pv_move コマンドで物理エクステントを移動する際にも使用されます。 | ||||||||||
devices | Devices | 論理ボリュームを設定するデバイス - 物理ボリューム、論理ボリューム、および物理エクステントと論理エクステントの開始点 | ||||||||||
lv_ancestors | Ancestors | (Red Hat Enterprise Linux 7.2 以降) シンプールスナップショットにおける、論理ボリュームの先祖 (ancestor) | ||||||||||
lv_descendants | Descendants | (Red Hat Enterprise Linux 7.2 以降) シンプールスナップショットにおける、論理ボリュームの子孫 (descendant) | ||||||||||
lv_attr | Attr | 論理ボリュームのステータス。論理ボリュームの属性ビットは以下のようになります。
| ||||||||||
lv_kernel_major | KMaj | 論理ボリュームの実際のメジャーデバイス番号 (非アクティブの場合は -1) | ||||||||||
lv_kernel_minor | KMIN | 論理ボリュームの実際のマイナーデバイス番号 (非アクティブの場合は -1) | ||||||||||
lv_major | Maj | 論理ボリュームの永続的なメジャーデバイス番号 (未指定の場合は -1) | ||||||||||
lv_minor | Min | 論理ボリュームの永続的なマイナーデバイス番号 (未指定の場合は -1) | ||||||||||
lv_name | LV | 論理ボリュームの名前 | ||||||||||
lv_size | LSize | 論理ボリュームのサイズ | ||||||||||
lv_tags | LV Tags | 論理ボリュームに割り当てられた LVM タグ | ||||||||||
lv_uuid | LV UUID | 論理ボリュームの UUID | ||||||||||
mirror_log | Log | ミラーログが存在するデバイス | ||||||||||
modules | Modules | この論理ボリュームを使用するのに必要な、対応するカーネルデバイスマッパーターゲット | ||||||||||
move_pv | Move | pvmove コマンドで作成された一時的な論理ボリュームの、ソース物理ボリューム | ||||||||||
origin | Origin | スナップショットボリュームの作成元のデバイス | ||||||||||
| Region | ミラー化論理ボリュームのユニットサイズ | ||||||||||
seg_count | #Seg | 論理ボリュームのセグメント数 | ||||||||||
seg_size | SSize | 論理ボリュームのセグメントサイズ | ||||||||||
seg_start | Start | 論理ボリュームのセグメントのオフセット | ||||||||||
seg_tags | Seg Tags | 論理ボリュームのセグメントに割り当てられた LVM タグ | ||||||||||
segtype | タイプ | 論理ボリュームのセグメントタイプ (例: ミラー、ストライプ、リニア) | ||||||||||
snap_percent | Snap% | 使用中スナップショットボリュームの現在のパーセンテージ | ||||||||||
stripes | #Str | 論理ボリュームのストライプ、またはミラーの数 | ||||||||||
| Stripe | ストライプ化論理ボリュームのストライプのユニットサイズ |
lvs コマンドはデフォルトで、
lv_name
、vg_name
、lv_attr
、lv_size
、origin
、snap_percent
、move_pv
、mirror_log
、copy_lv、convert_
lv
フィールドを表示します。デフォルトの表示は、ボリュームグループ内では vg_name
および lv_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_count
、lv_major
、lv_minor
、lv_kernel_major
、lv_kernel_minor
、lv_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_name
、vg_name
、lv_attr
、stripe、segtype
、seg_size
の各フィールドを表示します。
デフォルトの表示は、ボリュームグループ内では vg_name
、lv_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_start
、stripesize
、chunksize
のフィールドが追加されます。
# 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 報告のソート
通常、lvs コマンド、vgs コマンド、または 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 を設定します。この例では、論理ボリューム
lvol0
と lvol1
の両方が、ボリュームを含むボリュームグループ 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 ページを参照してください。