系列文章目录
` 提示:仅用于个人学习,进行查漏补缺使用。
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
本章大概内容有:
磁盘配额概述、配额管理、案例示例等
提示:以下是本篇文章正文内容,下面案例可供参考
一、磁盘配额概述
- Linux中的磁盘配额(Disk Quotas)是一种管理文件系统空间使用的方法,它可以限制用户或组可以使用的磁盘空间量,防止他们占用过多的空间,影响其他用户。
- 磁盘配额分为两种:
- 空间配额(block quota):限制用户可以占用的磁盘空间大小。例如,可以为某个用户设置一个最大占用10GB的空间。
- inode配额(file quota):限制用户可以创建的文件数量。inode是文件系统中的一个数据结构,用于存储关于文件或目录的元数据。
- 实现磁盘配额的条件:
- 内核支持:Linux内核必须支持磁盘配额功能。
- 文件系统支持:需要使用支持磁盘配额的文件系统,如Ext3、Ext4或XFS。
- 相应的软件包安装 :需要安装磁盘配额管理工具,如'xfsprogs'与
quota
、quotaon
、setquota
等。
- Linux配置限额的特点:
- **作用范围:**针对指定的文件系统(分区)
- **限制对象:**用户帐号、组帐号
- **限制类型:**磁盘容量、文件数量
- **限制方法:**软限制、硬限制
二、磁盘配额管理
- 在Centos系统中,不同的文件系统使用不同磁盘配额配置管理工具。
- 例如,XFS文件系统通过xfs quota工具进行管理;
EXT3/4 文件系统通过quota 工具进行管理。
- 示例:
- 1.环境准备
- 准备一个目录 /abc
- 1.环境准备
bash
mkdir /abc
- 安装xfsgrops 和 quota 软件
bash
rpm -q xfsprogs quota ###检查是否已经安装
yum install -y xfsprogs quota ###没有安装使用该命令安装
- 2.操作
- 1.准备一个设备文件挂载点
bash
mount /dev/xy/xy03 lilei
- 2.需要调整挂载配置 /etc/fstab中的配置项---》支持xfsgrops和quota两个功能,并且使用mount -a 刷新生效,让挂载点目录支持磁盘配额的功能
bash
mount -a ###刷新生效,让挂载点目录支持磁盘配额的功能
mount -o usrquota,grpquota /dev/sdb1 /data
【挂载】 【支持以上2个功能】 【挂载设备】 【挂载点】
mount -o loop 【特殊挂载设备,例如镜像名字,视为一个挂载设备相当于/dev/cdrom】
- 3.以支持配额功能的方式挂载文件系统
bash
vim /etc/fstab
/dev/xy/xy03 /lilei xfs defaults,usrquota,grpquota 0 0 #需要重启
- 4.关闭安全功能
bash
setenforce 0 ###关闭安全机制
- 5.创建用户
bash
useradd zhangsan
passwd zhangsan
###(输入两次密码)
- 6.创建好用户之后,使用下面的命令编辑用户的配额限制
bash
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan'/data ###限制磁盘
xfs_quota -x -c 'limit -u isoft=4 ihard=5 zhangsan' /data ###限制文件数
或者写成一条
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 zhangsan' /data
#其中参数解释如下:
"-x" 表示启动专家模式,在当前模式下允许对配额系统进行修改所有管理命令可用
"-c" 表示直接调用管理命令
"-u" 指定用户账号对象
"bsoft" 设置磁盘容量【软限制】
"bhard" 设置磁盘容量【硬限制】
"isoft" 设置磁盘文件数量【软限制】
"ihard" 设置磁盘文件数量【硬限制】 ###软限制会提醒,硬限制会报错
- 7.切换用户、验证操作
bash
quotaon -ugv/xy03 ###开启配额功能,若关闭配额功能用quotaoff
chmod 777 /xy03 ###增加全部权限
su zhangsan ###切换到用户验证操作
dd if=/dev/zero of=yun.txt bs=10k(每次拿的大小) count=6(拿的次数) ###验证
quota -u 用户名
quota -g 组名 ###查看配额使用情况
三、案例:
哪都通快递公司预计进一批"进口货物",你所在的仓储部门需要调整仓管存储资源与各个小部门的资源使用权限,当前环境如下:
1、系统当前新增了2块磁盘,每块磁盘60G
2、你分管3个部门,分别为"华中"、"华北"、"华东"
需求:
1、每个部门的存储空间需要给与33G,他们的存储目录分别为华中 :/Central 华北: /North 华东: /East,请使用lvm的方式分别为这三个目录添加33G的存储设备。
2、因为三个部门的某些零时工肆意往各自部门目录中传文件,主要人员为:华中:heiguaner 华北:baoer 华东:xiaoge,所以对其三人的账号做以下处理:
华中区heiguaner用户最多只能使用4M空间和创建2个文件。
华北区baoer用户最多只能使用500M空间和创建20个文件。
华东区xiaoge用户最多只能用800M空间和创建11个文件。
执行过程截图贴于文档中,同时需要截图验证每个账号是否被成功限制
步骤1:创建物理卷(PV)和卷组(VG)
首先,我们将两块新磁盘(/dev/sdc1 和 /dev/sdd1)添加到系统中,并创建物理卷。然后,我们将物理卷合并成一个卷组(VG)。
1.虚拟机关机,在'虚拟机设置'里添加两块60G(scsi为例)硬盘,并点击确定
2.使用lsblk或者fdisk -l查看刚添加的硬盘有没被识别到
3.使用fdisk /dev/sdc , fdisk /dev/sdd分区
4.创建两个物理卷,合并成一个卷组
bash
pvcreate /dev/sdc1 ##把/dev目录下的sdc1设备创建成物理卷
pvcreate /dev/sdd1 ##把/dev目录下的sdd1设备创建成物理卷
vgcreate vg_data /dev/sdc1 /dev/sdd1 ##将上述的两个物理卷合并在一起创建一个卷组(vg_data)
步骤2:创建逻辑卷(LV)
接下来,我们为每个部门创建一个逻辑卷,大小为33G。
bash
lvcreate -L 33G -n lv_central vg_data ##用lvcreate从vg_data卷组中划分33G创建逻辑卷lv_central
lvcreate -L 33G -n lv_north vg_data
lvcreate -L 33G -n lv_east vg_data
步骤3:格式化逻辑卷
将每个逻辑卷格式化为XFS文件系统。
bash
mkfs.xfs /dev/vg_data/lv_central
mkfs.xfs /dev/vg_data/lv_north
mkfs.xfs /dev/vg_data/lv_east
步骤4:挂载逻辑卷
创建Central,North,East三个目录
将逻辑卷挂载到对应的目录下。
bash
mount /dev/vg_data/lv_central /Central
mount /dev/vg_data/lv_north /North
mount /dev/vg_data/lv_east /East
步骤5:为特定用户设置存储限制
1.添加三个用户并免交互给密码
2.配置/ect/fstab文件,添加内容以便重启后自动挂载并启用配额功能,mount -a重启电脑
使用quota
和quotaon
命令限制特定用户的存储空间和文件数量
bash
xfs_quota -x -c 'limit -u bsoft=3M bhard=4M isoft=1 ihard=2 heiguaner' /Central
xfs_quota -x -c 'limit -u bsoft=400M bhard=500M isoft=15 ihard=20 baoer' /North
xfs_quota -x -c 'limit -u bsoft=700M bhard=800M isoft=8 ihard=11 xiaoge' /East
步骤6:给三个目录添加权限(777)
步骤7:验证限制
- 华中区heiguaner用户最多只能使用4M空间和创建2个文件。
- 华北区baoer用户最多只能使用500M空间和创建20个文件。
- 华东区xiaoge用户最多只能用800M空间和创建11个文件。
四、补充
- 命令行:
- c
- commond