一、LVM逻辑卷
1.1 LVM概述
LVM(Logical Volume Manager,逻辑卷管理)重点在于可以弹性地调整文件系统的容量,需要文件的读写性能或是数据的可靠性,LVM可以整合多个物理分区,让这些分区看起来像是一块磁盘一样,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性。
注意:/boot分区用于存放引导文件,不能基于LVM创建
1.2 LVM机制的基本概念
在学习LVM的管理操作之前,先了解一下LVM的几个基本术语
1.2.1 PE(Physical Extent,物理扩展块)
LVM默认使用4MB的PE数据块,它是整个LVM中最小的存储数据单位,也就是说我们的文件数据都是借由写入PE来完成的。
1.2.2 PV ( Physical Volume, 物理卷)
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(PE),从而构成物理卷。物理卷一般直接使用设备文件名称,例如:/deb/sdb1、/deb/sdc1、/dev/sdd 等。
物理卷由许多个基本存储单元组成,如下图:
1.2.3 VG (Volume Group, 卷组)
由一个或多个物理卷组成一个整体,即称为卷组,许多个物理卷可以分别组成不同的卷组,卷组的名称可以由我们自行定义,在卷组中可以随时根据需求动态地添加或移除物理卷。
卷组的组成参考下图:
1.2.4 LV (Logical Volume,逻辑卷)
逻辑卷基于PE建立在卷组之上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从卷组中分割出的一块空间,形成逻辑卷。使用mkfs 等工具可在逻辑卷上创建文件系统,就可以挂载到Linux系统中的目录下使用。
1.3 LVM的管理命令
功能 | PV管理命令 | VG管理命令 | LV管理命令 |
---|---|---|---|
Scan(扫描) | pvscan | vgscan | lvscan |
Create(建立) | pvcreate | vgcreate | lvcreate |
Display(显示) | pvdispla | vgdisplay | redisplay |
Remove(移除) | pvremove | vgremove | lvremove |
Extend(扩展) | —— | vgextend | lvextend |
Reduce(减少) | —— | vgreduce | lvreduce |
1.4 LVM操作的具体步骤
1.4.1 具体步骤分析
- 关闭主机,根据需求添加新硬盘,重启主机;
- 对新硬盘划分主分区,分区号改为8e;
- 创建物理卷、卷组和逻辑卷(选择容量);
- 对逻辑卷进行格式化并挂载;
- 有需要进行扩容。
1.4.2 实验具体步骤(加扩容)
第一步:添加新硬盘,并开机。
具体步骤可以参考本文第三段:磁盘管理的检测并确认新硬盘
第二步:对新硬盘sdc划分主分区
分区号改为8e并保存;(保存后不要格式化)
第三步:对新硬盘sdd划分
这里我划分两个10G主分区,分区号分别改为8e并保存;(保存后不要格式化)
第四步:对新分区进行创建物理卷
第五步:基于物理卷创建卷组
第六步:从卷组内创建逻辑卷
第七步:对逻辑卷进行格式化并挂载
第八步:对卷组和逻辑卷进行扩容
二、磁盘配额
当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。
在Centos系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文件系统通过xfs_ quota工具进行管理;
2.1 实现磁盘限额的条件
- 需要Linux内核支持
- 安装xfsprogs与quota软件包
2.2 Linux磁盘限额的特点
- 作用范围:针对指定的文件系统(分区)
- 限制对象:用户帐号、组帐号
- 限制类型:磁盘容量、文件数量
- 限制方法:软限制、硬限制
2.3 磁盘配额的具体步骤
第一步:先检查xfsprogs和quota是否安装
未安装按照以下步骤进行安装即可
第二步:以支持配额功能的方式挂载文件系统
(此处使用前面创建的lvname逻辑卷举例),下面两种方法(临时挂载和永久挂载)根据自己需求选择一种即可。
临时挂载:
永久挂载:
第三步、编辑用户和组账号的配额设置
了解常用命令选项:
选项 | 作用 |
---|---|
-x | 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用。 |
-c | 表示直接调用管理命令。 |
-u | 指定用户账号对象, |
-g | 指定组账号对象 |
bsoft | 设置磁盘容量的软限制数值(默认单位为KB)。 |
bhard | 设置磁盘容量的硬限制数值(默认单位为KB)。 |
isoft | 设置磁盘文件数的软限制数值。 |
ihard | 设置磁盘文件数的硬限制数值。 |
添加普通用户,并设置密码
添加容量和文件数限制并查看
第四步、验证磁盘配额功能是否正常
dd命令是一个设备转换和连续复制命令
- “if=”指定输入设备(或文件)
- "of=” 指定输出设备(或文件)
- "bs=”指定读取数据块的大小
- "count=”指定读取数据块的数量
- /dev/zero“零”设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。
测试容量限制:
测试文件数量限制:
第五步、查看配额情况
查看所有可用分区的磁盘容量配额使用情况
[root@cheng0307 /]# xfs_quota -x -c 'report -a'
查看磁盘容量和文件数的报告
[root@cheng0307 /]# xfs_quota -x -c 'report -abih'