67.6. 自定义 LVM 报告
LVM 提供了广泛的配置和命令行选项来生成自定义报告。您可以对输出进行排序,指定单元、使用选择条件,并更新 lvm.conf
文件以自定义 LVM 报告。
67.6.1. 控制 LVM 显示的格式 复制链接链接已复制到粘贴板!
当您使用没有附加选项的 pvs
、lvs
或 vgs
命令时,您会看到以默认排序顺序显示的默认字段集合。pvs
命令的默认字段包括以下信息,按物理卷名称排序:
pvs
# pvs
PV VG Fmt Attr PSize PFree
/dev/vdb1 VolumeGroupName lvm2 a-- 17.14G 17.14G
/dev/vdb2 VolumeGroupName lvm2 a-- 17.14G 17.09G
/dev/vdb3 VolumeGroupName lvm2 a-- 17.14G 17.14G
PV
- 物理卷名称。
VG
- 卷组名称。
Fmt
-
物理卷的元数据格式:
lvm2
或lvm1
。 Attr
- 物理卷的状态:(a)- 可分配或(x)- 导出。
PSize
- 物理卷的大小。
PFree
- 物理卷中剩余的可用空间。
显示自定义字段
要显示与默认字段不同的字段,请使用 -o
选项。下面的例子只显示物理卷的名称、大小和可用空间:
pvs -o pv_name,pv_size,pv_free
# pvs -o pv_name,pv_size,pv_free
PV PSize PFree
/dev/vdb1 17.14G 17.14G
/dev/vdb2 17.14G 17.09G
/dev/vdb3 17.14G 17.14G
对 LVM 显示进行排序
要根据特定条件对结果进行排序,请使用 -O
选项。以下示例按其物理卷的空闲空间以升序排序条目:
pvs -o pv_name,pv_size,pv_free -O pv_free
# pvs -o pv_name,pv_size,pv_free -O pv_free
PV PSize PFree
/dev/vdb2 17.14G 17.09G
/dev/vdb1 17.14G 17.14G
/dev/vdb3 17.14G 17.14G
要按降序排列结果,请使用 -O
选项和 -
字符:
pvs -o pv_name,pv_size,pv_free -O -pv_free
# pvs -o pv_name,pv_size,pv_free -O -pv_free
PV PSize PFree
/dev/vdb1 17.14G 17.14G
/dev/vdb3 17.14G 17.14G
/dev/vdb2 17.14G 17.09G
67.6.2. 为 LVM 显示指定单位 复制链接链接已复制到粘贴板!
您可以通过指定 LVM 显示命令的 --units
参数,以 2 或 10 为基数查看 LVM 设备的大小。请查看下表以了解所有参数:
单元类型 | 描述 | 可用选项 | default |
---|---|---|---|
基数 2 单位 | 单位以 2 的幂(1024 的倍数)显示。 |
|
|
基数 10 单位 | 以 1000 的倍数显示的单位。 |
| N/A |
自定义单位 |
数量与 2 或 10 基数单位的组合。例如,若要以 4MB 为单位显示结果,可使用 | N/A | N/A |
如果您没有指定单位的值,则默认使用人类可读的格式(
r
)。以下vgs
命令以人类可读的格式显示 VG 的大小。使用最合适的单位,并且舍入指示符<
显示实际大小是一个大概值,其小于 931 gibibytes。vgs myvg
# vgs myvg VG #PV #LV #SN Attr VSize VFree myvg 1 1 0 wz-n <931.00g <930.00g
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
pvs
命令以基数 2 gibibyte 单位显示/dev/vdb
物理卷的输出:pvs --units g /dev/vdb
# pvs --units g /dev/vdb PV VG Fmt Attr PSize PFree /dev/vdb myvg lvm2 a-- 931.00g 930.00g
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
pvs
命令以基数 10GB 单位显示/dev/vdb
物理卷的输出:pvs --units G /dev/vdb
# pvs --units G /dev/vdb PV VG Fmt Attr PSize PFree /dev/vdb myvg lvm2 a-- 999.65G 998.58G
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
pvs
命令以 512 字节扇区显示输出:pvs --units s
# pvs --units s PV VG Fmt Attr PSize PFree /dev/vdb myvg lvm2 a-- 1952440320S 1950343168S
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您可以为 LVM 显示命令指定自定义单位。下面的例子以 4MB 为单位显示
pvs
命令的输出:pvs --units 4m
# pvs --units 4m PV VG Fmt Attr PSize PFree /dev/vdb myvg lvm2 a-- 238335.00U 238079.00U
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
67.6.3. 自定义 LVM 配置文件 复制链接链接已复制到粘贴板!
您可以通过编辑 lvm.conf
文件,根据具体的存储和系统要求自定义 LVM 配置。例如,您可以编辑 lvm.conf
文件来修改过滤设置、配置卷组自动激活、管理精简池或自动扩展快照。
流程
-
在您选择的编辑器中打开
lvm.conf
文件。 通过取消要修改默认显示值的设置的注释并进行修改来自定义
lvm.conf
文件。要自定义您在
lvs
输出中看到的字段,请取消lvs_cols
参数的注释并进行修改:lvs_cols="lv_name,vg_name,lv_attr"
lvs_cols="lv_name,vg_name,lv_attr"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要隐藏
pvs
、vgs
和lvs
命令的空字段,请取消compact_output=1
设置的注释:compact_output = 1
compact_output = 1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要将 gigabytes 设置为
pvs
、vgs
和lvs
命令的默认单位,请将units = "r"
设置替换为units = "G"
:units = "G"
units = "G"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
确保已取消了
lvm.conf
文件的相应部分的注释。例如,要修改lvs_cols
参数,必须取消report
部分的注释:report { ... }
report { ... }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
修改
lvm.conf
文件后查看更改的值:lvmconfig --typeconfig diff
# lvmconfig --typeconfig diff
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
67.6.4. 定义 LVM 选择标准 复制链接链接已复制到粘贴板!
选择标准是 <field> <operator> <value>
形式的一组语句,它使用比较运算符来定义特定字段的值。然后,处理或显示与选择条件匹配的对象。对象可以是物理卷(PV)、卷组(VG)或逻辑卷(LV)。语句通过逻辑和分组运算符进行组合。
要定义选择标准,请使用 -S
或 --select
选项,后跟一个或多个语句。
-S
选项的工作原理是通过描述要处理的对象,而不是命名每个对象。这在处理许多对象时很有用,当搜索有复杂特征集合的对象时,很难查找和单独命名每个对象。也可以使用 -S
选项作为一种快捷方式,来避免输入许多名称。
要查看字段和可能的运算符的完整集合,请使用 lvs -S help
命令。使用任何报告或处理命令替换 lvs
来查看该命令的详情:
-
报告命令包括
pvs
,vgs
,lvs
,pvdisplay
,vgdisplay
,lvdisplay
和dmsetup info -c
。 -
处理命令包括
pvchange
,vgchange
,lvchange
,vgimport
,vgexport
,vgremove
和lvremove
。
使用 pvs
命令的选择条件的示例
以下
pvs
命令示例只显示名称包含字符串nvme
的物理卷:pvs -S name=~nvme
# pvs -S name=~nvme PV Fmt Attr PSize PFree /dev/nvme2n1 lvm2 --- 1.00g 1.00g
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
pvs
命令示例只显示myvg
卷组中的物理设备:pvs -S vg_name=myvg
# pvs -S vg_name=myvg PV VG Fmt Attr PSize PFree /dev/vdb1 myvg lvm2 a-- 1020.00m 396.00m /dev/vdb2 myvg lvm2 a-- 1020.00m 896.00m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
使用 lvs
命令的选择条件的示例
以下
lvs
命令示例只显示大小大于 100m 但小于 200m 的逻辑卷:lvs -S 'size > 100m && size < 200m'
# lvs -S 'size > 100m && size < 200m' LV VG Attr LSize Cpy%Sync rr myvg rwi-a-r--- 120.00m 100.00
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
lvs
命令示例只显示名称包含lvol
和 0 到 2 之间任何数字的逻辑卷:lvs -S name=~lvol[02]
# lvs -S name=~lvol[02] LV VG Attr LSize lvol0 myvg -wi-a----- 100.00m lvol2 myvg -wi------- 100.00m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
lvs
命令示例只显示具有raid1
段类型的逻辑卷:lvs -S segtype=raid1
# lvs -S segtype=raid1 LV VG Attr LSize Cpy%Sync rr myvg rwi-a-r--- 120.00m 100.00
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
高级示例
您可以将选择条件与其他选项合并。
以下
lvchange
命令示例只将特定的标签mytag
添加给活跃的逻辑卷:lvchange --addtag mytag -S active=1
# lvchange --addtag mytag -S active=1 Logical volume myvg/mylv changed. Logical volume myvg/lvol0 changed. Logical volume myvg/lvol1 changed. Logical volume myvg/rr changed.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
lvs
命令示例显示所有名称与_pmspare
不匹配的逻辑卷,并将默认标头改为自定义卷:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 下面的
lvchange
命令示例使用role=thinsnapshot
和origin=thin1
标记正常激活命令过程要跳过的逻辑卷:lvchange --setactivationskip n -S 'role=thinsnapshot && origin=thin1'
# lvchange --setactivationskip n -S 'role=thinsnapshot && origin=thin1' Logical volume myvg/thin1s changed.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下
lvs
命令示例只显示与所有三个条件都匹配的逻辑卷:-
名称包含
_tmeta
。 -
角色是
metadata
。 - 大小小于或等于 4m。
lvs -a -S 'name=~_tmeta && role=metadata && size <= 4m'
# lvs -a -S 'name=~_tmeta && role=metadata && size <= 4m' LV VG Attr LSize [tp_tmeta] myvg ewi-ao---- 4.00m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
名称包含
其他资源
-
您系统上的
lvmreport (7)
手册页