LVM与磁盘配额

一、逻辑卷LVM

1. LVM  概述

LVM:Logical Volume Manage 逻辑卷管理

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

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

2. LVM机制概念

PV (Physical Volume,物理卷)
物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(PE) ,从而构成物理卷。
 
VG (Volume Group,卷组)
由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷。
 
LV (Logical volume,逻辑卷)
从卷组中分割出的一块空间,形成逻辑卷。使用mkfs等工具可在逻辑卷上创建文件系统。

3. LVM 的管理命令

pvcreate  设备名1 [设备名2 .....]               #创建物理卷

vgcreate  卷组名  物理卷名1  物理卷名2 ....            #创建卷组

vgextend  卷组名  物理卷名1 ....                             #卷组扩容

lvcreate   -L  容量大小  -n 逻辑卷名   卷组              #从卷组中创建逻辑卷  # -l 小写l 表示pe个数

lvextend    -L  +容量大小     逻辑卷                         #将逻辑卷扩容

mkfs       -t  文件系统   逻辑卷                                 #格式化逻辑卷

xfs_growfs       逻辑卷                                            #扩展xfs格式文件系统

resize2fs         逻辑卷                                              #扩展ext4 格式文件系统

功能
物理卷管理
卷组管理
逻辑卷管理
Scan 扫描
pvscan
vgscan
lvscan
Creat 建立
pvcreate
vgcreate
lvcreate
Display 显示
pvdisplay
vgdisplay
lvdisplay
Remove 删除
pvremove
vgremove
lvremove
Extend
————
vgextend
lvextend
Reduce
————
vgextend
lvextend

4.LVM实操

1、关闭虚拟机主机,添加两块新硬盘,重启虚拟机主机
2、新建分区sdb1和sdc1,修改分区类型ID为 “8e”
fdisk /dev/ sdb
fdisk /dev/ sdc
3、创建物理卷
pvcreate /dev/ sdb1 /dev/ sdc1
4、创建卷组
vgcreate abc /dev/ sdb1 /dev/ sdc1
5、创建逻辑卷,容量为30G.
lvcreate -L 30G -n 1 abc01 abc
6、对逻辑卷格式化,创建XFS文件系统,并挂载在/data目录下
mkfs -t xfs /dev/ vgname1/ lvname1
mount /dev/ vgname1/ lvname1 /data
df -hT
7、扩容8G(根据需要)
vgextend vgname1 / dev/ sdc2
lvextend -L +8G /dev/abc/abc01
xfs_ growfs /dev/abc/abc01
刷新xfs文件系统容量
resize2fs / dev/abc/abc01
刷新ext4类型文件系统容量

4.1. 添加硬盘,并对硬盘划分主区,修改分区号8e

 2. 对新添加的磁盘进行分区,修改HEX代码为8e

 

 

2.1. 同理 sdc分区步骤同 sdb

 

 3.创建物理卷

4、创建卷组
vgcreate abc /dev/sdb1 /dev/sdc1

 

5、创建逻辑卷,容量为20G.
lvcreate -L 30G -n 1 abc01 abc
-L :指定空间大小 (30G)
-n : 指定名称(abc01)

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

 

 7.扩容8G(根据自己的需要)

 

 

 

 

 5.对卷组扩容, 扩到逻辑卷中

 

 

 

 

二、磁盘配额

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

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

1、实现磁盘配额的条件
  • 需要Linux内核支持
  • 安装xfsprogs与quota软件包
2、Linux磁盘限额的特点
  • 作用范围:针对指定的文件系统(分区)
  • 限制对象:用户账号、组账号
  • 限制类型:磁盘容量、文件数量
  • 限制方法:软限制、硬限制
    • 硬限制:是指对资源节点和数据块的绝对限制,在任何情况下都不允许用户超过这个限制
    • 软限制:是指用户可以在一定时间范围内(默认时间为一周,在/usr/include/sys/fs/ufs_quota.h文件中设置)超过软限制的额度,在硬限制的范围内继续申请资源,同时系统会在用户登录时给出警告信息和仍可继续申请资源剩余时间.如果达到时间期限,用户的硬盘使用仍超过软限制的额度,则系统将不允许用户再申请硬盘资源

3. 配置思路:

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

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

验证磁盘配额功能

查看磁盘配额使用情况

4.磁盘配额的具体步骤

4.1.查看xfsprogs和quota是否安装

rpm -q xfsprogs quota

未安装的话,则通过yum安装
yum -y install xfsprogs
yum -y install quota
4.2.以支持配额功能的方式挂载文件系统
umount / dev/ abc/abc01
#有挂的先解挂
mount -0 usrquota, grpquota /dev/abc/abc01 /data
#添加挂载参数"usrquota,grpquota"用于增加对用户、组配额功能的支持
或者
vim /etc/ fstab
/dev/abc/abc01 /data  xfs defaults, usrquota, grpquota 0 0
#自动挂载配置
mount- a
#-a选项,将/etc/ fstab的所有内容重新加载

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

useradd lisi

passwd lisi
 
xfs_ quota -x -c ' limit -u bsoft=80M bhard=100M isoft=8 ihard=10 lisi' /data/
 
#仅限制磁盘容量
xfs_ quota -x -c 'limit -u bsoft=80M bhard=100M lisi' /data/
#仅限制文件数
xfs_ quota -x -c 'limit -u isoft=8 ihard=10 lisi' /data/
 
#查看lisi的磁盘容量限制
xfs_ quota -c ' quota -uv lisi' /data/
#查看lucy的文件数限制
xfs quota -c 'quota -i -uv lisi' /data/
常用选项:

-x∶ 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用

-c∶ 表示直接调用管理命令

-u∶ 指定用户账号对象

-g∶ 指定组账号对象

bsoft∶ 设置磁盘容量的软限制数值(默认单位为 KB)

bhard∶ 设置磁盘容量的硬限制数值 (默认单位为 KB)

isoft∶设置磁盘文件数的软限制数值

ihard∶设置磁盘文件数的硬限制数值

4.4 验证磁盘配额功能是否正常

dd命令是一个设备转换和连续复制命令

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

chmod 777 /data

#给权限
su lisi
cd /data
#验证磁盘容量超限
dd if=/dev/ zero of=/data/123. txt bs=10M count=12
 
#验证磁盘文件数超限
touch {1..11} . txt

4.5. 查看磁盘配额使用情况

#查看所有可用分区的磁盘容量配额使用情况

xfs_quota -X -C ' report -a'
 
#查看磁盘容量和文件数的报告
xfs_quota-X -C  'report -abih '

4.6. 停止配额

xfs_quota -x -c 'off -u' /配额的目录

xfs_quota -x -c 'off -g' /配额的目录
xfs_quota -x -c 'off -p' /配额的目录

4.7. 删除配额

xfs_quota -x -c 'remove -u' /配额目录

xfs_quota -x -c 'remove -g' /配额目录
xfs_quota -x -c 'remove -p' /配额目录
 
posted @ 2021-07-09 14:23  DoYouWantMore  阅读(101)  评论(0编辑  收藏  举报