Linux LVM与磁盘配额详解

一、LVM概述

1.1Logical Volume Manager,逻辑卷管理

  • 能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性
  • /boot分区用于存放引导文件,不能基于LVM创建

1.2LVM机制的基本概念

  • PV(物理卷)

  • VG(卷组)

  • LV(逻辑卷)

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

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

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

二、LVM的管理命令

■主要命令

功能 物理卷管理 卷组管理 逻辑卷
Scan(扫描) pvscan vgscan lvscan
Create(建立) pvcreate vgcreate lvcreate
Display(显示) pvdisplay vgdisplay lvdisplay
Remove(移除) pvremove vgremove lvremove
Extend(扩展) —— vgextend lvextend
Reduce(减少) —— vgreduce lvreduce
命令格式:
pvcreate 设备名1 [设备名2 ... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
vgextend 卷组名 /dev/sdc2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +大小  /dev/卷组名/逻辑卷名

三、LVM操作主要命令步骤

在这里插入图片描述

1.关闭主机,添加两块新硬盘,重启主机

在这里插入图片描述
在这里插入图片描述

2.先使用 fdisk 工具将磁盘设备/dev/sdb、/dev/sdc划分出主分区sdb1、sdc1,并且把分区类型的 ID 标记号改为“8e”

fdisk /dev/sdb 
fdisk /dev/sdc

在这里插入图片描述
sdc同理
在这里插入图片描述

3.创建物理卷、创建卷组、创建逻辑卷

  • 创建物理卷
pvcreate /dev/sdb1 /dev/sdc1

在这里插入图片描述

  • 创建卷组,卷组名为adc001
vgcreate abc001 /dev/sdb1 /dev/sdc1

在这里插入图片描述

  • 创建逻辑卷,逻辑卷名为abc,容量为 30GB,生成的文件路径为/dev/abc001/abc
lvcreate -L 30G -n abc abc001

在这里插入图片描述
在这里插入图片描述

4.对逻辑卷进行格式化,创建XFS文件系统,并挂载到/data目录下

mkfs -t xfs /dev/abc001/abc----------对逻辑卷进行格式化,创建 XFS 文件系统
mount /dev/abc001/abc /data -----------挂载到/data目录下

df -hT

在这里插入图片描述

5.扩容操作

lvextend -L +5G /dev/abc001/abc        在xfs格式中,可在线扩容,无需解挂
xfs_growfs /dev/abc001/abc			刷新文件系统容量,需要在挂载的时候使用,不使用可以显示

在这里插入图片描述

四、磁盘配额概述

4.1 设置磁盘配额

  • 当Linux根分区的磁盘空间耗尽时,将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。
  • 为了避免在服务器中出现类似磁盘空间不足的问题,就需要启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。
  • 在CentOS系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文件系统通过xfs_quota工具进行管理; EXT3/4 文件系统通过 quota 工具进行管理。

4.2 实现磁盘限额的条件

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

4.3 Linux磁盘限额的特点

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

五、CentOS7中设置xfs磁盘配额步骤

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

rpm -q xfsprogs quota               
yum install -y xfsprogs quota       安装缺少的软件

在这里插入图片描述

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

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
umount /dev/vgname1/lvname1
mount -a				                         -a选项,将/etc/fstab的所有内容重新加载

在这里插入图片描述

在这里插入图片描述

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

useradd zhangsan         
passwd zhangsan         

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

xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan' /opt/     仅限制磁盘容量
xfs_quota -x -c 'limit -u isoft=4 ihard=5 zhangsan' /opt/          仅限制文件数
xfs_quota -c 'quota -uv zhangsan' /opt/                     查看 zhangsan 磁盘容量限制
xfs_quota -c 'quota -i -uv zhangsan' /opt/                  查看 zhangsan 文件数限制

在这里插入图片描述

4.验证磁盘配额功能

chmod 777 /opt         
su zhangsan
cd /opt

dd if=/dev/zero of=/opt/ddtest.txt bs=10M count=12        验证磁盘容量超限
touch {
    
    1,2,3,4,5}.txt                                     验证磁盘文件数超限

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

验证磁盘容量超限在这里插入图片描述
在这里插入图片描述
验证磁盘文件数超限
在这里插入图片描述

5.查看配额使用情况

xfs_quota -x -c 'report -a'         #查看所有可用分区的磁盘容量配额使用情况
xfs_quota -x -c 'report -abih'      #查看磁盘容量和文件数的报告

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/IHBOS/article/details/113357546