一、LVM简介

LVM是 Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性。
在安装 CentOS系统的过程中选择自动分区时,就会默认采用LVM分区方案,不需要再进行手动配置。如果有特殊需要,也可以使用安装向导提供的磁盘定制工具调整LVM分区。需要注意的是,“/boot”分区不能基于LVM创建,必须独立出来。

二、LVM机制

1、PV(物理卷)
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(Physical Extent,PE),从而构成物理卷。
浅析CentOS7的LVM逻辑卷与磁盘配额
2、VG(卷组)
由一个或多个物理券组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理券。
浅析CentOS7的LVM逻辑卷与磁盘配额
3、LV(逻辑卷)
逻辑卷建立在卷组之上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。
浅析CentOS7的LVM逻辑卷与磁盘配额

三、管理LVM

1、常用LVM管理命令
浅析CentOS7的LVM逻辑卷与磁盘配额
2、PV物理卷管理
(1)pvscan命令
pvscan用于扫描系统中的所有物理卷,并输出相关信息。
(2)pvcreat命令
浅析CentOS7的LVM逻辑卷与磁盘配额
pvcreat用于将分区或整个硬盘转换成物理卷,主要是添加LVM属性信息并划分PE存储设备。
如图先将我们三个磁盘的分区都转换成LVM类型(具体如何创建分区请参照磁盘与文件管理篇)。
浅析CentOS7的LVM逻辑卷与磁盘配额
然后在此基础上执行“pvcreate /dev/sd{b..d}1”命令来快速将硬盘装换成物理卷,并可以执行“pvscan”命令查看物理卷。
浅析CentOS7的LVM逻辑卷与磁盘配额
(3)pvdisplay命令
pvdisplay用于显示物理券的详细信息,需要使用指定的物理券卷作为命令参数,默认是将显示所有物理卷的信息。
(4)pvremove命令
pvremove将物理卷还原成普通分区或磁盘,不在用于LVM体系,被移除的物理卷将无法被pvscan识别。
3、VG卷组管理
(1)vgscan命令
vgscan命令用于扫描系统中已建立的LVM卷组及相关信息。
(2)vgcreat命令
浅析CentOS7的LVM逻辑卷与磁盘配额
vgcreat用于将一个或多个物理卷创建为一个卷组,第一个命令参数用于设置新卷组的名称,其后一次指定需要键入到该卷组的物理券主要参数。
如图我们执行“vgcreate mailbox /dev/sd{b..d}1”命令创建卷组,然而执行“vgscan”命令却无法查看到卷组信息。
浅析CentOS7的LVM逻辑卷与磁盘配额
(3)vgdisplay命令
vgdisplay用于显示系统中各卷组的详细信息,需要使用指定卷组作为命令参数。
我们执行“vgdisplay”命令在来查看卷组信息。
浅析CentOS7的LVM逻辑卷与磁盘配额
(4)vgremove命令
vgremove用于删除指定的卷组,指定卷组名称作为参数即可。
(5)vgextend命令
vgextend用于扩展卷组的磁盘空间。
4、LV逻辑卷管理
(1)lvscan命令
lvscan用于扫描系统中已建立的逻辑卷及相关信息。
(2)lvcreat命令
浅析CentOS7的LVM逻辑卷与磁盘配额
lvcreat用于从指定的卷组再分割空间,以创建创新的逻辑卷。
如图我们执行“ lvcreate -L 60G -n mbox01 mailbox”命令创建逻辑卷。
浅析CentOS7的LVM逻辑卷与磁盘配额
(3)lvdisplay命令
lvdisplay用于显示逻辑券的详细信息,需要指定逻辑券的设备文件作为参数,也可以使用卷组名作为参数,以显示改卷组中所有逻辑券的信息。
如图我们执行“lvdisplay”命令查看逻辑卷信息。
浅析CentOS7的LVM逻辑卷与磁盘配额
(4)lvextend命令
浅析CentOS7的LVM逻辑卷与磁盘配额
lvextend用于动态扩展逻辑卷的空间,当目前使用的逻辑卷空间不足时,可以使用所在卷组中分割额外的空间进行扩展。
(5)lvremove命令
lvremove用于删除指定的逻辑卷,直接使用逻辑券的设备文件作为参数即可。

四、格式化与挂载逻辑卷

浅析CentOS7的LVM逻辑卷与磁盘配额
1、如图我们执行“ mkfs -t xfs /dev/mailbox/mbox01”命令将逻辑卷格式化。
浅析CentOS7的LVM逻辑卷与磁盘配额
2、执行“mkdir /opt/mbox{1..2}”创建两个挂载点,然后执行“vim /etc/fstab”命令进入配置文件,按G键再按o键去尾行进行编写。(编写内容“/dev/mailbox/mbox01 /opt/mbox01 xfs defaults 0 0”空白处按Tab键即可)编写号后保存退出,在执行“mount -a”命令即可自动挂载了。
浅析CentOS7的LVM逻辑卷与磁盘配额

五、磁盘配额

1、实现磁盘限额的条件
需要Linux内核支持
安装xfsprogs与 quota软件包
2、Linux磁盘限额的特点
作用范围:针对指定的文件系统(分区)
限制对象:用户帐号、组帐号
限制类型:磁盘容量、文件数量
限制方法:软限制、硬限制

3、启用磁盘配额支持
添加usruota、grquota挂载参数
4、磁盘配额管理
浅析CentOS7的LVM逻辑卷与磁盘配额
(1)编辑用户和组账号的配额设置
浅析CentOS7的LVM逻辑卷与磁盘配额
常用选项如下。
-u:指定用户
-g:指定组
-x:启用专家模式
-c:使用命令执行
限制字段
bsoft:软限制(失效7天)
bhard:硬限制
isoft:软节点(失效7天)
Ihard:硬节点
(2)验证磁盘配额功能
切换到设置配额的分区(挂载目录)
创建指定数量的文件:使用 touch命令,或cp命令
创建指定容量的文件:使用dd命,或cp命令
(3)查看配额使用情况
浅析CentOS7的LVM逻辑卷与磁盘配额
常用选项如下。
-a:查看所有配额
-i:查看节点信息
-b:输出报告
-u:查看用户配额
-g:查看组配额
实践部分:
1、我们先执行“rpm -qa | grep xfprogs”命令查看内核中有无“xfprogs”功能;再检索“xfprogs”里有无“quota”;然后执行“setenforce0”关闭增强安全选项功能。
浅析CentOS7的LVM逻辑卷与磁盘配额
2、执行“vim /etc/fstab”命令再来编写配置文件。在“/dev/mailbox/mbox02 /opt/mbox02 xfs defaults 0 0”里添加“,usrquota,gpquota”挂载参数。
浅析CentOS7的LVM逻辑卷与磁盘配额
3、执行“umount +挂载点”命令解除挂载,然后重新再挂载该设备才能运行挂载参数!
4、执行“xfs_quota -x -c‘limit -u bsoft=10M bhard=30M isoft=4 ihard=6 zhangsan’/mailbox/”命令设定用户配额。
浅析CentOS7的LVM逻辑卷与磁盘配额
注意:配额设置中一旦有一个条件超出配额,另一个条件便无法在执行!!!
5、如图执行“xfs_quota -x -c‘report -abi’”命令以报告形式查看当前配额使用的情况。
浅析CentOS7的LVM逻辑卷与磁盘配额