lvs命令用于查看逻辑卷基本信息,输出简洁,显示LV名称、所属VG、属性、大小及激活状态;默认仅显示已激活LV,加-a可显示所有LV,适合快速确认存在性与状态。

用 lvs 查看逻辑卷基本信息
lvs 是最直接、最常用的命令,输出简洁,适合快速确认 LV 是否存在、大小、所属 VG 和激活状态。它默认只显示已激活的逻辑卷,不带路径前缀,列名紧凑(如 LV、VG、Attr、LSize)。
常见错误现象:执行 lvs 没有输出,不代表没有 LV —— 可能是未激活,或被过滤(比如用了 -a 但没加)。
- 加
-a显示所有 LV(包括 inactive 状态):lvs -a - 加
-o +devices查看 LV 底层映射的 PV 设备:lvs -o +devices - 加
--noheadings -o lv_name,vg_name,lv_size适合脚本解析,避免表头干扰
用 lvscan 检查逻辑卷激活状态
lvscan 的核心作用是扫描并报告“当前是否激活”,输出格式固定(active '/dev/vg01/lvol0' [10.00 GiB]),对运维巡检特别友好。它不依赖 VG 是否已激活 —— 即使 VG 被 vgchange -a n 停用,lvscan 仍能列出 LV 名称,但会标为 inactive。
容易踩的坑:误以为 lvscan 能显示大小或路径细节;它只告诉你“有没有”和“活没活”,不提供容量、PE 分布或文件系统信息。
- 若输出中全是
inactive,先检查 VG 是否激活:vgscan && vgchange -a y <vg_name> -
lvscan -v可显示更详细扫描过程(含设备节点路径),但一般不需要 - 不要用
lvscan替代lvs做容量核对 —— 它不保证单位统一(有时显示 GiB,有时 GB)
用 lvdisplay 查看详细属性和底层映射
lvdisplay 输出最全:LV 名称、路径、状态、大小、当前线性/镜像/快照类型、分配策略、读写权限、快照相关字段(如 COW-table)、以及每个 LE 对应的 PE 起始位置。适合排查映射异常、确认快照一致性、或验证 lvconvert 后结果。
性能影响注意:在 PV 数量多、LV 数量大的系统上,lvdisplay 扫描较慢,且默认逐个 LV 输出 —— 不适合管道处理。
- 指定单个 LV 查看,避免全量扫描:
lvdisplay /dev/my_vg/my_lv - 加
-C以紧凑列格式输出(类似lvs),但字段比lvs少,不推荐日常用 - 关键字段
LV Status中的available表示可访问,read-only表示只读挂载或被lvchange -r y设置过
为什么不用 pvs 或 vgs 查逻辑卷
pvs 只管物理卷(PV),输出的是 PV 容量、空闲空间、所属 VG;vgs 只管卷组(VG),输出 VG 总大小、已用 PE 数、LV 数量统计 —— 它们都不包含 LV 名称、路径或激活状态等具体信息。
典型误用场景:看到 vgs 显示 #LV 2 就以为两个 LV 都正常可用,结果其中一个 lvscan 显示 inactive,导致应用启动失败。
-
vgs -o +lv_count,vg_extent_count可辅助判断 VG 是否还有剩余空间供新 LV 使用 - 要确认某个 LV 是否真正在用,必须结合
mount | grep /dev/<vg>/<lv>或findmnt /dev/<vg>/<lv> - 快照 LV 在
lvs中类型列为snap,在lvdisplay中会额外显示Origin字段,这是唯一可靠识别方式
lvs 看概览,lvscan 看开关,lvdisplay 看细节。三者不是替代关系,而是递进验证 —— 尤其在扩容后或故障恢复时,漏掉任一环节都可能让 LV 处于“存在但不可用”的灰色状态。


















