文章目录
LVM(逻辑卷管理)使用指南
一、LVM核心概念
1. 组件体系
物理存储架构 → 物理卷(PV) → 卷组(VG) → 逻辑卷(LV)
2. 核心术语
组件 | 描述 | 示例设备路径 |
---|---|---|
PV | 物理磁盘/分区 | /dev/sda1 |
VG | 存储资源池 | vg_data |
LV | 可格式化的逻辑设备 | /dev/vg_data/lv_mysql |
PE | 物理扩展块(默认4MB) | - |
二、基础操作命令
1. 创建流程
# 创建物理卷
pvcreate /dev/sd{b,c}1
# 创建卷组(指定PE大小)
vgcreate -s 16M vg_data /dev/sdb1
# 创建逻辑卷(三种方式)
lvcreate -L 20G -n lv_www vg_data # 指定具体大小
lvcreate -l 50%FREE -n lv_db vg_data # 使用剩余空间的50%
lvcreate -l 100%VG -n lv_full vg_data # 使用全部空间
2. 空间调整
# 扩展逻辑卷(在线操作)
lvextend -L +5G /dev/vg_data/lv_www
resize2fs /dev/vg_data/lv_www # ext4文件系统
xfs_growfs /dev/vg_data/lv_www # xfs文件系统
# 缩减逻辑卷(需卸载)
umount /data
e2fsck -f /dev/vg_data/lv_www
resize2fs /dev/vg_data/lv_www 15G
lvreduce -L 15G /dev/vg_data/lv_www
mount -a
三、高级功能实现
1. 快照管理
# 创建快照
lvcreate -s -n lv_www_snap -L 2G /dev/vg_data/lv_www
# 恢复快照(需卸载原卷)
umount /www lvconvert --merge /dev/vg_data/lv_www_snap
2. 迁移存储
# 将数据迁移到新磁盘
pvmove /dev/sdb1 /dev/sdd1
# 移除旧磁盘
vgreduce vg_data /dev/sdb1
pvremove /dev/sdb1
四、监控与维护
1. 状态查看命令
pvs # 物理卷状态
vgs # 卷组状态
lvs -a -o +devices # 显示所有LV及设备映射
2. 配置文件位置
/etc/lvm/lvm.conf # 全局配置文件
/etc/lvm/archive/ # 操作历史备份
/etc/lvm/backup/ # 当前元数据备份
五、最佳实践建议
-
PE大小选择:
- 数据库应用建议使用16MB或更大PE
- 常规用途使用默认4MB即可
-
快照注意事项:
- 快照空间耗尽会导致自动失效
- XFS文件系统需冻结操作:
xfs_freeze -f /data
-
性能优化:
# 启用条带化(提升IO性能) lvcreate -i 3 -I 4 -L 100G -n lv_fast vg_data # -i 条带数量 # -I 条带大小(KB)
六、风险操作警示
⚠️ 危险操作清单:
直接编辑/etc/lvm/*元数据文件
未备份情况下缩减ext3/ext4文件系统
强制移除活动中的PV(应使用vgreduce --removemissing)
数据操作前建议执行:vgcfgbackup -f vg_backup.txt vg_data