说明:LVM的优点就是可以随意扩大和缩小分区大小。LVM是一种磁盘管理方式,叫逻辑卷管理器。LVM是一种把硬盘驱动器空间分配成逻辑卷的方法,这样硬盘就不必使用分区而被简易地重划大小。主要就是这个功能,可以随意扩展或者缩小某个分区的大小,前提这个分区是逻辑卷管理的。LVM类似于WIN下的动态磁盘。分一个物理分区,建立一个物理卷,然后这个物理卷建立一个卷组,我们就可以在这个卷组里面去分数个逻辑卷,而且逻辑卷可以随意扩大缩小,不会对物理分区有影响,逻辑卷的功能也和物理分区差不多,一样可以格式化成随意的文件系统,挂载到随意的目录。
创建逻辑卷:
第一步:划分物理分区
前提:我的环境中已经存在一块磁盘,给的大小是300G。
#fdisk /dev/sdb
输入n
输入p
回车
回车
接着给定100G大小的一个空间,输入+100G;
注意,这里比刚才多一步,由于LVM的ID和ext3的ID不一样,所以需要将LVM的ID设置为8e。设置ID可以用大写的T查看。
输入T
输入 8e
输入w
#partprobe (fdisk -l 查看已经生效,可不执行此步)使用这个命令让它立即生效。 至此第一步创建物理分区完成。
第二步:创建LVM的物理卷
#pvcreate /dev/sdb1
#pvdisplay 使用这条命令查看创建的物理卷
第三步:创建LVM的卷组
#vgcreate ecloud /dev/sdb1
#vgdisplay 使用这条命令查看创建的卷组 可以看见vg的size为100GB。
第四步:创建逻辑卷
#lvcreate -L 10G ecloud -n ecloud-1 创建了一个逻辑卷,并且命名为ecloud-1
#lvdisplay 使用这条命令查看创建的逻辑卷 可以看见lv的size为10GB。
第五步:格式化挂载逻辑卷
#mkfs.ext3 /dev/ecloud/ecloud-1 格式化成ext3的格式
#mkdir /mnt/haha 创建一个目录
#mount -t ext3 /dev/ecloud/ecloud-1 /mnt/haha 将逻辑卷挂载到/mnt/haha中
增加逻辑卷:
接下来,再在之前的卷组中划分出来一个逻辑卷,大小为20G。
#lvcreate -L 20G ecloud -n ecloud-2
#mkfs.ext3 /dev/ecloud/ecloud-2
#mkdir /mnt/hahaha
#mount -t ext3 /dev/ecloud/ecloud-2 /mnt/hahaha
缩小逻辑卷:
说明:先缩小/dev/ecloud/ecloud-2文件系统,再缩小lvm。缩小或者扩展不会对物理分区有影响。
注意:缩小空间可能会导致数据损坏,所以尽量少做缩小空间,有一定风险。
#umount /mnt/hahaha 卸载
#e2fsck -f /dev/ecloud/ecloud-2 强制检查
#resize2fs /dev/ecloud/ecloud-2 15G 缩小文件系统,注意这里的15G是最终的大小,不是减少的大小、
#lvresize -L 15G /dev/ecloud/ecloud-2 调整逻辑卷的大小,这里的大小同上。
WARNING: Reducing active logical volume to 15.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce ecloud-2? [y/n]: y
Size of logical volume ecloud/ecloud-2 changed from 20.00 GiB (5120 extents) to 15.00 GiB (3840 extents).
Logical volume ecloud-2 successfully resized
#mount /dev/ecloud/ecloud-2 /mnt/hahaha 重新挂载到/mnt/hahaha上。
扩大卷组的大小:
说明:我们使用的空间都是在卷组里面调用的,如果卷组的空间用完了,就需要增加卷组的大小,给ecloud卷组加10GB。
第一步:分区
#fdisk /dev/sdb 给出分区的数字为2,创建出来则是/dev/sdb2
#partprobe 重新识别物理分区
第二步:创建物理卷
#pvcreate /dev/sdb2 创建一个 /dev/sdb2 的物理卷
第三步: 拉伸卷组,把刚建立的物理卷的空间加到以前的卷组中
#vgextend ecloud /dev/sdb2
#vgdisplay 现在的卷组应该是110GB。
删除逻辑卷中的某个PV:
注意:使用vgreduce删只能删除卷组中未被使用的PV
# vgreduce ecloud /dev/sdb2
#vgdisplay
删除整个逻辑卷:
第一步:取消挂载
#umount /mnt/haha
#umount /mnt/hahaha
第二步:删除lvm逻辑卷
#lvremove /dev/ecloud/ecloud-1
#lvremove /dev/ecloud/ecloud-2
第三步:删除卷组
#vgremove ecloud
第四步:删除物理卷
#pvremove /dev/sdb1
#pvremove /dev/sdb2
第五步:删除物理分区
#fdisk /dev/sdb
将 /dev/sdb1和/dev/sdb2都删除 这样逻辑卷就删除成功了。
总结:
创建逻辑卷的顺序:创建Linux分区(或者磁盘)---物理卷---卷组---逻辑卷---格式化---挂载分区
删除逻辑卷的顺序:卸载分区---删除逻辑卷---删除卷组----删除物理卷---删除分区