前语:以下部分内容参考了其他博客。我下面写的内容网上一大堆,只不过那些都是别人的,要自己亲手总结,自己亲手敲一敲才会学到知识。所以,各位看官别嫌弃部分内容又和某一篇博客内容一样。一样的都是基础,一样的都是原理。
一、简介
LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。
LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。比如说我增加一个物理硬盘,这个时候上层的服务是感觉不到的,因为呈现给上层服务的是以逻辑卷的方式。
LVM最大的特点就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。如果我们新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。
基本的逻辑卷管理概念:
PV(Physical Volume)- 物理卷
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。
VG(Volumne Group)- 卷组
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
LV(Logical Volume)- 逻辑卷
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。
关系图如下:
PE(Physical Extent)- 物理块
LVM 默认使用4MB的PE区块,而LVM的LV最多仅能含有65534个PE (lvm1 的格式),因此默认的LVM的LV最大容量为4M*65534/(1024M/G)=256G。PE是整个LVM 最小的储存区块,也就是说,其实我们的资料都是由写入PE 来处理的。简单的说,这个PE 就有点像文件系统里面的block 大小。所以调整PE会影响到LVM的最大容量!不过,在 CentOS 6.x 以后,由于直接使用 lvm2 的各项格式功能,因此这个限制已经不存在了。
简介内容来自博客:https://www.cnblogs.com/mchina/p/linux-centos-logical-volume-manager-lvm.html
二、安装LVM管理工具
2.1 检查系统是否安装了LVM管理工具
#rpm -qa|grep lvm
2.2 如果未安装,使用yum方式安装
#yun install lvm*
#rpm -qa|grep lvm
三、创建LVM系统分区的主要操作步骤
3.1、给新的系统做分区
一、给系统做分区操作
1、查看当前系统的磁盘情况:lsblk 或 fdisk -l
2、创建新的分区(最多可分配3个主分区1个扩展分区,或4个主分区):fdisk
3、创建物理卷PV:pvcreate
4、创建卷组VG:vgcreate
5、创建逻辑卷LV:lvcreate
6、将新建分区设置为系统所需格式(可选择ext3、etx4等格式):mkfs.ext4 或 mkfs.ext3
7、挂载LV到指定挂载点(系统没有该挂载点时需要提前手动创建):mount
8、将分区信息写入/etc/fstab(设置开机自动挂载磁盘):手动写入fstab文件(#sudo blkid;#vim /etc/fstab)
结束
3.2 LVM扩容
二、LVM扩容操作
1、如果当前卷组没有free空间,可添加一块新的物理磁盘
1.1、创建分区:fdisk
1.2、创建PV:pvcreate
1.3、将刚刚创建的PV添加到要扩容的VG中:vgextend
1.4、使用VG的free空间对LV扩容:lvextend
1.5、对文件系统进行扩容:resize2fs
2、如果当前VG还有free空间,可直接使用VG的free空间对LV扩容
2.1、查看VG的free空间:vgs
2.2、使用VG的free空间对LV扩容:lvextend
2.3、对文件系统进行扩容:resize2fs
结束
3.3 LVM缩减
三、LVM缩减操作(需要离线操作)
3.1、umount文件系统:umount
3.2、缩减文件系统:resize2fs
3.3、磁盘检查:e2fsck
3.4、缩减LV:lvreduce
3.5、挂载:mount
3.6、查看:df -h
结束
3.4、VG缩减
四、VG缩减
1、umount文件系统:umount
2、查看当前PV情况:pvs
3、将物理卷从逻辑卷中删除:vgreduce
4、查看pv情况:pvs
结束
3.5、删除LVM
四、删除LVM:把创建的步骤反过来操作
1、umount文件系统:umount
2、移除LV:lvremove
3、在/etc/fstab文件中删除对应逻辑卷
4、移除VG:vgremove
5、移除PV:pvremove
结束
四、实际操作
4.1 磁盘分区
首先,可以通过命令 lsblk 查看磁盘分区状态,卷组与逻辑卷信息: