lvm管理
1.lvm
lvm 逻辑卷,可以让设备自由伸缩的一个设备管理软件。如果文件系统需要更多的空间 ,可以将其卷组的可用空间分配给逻辑卷 ,并且可以调整文件系统的大小。如果磁盘开始出现错误 ,可以通过卷组将替换磁盘注册为物理卷 ,并且逻辑卷的范围可迁移到新磁盘。
pv 物理卷,LVM所使用的基础 “物理 ”存储
vg 物理卷组,存储池 ,由一个或多个物理卷组成
pe 物理拓展,lvm最小的存储单元
lvm逻辑卷,是最终我们使用的可以伸缩的设备
2.lvm的制作
监控命令
watch -n 1 'echo ===pvmessage==; pvs;echo ==vgmessage===; vgs;echo ===lvmmessage===; lvs;echo ===;df -h /weixindata'
首先划分lvm所用到的设备,这些设备的功能id必须是linux LVM
1)lvm建立
准备物理卷
pvcreate /dev/vdb1 ##把物理分区做成物理卷
pvs|pvdisplay ##查看物理卷
创建卷组
vgcreate vg0 /dev/vdb1 ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0
vgs|vgdisplay ##查看物理卷组
创建逻辑卷
lvcreate -L 200M -n lv0 vg0 ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n指定设备名字
lvs|lvdisplay ##对逻辑卷设备进行查看
3.lvm设备的扩大
###############针对xfs文件系统######################
xfs文件系统只能扩大不能缩减
1)lvm扩大
lvextend —L 500M /dev/vg0/lv0 ##扩大lvm设备到500M
xfs_growfs /dev/vg0/lv0 ##扩大xfs文件系统到设备大小
2)vg扩大
pvcreate /dev/vdb2 ##在pv中增加一块设备/dev/vdb2
vgextend vg0 /dev/vdb2 ##把新建立的/dev/vdb2添加到vg0中
############xfs-->ext##########
[root@localhost ~]# umount /weixindata/
[root@localhost ~]# mkfs.ext4 /dev/vg0/lv0
[root@localhost ~]# mount /dev/vg0/lv0 /weixindata/
##############针对ext文件系统####################
ext文件系统可以扩大也可以缩减
1)lvm扩大
lvextend —L 2G /dev/vg0/lv0 ##扩大lvm设备到2G
resize2fs /dev/vg0/lv0 ##设定文件系统大小和设备同步
2)vg扩大
pvcreate /dev/vdb3 ##在pv中增加一块设备/dev/vdb3
vgextend vg0 /dev/vdb3 ##把新建立的/dev/vdb2添加到vg0中
3)lvm缩减
umount /dev/vg0/lv0 ##卸载设备,因为文件系统缩减不支持在线操作
e2fsck -f /dev/vg0/lv0 ##检测文件系统,确定文件系统中已有数据大小防止过度缩减
resize2fs /dev/vg0/lv0 1G ##把文件系统缩减到1G
lvreduce -L 1G /dev/vg0/lv0 ##设备缩减到1G
4)vg缩减
##在vg缩减时只能缩减没有被占用的设备
pvmove 设备1设备2 ##把设备1上的所有数据移动到设备2上
vgreduce vg0 /dev/vdb1 ##把vg0中的/dev/vdb1删除
pvremove /dev/vdb1 ##把/dev/vdb1上的lvm管理信息删除
4.lvm快照
LVM 快照是临时保留所更改的逻辑卷的原始数据的逻辑卷。快照提供原始卷的静态视图 ,从而能够以一致状态备份其数据。快照卷大小只需足以存储在它存在期间更改的数据即可
lvcreate -L 20M -n lv0-backup -s /dev/vg0/lv0 ##给/dev/vg0/lv0建立快照,-L指定快照大小,-n指定快照名字 -s指定快照模板设备
mount /dev/vg0/lv0-backup /userdate
[root@localhost ~]# mount /dev/vg0/lv0 /weixindata/
当快照设备里的数据被更改,如果想还原,删除快照设备,在重新建立快照即可
[root@localhost ~]# lvremove /dev/vg0/lv0backup
[root@localhost ~]# lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0
[root@localhost ~]# mount /dev/vg0/lv0backup /weixindata/
5.lvm删除
lvremove---->vgremove----->pvremove