飞道的博客

LVM与磁盘配额(超详细)

548人阅读  评论(0)

一、LVM概述

●能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性

●/boot分区用于存放引导文件,不能基于LVM创建

1、LVM机制的基本概念

LVM由三个部分组成
①PV(物理卷)
②VG(卷组)
③LV(逻辑卷)

●PV(物理卷)
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(PE)从而构成物理卷。

●VG(卷组)
由一个或多个物理卷组成的一个整体

●LV(逻辑卷)
从卷组中分割出的一块空间,形成逻辑卷。使用mkfs等工具可在逻辑卷上创建文件系统。

2、LVM的管理命令

功能 物理卷管理 卷组管理 逻辑卷
Scan(扫描) pvscan vgscan lvscan
Create(建立) pvcreate vgcreate lvcreate
Display(显示) pvdisplay vgdisplay lvdisplay
Remove(移除) pvremove vgremove lvremove
Extend(扩展) —— vgextend lvextend
Reduce(减少) —— vgreduce lvreduce

3、创建规则

pvcreate 设备名1 【设备名2……】

vgcreate 卷组名  物理卷名1  物理卷名2

lvcreate -L 容量大小 -n 逻辑卷名  卷组名

lvextend - L +大小 /dev/卷组名/逻辑卷名

二、创建

1、首先我们关闭虚拟机,然后编辑虚拟机设置
添加三块新硬盘,给到每块40G,添加好点击确定,并启动虚拟机


2、开机后使用xshell去连接,fdisk -l查看一下分区情况

3、我们将创建三块分区,每块直接使用全部的硬盘大小,这边我把sdb演示了一下,剩下的sdc和sdd就省略了,步骤一样

4、使用fdisk -l查看分区情况

5、接下来开始创建物理卷,并创建卷组,卷组包含sdb1、sdc1、sdd1。并使用vgdisplay查看卷组。

6、接下来创建逻辑卷,并使用lvdisplay查看逻辑卷

7、想要使用该逻辑卷就需要挂载,我们在根目录下创建一个子目录/abc01,用于挂载

8、挂载出现小问题,原因是没有转换文件系统类型(格式化),解决问题并进行挂载

9、查询一下挂载目录df -Th,可以看到我们的逻辑卷已挂载好了

三、扩展逻辑卷

1、要扩展逻辑卷,首先需要解挂载,然后给逻辑卷进行扩展,扩展完格式化,若有重要文件,先进行备份

2、再次进行挂载并使用df -Th查看一下分区类型和大小


逻辑卷扩展完成

●补充:在线扩展LVM逻辑卷,刷新xfs类型的文件系统xfs_growfs 命令刷新(无需格式化与解挂载)

2、在线扩容,不用格式化和解挂载,扩完后使用xfs_growfs命令刷新文件系统

xfs_growfs /dev/adc/adc01      #刷新xfs类型文件系统类型

四、磁盘配额

1、实现磁盘限额的条件

需要Linux内核支持
●安装xfsprogs与quota软件包

2、Linux磁盘限额的特点

●作用范围:针对指定的文件系统(分区)
●限制对象:用户账号、组账号
●限制类型:磁盘容量、文件数量
●限制方法:软限制、硬限制

①设置磁盘配额

当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。

为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。

在CentOS系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文件系统通过xfs_quota工具进行管理; EXT3/4 文件系统通过 quota 工具进行管理。

3、CentOS7中设置磁盘配额步骤

①检查是否已安装xfsprogs和xfs_quota软件包

②以支持配额功能的方式挂载文件系统

● umount /dev/vgname1/lvname1
mount -o usrquota,grpquota /dev/vgname1/lvname1	  添加挂载参数“usrquota,grpquota”用于增加对用户、组配额功能的支持

或者

● vim /etc/fstab 
/dev/vgname1/lvname1      /opt        xfs   	 defaults,usrquota,grpquota   0  0

mount -a				                         -a选项,将/etc/fstab的所有内容重新加载

vim /etc/fstab

添加挂载参数“usrquota,grpquota”用于增加对用户、组配额功能的支持

③编辑用户和组账号的配额设置

useradd zhangsan
passwd zhangsan
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 zhangsan' /opt/

④验证磁盘配额功能

chmod 777 /opt
su zhangsan
cd /opt

● 验证磁盘容量超限
dd if=/dev/zero of=/opt/ddtest.txt bs=10M count=12

● 验证磁盘文件数超限
dd if=/dev/zero of=/opt/ddtest.txt bs=1M count=60

⑤查看配额使用情况

●查看所有可用分区的磁盘容量配额使用情况
xfs_quota -x -c 'report -a'

●查看磁盘容量和文件数的报告
xfs_quota -x -c 'report -abih'

exit退回到root用户,进行查看磁盘容量和文件数 :xfs_quota -x -c 'report -abih’

-x:表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用。
-c:表示直接调用管理命令。
-u:指定用户账号对象
-g:指定组账号对象
bsoft:设置磁盘容量的软限制数值(默认单位为 KB)。
bhard:设置磁盘容量的硬限制数值(默认单位为 KB)。
isoft:设置磁盘文件数的软限制数值。
ihard:设置磁盘文件数的硬限制数值。

dd 命令是一个设备转换和连续复制命令
“if=” 指定输入设备(或文件)
“of=” 指定输出设备(或文件)
“bs=” 指定读取数据块的大小
“count=” 指定读取数据块的数量
/dev/zero “零”设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。


转载:https://blog.csdn.net/weixin_51432770/article/details/110070384
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场