序言
这里我主要介绍一些Linux关于磁盘配额的一些问题
一.LVM概述
■LVM 逻辑卷管理
- 能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性
./boot分区用于存放引导文件,不能基于LVM创建
■LVM机制的基本概念
PV(物理卷)
物理卷是LVN机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元,从而构成物理卷VG(卷组)
由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷LV(逻辑卷)
逻辑卷建立在卷组之上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块就称为逻辑卷。使用mkfs等工具在逻辑卷上创建文件系统
1.LVM的管理命令
功能 | PV管理命令 | VG管理命令 | LV管理命令 |
---|---|---|---|
Scan | pvscan | vgscan | lvscan |
Creat建立 | pvcreate | vgcreate | lvcreate |
Display显示 | pvdisplay | vgdisplay | lvdisplay |
Remove删除 | pvremove | vgremove | lvremove |
Extend扩展 | pvextend | vgextend | lvextend |
Reduce减少 | ------ | vgreduce | lvreduce |
Display显示 | ------ | vgdisplay | lvdisplay |
■主要命令
pvcreate 设备名1 【设备名2 ......】
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +大小 /dev/卷组名/逻辑卷名
2.LVM的操作实例
LVM操作主要命令步骤
1.关闭主机,添加两块新硬盘,重启主机
或echo "- - - " > /sys/class/scsi_host/host0/scan 扫描
2.先使用fdisk工具讲磁盘设备/dev/sdb、/dev/sdc划分主分区sdb1、sdc1,并且把分区类型的ID标记号改为“8e”
fdisk /dev/sdb
fdisk /dev/sdc
3.创建物理卷
pvcreate /dev/sdb1 /dev/sdc1
4.创建卷组,卷组名为vgname1
vgcreate vgname1 /dev/sdb1 /dev/sdc1
5.创建逻辑卷,逻辑卷名为lvname1,容量为20GB,生产的文件路劲为/dev/vgname1/lvname1
lvcreate -L 20G -n lvname1 vgname1
6.对逻辑卷进行格式化,创建XFS文件系统,并且挂载到/opt目录下
mkfs -t xfs /dev/vgname1/lvname1
mount /dev/vgname1/lvname1 /opt目录下
df -Th
7. 再扩容
vgextend vgname1 /dev/sdc2
lvextend -L +10G /dev/vgname1/lvname1
xfs_growfs /dev/vgname1/lvname1 //刷新xfs文件系统容量
resize2fs /dev/vgname1/lvname1 //刷新ext4类型文件系统容量
创建 LVM 流程:
pvcreate 创建 pv -> vgcreate 创建卷组 -> lvcreate 创建逻辑卷 -> mkfs.xfs lv 格式化-> mount 挂载
删除 LVM 流程:
umount 卸载 -> lvremove lv 移出卷组中所有逻辑卷-> vgremove vg 移出卷组-> pvremove 移出 pv
二.磁盘配额概述
■实现磁盘限额的条件
- 需要Linux内核支持
安装xfsprogs与quota软件包
■Linux磁盘限额的特点作用范围
:针对指定的文件系统(分区)限制对象
:用户账号、组账号限制类型
:磁盘容量、文件数量限制方法
:软限制、硬限制
■为什么要设置磁盘配额
设置磁盘配额
当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可
在Centos系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文 件系统通过xfs_ _quota 工具进行管理;
EXT3/4 文件系统通过quota工具进行管理。
■磁盘配额顺序
以支持配额功能的方式挂载文件系统👉编辑用户和组账号的配额设置👉验证磁盘配额功能👉查看磁盘配额使用情况
三.磁盘配额管理
CentOS7中设置磁盘配额步骤
以支持配额功能的方式挂载文件系统:
1、检查是否已安装xfsprogs和xfs_ quota软件包
rpm -q xfsprogs quota
yum install -y xfsprogs quota
2、以支持配额功能的方式挂载文件系统
umount / dev/ vgname1 / lvnamel
mount -o usrquota, grpquota /dev/ vgname1/ lvname1 /opt
#添加挂载参数"usrquota, grpquota"用于增加对用户、组配额功能的支持
或者
vim /etc/ fstab
/dev/vgname1/ lvname1 /opt xfs defaults, usrquota, grpquota 00
umount /dev/vgname1/ lvname1
mount -a #-a选项,将/etc/ fstab的所有内容重新加载
编辑用户和组账号的配额设置:
useradd lisi
passwd lisi
xfs_ quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 lisi' /opt/
-x:表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用。
-c: 表示直接调用管理命令。
-u: 指定用户账号对象
-g: 指定组账号对象
bsoft: 设置磁盘容量的软限制数值(默认单位为KB)。
bhard:设置磁盘容量的硬限制数值(默认单位为KB)。
isoft:设置磁盘文件数的软限制数值。
ihard:设置磁盘文件数的硬限制数值。
#仅限制磁盘容量
xfs_ quota -x -c 'limit -u bsoft=80M bhard=100M lisi' /opt/
#仅限制文件数
xfs quota -x -c 'limit -u isoft=4 ihard=5 lisi' /opt/
#查看zhangsan磁盘:容量限制
xfs_ quota -C 'quota -uv lisi' /opt/
#查看zhangsan文件数限制
xfs quota -c 'quota -i -uv lisi' /opt
验证磁盘配额功能:
chmod 777 /opt
Su lisi
cd /opt
#验证磁盘容量超限
dd if=/dev/zero of=/opt/kgc.txt bs=1OM count=12
#验证磁盘文件数超限
touch {aa,bb, cc,dd,ee, ff} .txt
dd命令是一一个设备转换和连续复制命令
“if=” 指定输入设备(或文件)
"of="指定输出设备(或文件)
"bs=" 指定读取数据块的大小
"count=”指定读取数据块的数量
/dev/zero “零"设备文件,可以无限的提供空字符。常用来生成-一个特定大小的文件。
查看配额使用情况:
#查看所有可用分区的磁盘容量配额使用情况
xfs_ quota - x -C ' report -abih'
查看磁盘配额
report常用选项:
-u:对用户查看
-g:对组查看
-a:查看所有可用分区的配额使用报告
-b:查看磁盘容量
-i:查看文件数