Linux的LVM逻辑卷管理
什么是LVM:LVM全称叫Logical Volume Manager即是逻辑卷管理器。可以让你的多
块磁盘在软件的层次上看成一块大的磁盘并且可以放大缩小,添加,
移除磁盘。而它的最大优点就是你的这一切操作都可以在业务不下线的
情况下进行。
怎么创建LVM:
1,新增分区/dev/sdb1 /dev/sdb2 /dev/sdb3
并改其ID为8e即是Linux LVM
fdisk /dev/sdb
2,创建pv
pvcreate /dev/sdb{1,2}
3,创建vg
vgcreate -s 16M myvg1 /dev/sdb{1,2}
-s是用来指定PE的大小,myvg1是要创建的卷组名
后面就是这个卷组有哪些设备
4,创建lv
lvcreate -L 2G -n mylv1 myvg1
-L是用来指定lv的大小这里指定了2G -n是指定要创建的lv名
后面的就是卷组名
5,现在就可以格式化挂载使用了
mke2fs -t ext4 /dev/myvg1/mylv1
格式化
mkdir /mnt/myvg1
mount /dev/myvg1/mylv1 /mnt/myvg1
挂载使用
6,扩容
6.1 pvcreate /dev/sdb3
把sdb3变成pv
6.2 vgextend myvg1 /dev/sdb3
把sdb3上新建的pv加入到myvg1这个卷组
6.3 lvresize -L +2G /dev/myvg1/mylv1
把卷组上的lv增加2G,这里只是增加了lv并没增加文件系统,即可用
空间大小仍然是原来的2G。-L是指定大小的+表示增加-就是减少,单
位自己指定,不写+或-表示增加到多大
6.4 resize2fs /dev/myvg1/mylv1
扩容文件系统把你真正可用空间放大到lv的大小
7,缩小,缩小不能在线进行,要先卸载,并强制检查,一般也不用。
7.1 umount /mnt/myvg1
卸载卷组
7.1 e2fsck -f /dev/myvg1/mylv1
强制检查
7.3 resize2fs /dev/myvg1/mylv1 1G
缩小物理边界,然后就可以挂载使用了
mount /dev/myvg1/mylv1 /mnt/myvg1/
现在可用空间只有1G了,但是用lvs命令查看的时候lv还是4G
7.4 lvresize -L -1G /dev/myvg1/mylv1
把lv缩小1G
7.5 如果要减小vg,就是移除磁盘或者分区,所有要考虑数据的存放
所以要用pvdisplay查看详细的PE使用情况,比如我的/dev/sdb3
上有很多PE已经使用而/dev/sdb2上的PE还有很多空的,因此可以
把/dev/sdb3上的PE移到/dev/sd2上去,当然得放得下。
pvmove /dev/sdb3 /dev/sdb2
把sdb2上的PE移到sdb3上
7.6 减小vg
vgreduce myvg1 /dev/sdb3
从myvg1卷组里把/dev/sdb3移除了
7.7 移除pv
pvremove /dev/sdb3
把/dev/sdb3移除pv
8,创建快照
lvcreate -s -L 60M -n myvgsnap /dev/myvg1/mylv1
创建快照和创建lv一样只是加了个-s,-n是指定myvgsnp为快照名
后面接的是要对哪个卷组建快照
mkdir /mnt/snap
mount /dev/myvg1/myvgsnap /mnt/snap/
挂载使用快照
9,删除LVM
umount /mnt/snap/
umount /mnt/myvg1/
卸载快照和设备
lvremove /dev/myvg1/myvgsnap
lvremove /dev/myvg1/mylv1
移除快照和lv
vgremove myvg1
pvremove /dev/sdb{1,2,3}
移除vg和pv
能力有限,希望大家多多指点,帮忙排错。。