4.9. 为 LVM 自定义报告
您可以使用
pvs
、lvs
和 vgs
命令得到一份 LVM 对象的简洁自定义报告。这些命令生成的报告包括每行一个对象的输出结果。每行包含有关对象属性字段排序列表。选择要报告的对象有五种方法:根据物理卷、卷组、逻辑卷、物理卷片段和逻辑卷片段。
以下部分提供了:
- 您可以用来扩展生成报告格式的参数概述。
- 您可以为每个 LVM 对象选择的字段列表。
- 您可以用来对生成的报告进行排序的命令参数总结。
- 指定报告输出结果单位的步骤。
4.9.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
参数制止标题行。这在写脚本时很有用。下面的命令合并使用--noheadings
和pv_name
参数,将生成所有物理卷的列表。#
pvs --noheadings -o pv_name
/dev/sdb1 /dev/sdc1 /dev/sdd1--separator 分隔符
参数使用 分隔符 来分隔每个字段。这在对输出结果运行grep
命令的脚本中很有用。下面的例子使用等号(=)分隔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
参数时让字段对齐,请联合使用separator
和--aligned
参数。#
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
You can use the
-P
argument of the lvs
or vgs
command to display information about a failed volume that would otherwise not appear in the output. For information on the output this argument yields, see 第 6.2 节 “在失败的设备中显示信息。”.
有关显示参数的完整列表请参考
pvs
(8)、vgs
(8) 和 lvs
(8) man page。
卷组字段可以与物理卷(和物理卷片段)字段或者逻辑卷(和逻辑卷片段)字段混合,但物理卷和逻辑卷字段不能混合。例如:下面的命令将在输出结果中每行显示一个物理卷。
# 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