LINUX-lvm逻辑卷
1.lvm的存在意义
用软件实现设备可拉神或缩减,而设备中存在的数据不变
2.lvm术语
pv 物理卷,由分区生成
pe 物理单元,由物理卷重组生成
vg 物理卷组,由大量物理单元组成
lvm 逻辑卷,由物理卷组中分割出的定量物理单元组成
3.lvm检测信息
pvs|pvdisplay
vgs|vgdisplay
lvs|lvdisplay
watch -n 1 \
'echo "=== pvinfo ==="\
;pvs\
;echo "=== vginfo ==="\
;vgs\
;echo === lvinfo ===\
;lvs'
4.lvm建立
1)分区并改变分区标签为lvm(gpt 15|mbr 8e)
2)pvcreate /dev/vdb1 创建物理卷
3)vgcreate vg0 /dev/vdb1 创建物理卷组
4)lvcreate -L 100M -n lv0 vg0 创建逻辑卷
6)mount /dev/vg0/lv0 /mnt 挂载设备投入使用
/dev/mapper/vg0/lv0 是个链接文件,指向是一样的
5.lvm拉伸
1)当vg中的容量够用时
lvextend -L 200M /dev/vg0/lv0 拉伸设备,扩大lv0
xfs_growfs /dev/vg0/lv0 扩大文件系统
2)当vg中的容量不够用时
分区并改变分区中的标签为lvm(gpt 15 |mbr 8e)
pvcreate /dev/vdb2 创建物理卷pv
vgextend vg0 /dev/vdb2 扩大物理卷组vg
lvextend -L 1500M /dev/vg0/lv0 拉伸设备,扩大逻辑卷lv0
xfs_growfs /dev/vg0/lv0 扩大文件系统
**xfs文件系统不能缩减
**在ext文件系统中:
umount /mnt 卸载
mkfs.ext4 /dev/vg0/lv0 将/dev/vg0/lv0格式化为ext4
拉伸
lvextend -L 400M /dev/vg0/lv0 拉伸设备
resize2fs /dev/vg0/lv0 扩大文件系统
缩减
umount /mnt
e2fsck -f /dev/vg0/lv0 检测设备,扫描文件
resize2fs /dev/vg0/lv0 200M 缩减文件系统
mount /dev/vg0/lv0 /mnt
lvreduce -L 200M /dev/vg0/lv0 缩减设备
6.缩减卷组
pvmove /dev/vdb1 /dev/vdb2 当要移除的分区vdb1存在数据,那么需要把数据迁移到vdb2
vgreduce vg0 /dev/vdb1 把vg中的/dev/vdb1移除
pvremove /dev/vdb1 把pv中的/dev/vdb1移除
7.lvm的快照
lvcreate -L 100M -n lv0-backup -s /dev/vg0/lv0 创建快照
mount /dev/vg0/lv0-backup /mnt 挂载快照,不需要格式化
**修改不影响原始文件
rm -fr /mnt/*
umount /mnt
lvremove /dev/vg0/lv0-backup 移除快照
8.lvm的删除
lvremove /dev/vg0/lv0 删除逻辑卷lv
vgremove vg0 删除物理卷组vg
pvremove /dev/vdb2 删除物理卷pv
如果卸载不掉应该查看是否被挂载
用软件实现设备可拉神或缩减,而设备中存在的数据不变
2.lvm术语
pv 物理卷,由分区生成
pe 物理单元,由物理卷重组生成
vg 物理卷组,由大量物理单元组成
lvm 逻辑卷,由物理卷组中分割出的定量物理单元组成
3.lvm检测信息
pvs|pvdisplay
vgs|vgdisplay
lvs|lvdisplay
watch -n 1 \
'echo "=== pvinfo ==="\
;pvs\
;echo "=== vginfo ==="\
;vgs\
;echo === lvinfo ===\
;lvs'
4.lvm建立
1)分区并改变分区标签为lvm(gpt 15|mbr 8e)
2)pvcreate /dev/vdb1 创建物理卷
3)vgcreate vg0 /dev/vdb1 创建物理卷组
4)lvcreate -L 100M -n lv0 vg0 创建逻辑卷
注意容量大小的要求
6)mount /dev/vg0/lv0 /mnt 挂载设备投入使用
/dev/mapper/vg0/lv0 是个链接文件,指向是一样的
5.lvm拉伸
1)当vg中的容量够用时
lvextend -L 200M /dev/vg0/lv0 拉伸设备,扩大lv0
xfs_growfs /dev/vg0/lv0 扩大文件系统
2)当vg中的容量不够用时
分区并改变分区中的标签为lvm(gpt 15 |mbr 8e)
pvcreate /dev/vdb2 创建物理卷pv
vgextend vg0 /dev/vdb2 扩大物理卷组vg
lvextend -L 1500M /dev/vg0/lv0 拉伸设备,扩大逻辑卷lv0
xfs_growfs /dev/vg0/lv0 扩大文件系统
**xfs文件系统不能缩减
**在ext文件系统中:
umount /mnt 卸载
mkfs.ext4 /dev/vg0/lv0 将/dev/vg0/lv0格式化为ext4
拉伸
lvextend -L 400M /dev/vg0/lv0 拉伸设备
resize2fs /dev/vg0/lv0 扩大文件系统
缩减
umount /mnt
e2fsck -f /dev/vg0/lv0 检测设备,扫描文件
resize2fs /dev/vg0/lv0 200M 缩减文件系统
mount /dev/vg0/lv0 /mnt
lvreduce -L 200M /dev/vg0/lv0 缩减设备
6.缩减卷组
pvmove /dev/vdb1 /dev/vdb2 当要移除的分区vdb1存在数据,那么需要把数据迁移到vdb2
vgreduce vg0 /dev/vdb1 把vg中的/dev/vdb1移除
pvremove /dev/vdb1 把pv中的/dev/vdb1移除
7.lvm的快照
lvcreate -L 100M -n lv0-backup -s /dev/vg0/lv0 创建快照
mount /dev/vg0/lv0-backup /mnt 挂载快照,不需要格式化
**修改不影响原始文件
rm -fr /mnt/*
umount /mnt
lvremove /dev/vg0/lv0-backup 移除快照
8.lvm的删除
lvremove /dev/vg0/lv0 删除逻辑卷lv
vgremove vg0 删除物理卷组vg
pvremove /dev/vdb2 删除物理卷pv
如果卸载不掉应该查看是否被挂载