Lvm逻辑卷
Lvm它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现。
PV、VG、LV 逻辑关系
透过pv,vg,lv 的规划后,在利用mkfs就可以将你的lv格式化可以利用的文件系统了,而且这个文件系统的容量可以动态的扩充或减少,而且里面的数据不会被影响。
1.创建逻辑卷
Fdisk /dev/vdb //fdisk命令创建分区
Pvcreate /dev/vdb1 //pvcreate 创建物理卷
Pvcreate /dev/vdb1 /dev/vdb2 /dev/vdb3 //可以跟多个分区
Pvs //查看pv信息
Pvdisplay //详细查看pv信息
Vgcreate vgtest /dev/vdb1 //vgcreate 创建卷组
Vgcreate vgtest /dev/vdb1 /dev/vdb2 /dev/vdb3 //可以跟多个分区
vgcreate -s 8M vgtest /dev/vdb1 //创建vg时指定PE块的大小
vgchange –s 2M vgtest //改变vg的PE块大小
Vgs //查看vg信息
Vgdisplay //详细查看vg信息
Lvcreate –n lvtest -L 400M vgtest //lvcreat 创建逻辑卷, -n 参数是lv的名字, -L 参数是逻辑卷的大小, vgtest 是来自哪个卷组
Lvcreate –n lvtest1 –l 50 vgtest //通过指定多少个PE块指定lv大小,一个PE块默认大小4M
Lvcreate -n lvtest2 -l %50FREE vgtest //通过指定剩余空间的大小来指定大小
Lvs //查看lv信息
Lvdisplay //详细查看lv信息
Mkfs.ext4 /dev/vgtest/lvtest //创建文件系统
Mount /dev/vgtest/lvtest /test //挂载
Vim /etc/fstab //设置开机挂载
Blkid /dev/vgtest/lvtest //查看lv使用的什么系统
/dev/vgtest/lvtest 与 /dev/mapper/vgtest-lvtest 相同
Lv扩展
如果vg空间满足扩展需求,则直接扩展lv
Lvextend –L 500M /dev/vgtest/lvtest //-L 500M 扩展至多少,lv加绝对路径
Lvextend -L +300M /dev/vgtest/lvtest //-L +300M 扩展多少
Resize2fs /dev/vgtest/lvtest //进行文件系统的扩展,这里是ext系统
Xfs_growfs /test //xfs文件系统的扩展,后面跟的是挂载点
如果vg空间不够,先扩展vg
Vgextend vgtest /dev/vdb4 //vgextend 扩展, vgtest 是vg名,后面是pv绝对路径
Lv缩小
Umount /test //卸载
E2fsck -f /dev/vgtest/lvtest //检测
Resize2fs /dev/vgtest/lvtest 800M //缩小文件系统到多少 resize2fs 绝对路径 大小
Lvreduce -L 800M /dev/vgtest/lvtest //lv缩小到多少 lvreduce 大小 绝对路径
Lvreduce -L -800M /dev/vgtest/lvtest //缩小多少
Vgreduce vgtest /dev/vdb4 //缩小vg,通过抽走pv实现 vgredude vg名 pv绝对路径
删除
Umount /test //卸载
Lvremove /dev/vgtest/lvtest //删除lv lvcreate lv绝对路径
Vgremove vgtest //删除vg vgremove vg名
Pvremove /dev/vdb1 //删除pv pvremove pv分区名
Fdisk //删除分区
Pv的移动:把一个pv的数据移动到另一个pv,移动的pv要属于同一个卷组,可以不同硬盘、不同分区的移动,尽量保持pv大小一致
Pvremove /dev/vdb1 /dev/vdb5 //pvremove 要移动的数据 数据移动的目标