LVM 可直接实现跨硬盘逻辑卷管理,无需额外工具:先用 pvcreate 初始化物理卷,再用 vgcreate 构建跨硬盘卷组,最后用 lvcreate 创建逻辑卷并挂载;支持在线扩容、缩容与数据迁移。

直接用 LVM 就能实现跨硬盘的分区逻辑卷映射管理,不需要额外“工具堆叠”。核心在于把多块物理硬盘(或其分区)统一纳入一个逻辑池,再按需切分使用,整个过程对上层文件系统透明。
明确物理起点:先让硬盘/分区支持 LVM
不是所有块设备都能直接参与 LVM。必须先初始化为物理卷(PV),LVM 才能识别和调度它们:
- 整盘使用(如新硬盘 /dev/sdb、/dev/sdc):
pvcreate /dev/sdb /dev/sdc - 分区方式(更常见,避免覆盖已有数据):
pvcreate /dev/sdb1 /dev/sdc1 - 确认结果:
pvs显示所有已初始化的 PV,状态为 lvm2 格式且 PSize 可见
构建统一存储池:创建卷组(VG)
卷组是跨硬盘能力的关键——它把多个 PV 合并成一个逻辑容器,空间可自由调配:
- 创建 VG:
vgcreate myvg /dev/sdb1 /dev/sdc1(名字自定,设备列表可扩展) - 查看容量:
vgs或vgdisplay myvg,PSize 是所有 PV 总和,PFree 是当前可用空间 - 后续加硬盘?只需
vgextend myvg /dev/sdd1,无需停机或迁移数据
按需划分与映射:创建并挂载逻辑卷(LV)
LV 是最终交付给文件系统的“虚拟分区”,大小可任意指定(不超过 VG 总量),位置完全脱离物理布局:
- 创建 LV:
lvcreate -L 50G -n data_lv myvg(分配 50GB,命名为 data_lv) - 格式化:
mkfs.xfs /dev/myvg/data_lv(推荐 XFS;ext4 也可) - 挂载使用:
mount /dev/myvg/data_lv /data,之后所有读写都经由 LVM 层自动分散到后端硬盘 - 开机自动挂载?在
/etc/fstab中添加对应条目,设备路径用/dev/myvg/data_lv
真正体现“跨硬盘”的日常操作
LVM 的价值不在初始配置,而在后续弹性管理:
- 扩容:当
/data空间不足,且 VG 还有空闲,执行lvextend -L +10G /dev/myvg/data_lv && xfs_growfs /data(XFS)或resize2fs /dev/myvg/data_lv(ext4) - 缩容(谨慎):需先卸载、检查文件系统、缩小 FS,再缩小 LV,最后重挂载
- 迁移数据:新加一块硬盘
/dev/sdd1,运行pvmove /dev/sdb1,LVM 自动将该 PV 上所有数据块迁移到其他 PV,完成后可vgreduce myvg /dev/sdb1 && pvremove /dev/sdb1安全移除旧盘











