1. 查看系统是否支持磁盘配额
[root@localhost ~]# grep QUOTA /boot/config-3.10.0-1062.el7.x86_64
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_XFS_QUOTA=y
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
CONFIG_PRINT_QUOTA_WARNING=y
# CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=y
CONFIG_QUOTACTL=y
CONFIG_QUOTACTL_COMPAT=y
2. 下载相应的工具
[root@localhost ~]# yum install quota
3.磁盘配额的概念
- 用户配额和组配额
- 磁盘容量限制和文件个数限制
- 软限制和硬限制
- 宽限时间
如果用户的空间占用数处于软限制个硬限制之间,统计在用户登录时候警告用户磁盘将满,这个宽限时间默认7天,如果超过了宽限时间,用户磁盘占用量依然超过了限制,那么就会变为硬限制。
4. 磁盘分区实验
4.1 建立用户和用户组
[root@localhost ~]# groupadd test
[root@localhost ~]# useradd -G test user1
[root@localhost ~]# useradd -G test user2
[root@localhost ~]# useradd -G test user3
[root@localhost ~]# passwd user1
[root@localhost ~]# passwd user2
[root@localhost ~]# passwd user3
4.2 给分区开启磁盘配额
先挂载起来分区
[root@localhost ~]# mount /dev/sdb5 /mnt/disk5/
在分区开启磁盘配额功能
[root@localhost ~]# mount -o remount,usrquota,grpquota /mnt/disk5
也可以设置自动挂载
自动详情
4.3 建立磁盘配置文件
[root@localhost ~]# quotacheck [选项] 分区名
选项:
| 选项 | 含义 |
|---|---|
| -a | 扫描/etc/mtad 文件中所有开启磁盘配额功能的分区,如果使用这个参数,命令后面就不要加入分区名 |
| -c | 不管原来的配置文件,重新扫描并建立新的配置文件 |
| -u | 建立用户配额配置文件。生成aquota.user文件 |
| -g | 建立组配额文件,生成aquota.group文件 |
| -v | 显示扫描过程 |
| -m | 强制以读写的方式扫描文件系统 |
| -f | 强制扫描文件系统,并写入新配置文件 |
需要关闭SELinux
查询SELinux的状态[root@localhost ~]# getenforce
关闭SELinux临时
#第一种方式
[root@localhost ~]# setenforce 0
#0为关1为开
#第二种方式
[root@localhost ~]# vim /etc/selinux/config
SELINUX=disabled
#修改他的属性
SELINUXTYPE=targeted
生成磁盘配额的配置文件
[root@localhost ~]# quotacheck -avug
查看是否生成配置文件
[root@localhost ~]# ls /mnt/disk5/
aquota.group aquota.user lost+found
4.4 设置用户和组的配置限制
[root@localhost ~]# edquota [选项] [用户/组名]
选项
| 选项 | 含义 |
|---|---|
| -u 用户名 | 设定用户的配额 |
| -g 组名 | 设定组配额 |
| -t | 设定宽限时间 |
| -p | 复制配额限制 |
复制配额[root@localhost ~]# edquota -p user1 -u user2
将user1的配额复制给user2
[root@localhost ~]# edquota -u user1
Disk quotas for user user1 (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/sdb5 0 0 0 0 0 0
#其中blocks与inodes坚决不许手工修改
#blocks、soft、hard分别是,用户占用的磁盘大小,设置的软限制大小,设置的硬限制大小
#inodes、soft、hard分别是,用户占有的文件个数,设置的软限制个数,设置的硬限制个数
#**这里的空间大小的单位为KB**
修改内容
Disk quotas for user user1 (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/sdb5 0 40000 50000 0 8 10
4.5 开启和关闭配额
启动
[root@localhost ~]# quotaon [选项] 分区名
选项
| 选项 | 含义 |
|---|---|
| -a | 依据/etc/mtab文件启动所有的配额分区 |
| -u | 启动用户配额 |
| -g | 启动组配额 |
| -v | 显示启动过程信息 |
[root@localhost ~]# quotaon -uv /dev/sdb5
/dev/sdb5 [/mnt/disk5]: user quotas turned on
关闭
[root@localhost ~]# quotaoff [选项] 分区名
选项
| 选项 | 含义 |
|---|---|
| -a | 依据/etc/mtab文件关闭所有的配额分区 |
| -u | 关闭用户配额 |
| -g | 关闭组配额 |
4.5 查看磁盘配额
查询用户/组配额
[root@localhost ~]# quota [选项] 用户名/组名
选项
| 选项 | 含义 |
|---|---|
| -u 用户名 | 查询用户配额 |
| -g 组名 | 查询组配额 |
| -v | 显示详细信息 |
| -s | 用习惯的单位显示容量 |
查询文件系统配额
[root@localhost ~]# repquota [选项] 分区名
选项
| 选项 | 含义 |
|---|---|
| -a | 依据/etc/mtab文件查询配额 |
| -u | 查询用户配额 |
| -g | 查询组配额 |
| -v | 显示详细信息 |
| -s | 以习惯单位显示 |
5. 非交互设定用户磁盘配额
[root@localhost ~]# setquota -u 用户名 容量软限制 容量硬限制 个数软限制 个数硬限制 分区名
本文详细介绍了如何在Linux系统中进行磁盘配额管理,包括查看系统支持、安装工具、理解配额概念如软硬限制和宽限时间,以及进行磁盘分区实验,包括建立用户和用户组,开启磁盘配额,设置用户和组限制,并展示了如何非交互式设定用户配额。
309

被折叠的 条评论
为什么被折叠?



