知识点:
1、quota配额用来限制用户能够使用的磁盘空间的大小
2、设置配额的条件:需要内核支持quota的功能
可以用下面这条命令查看内核是否支持quota功能:
grep -i quota /boot/config-2.6.32-431.el6.x86_64
如果看到CONFIG_QUOTA=y这行,表示内核支持quota功能。
3、应用场景:1).网络存储空间有限 网盘
2).邮件服务器
3).公司的文件共享服务器
4、限制对象:1).限制普通用户
2).限制用户组
注意:不能限制root用户。是root用户对其他人的限制
5、能够限制的对象:inode、block
inode:限制用户创建文件的个数
block:限制用户能够使用的磁盘空间的大小
6、如何进行磁盘配额?
需要先关闭firewalld、selinux
实施思路:
1)、对新硬盘分区、格式化、挂载时启用quota功能
2)、用quotacheck生成quota主配置文件
3)、用edquota给用户设置quota配额方案
4)、激活用户的配额方案
5)、用账号登录,创建文件进行配额测试
-------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
ext4设置quota配额:
案例一:给sdb硬盘创建一个1G的主分区,格式化成ext4文件系统,手动挂载sdb1分区到/quota目录(要启用quota功能)。创建用户u1、u2,指定家目录为/db1/用户名。限制u1用户最大只能用10M的空间,当使用量超过6M时发出警告。限制u2用户最多只能创建8个文件,当超过了5个文件时发出警告。分别切换到u1、u2用户,测试配额功能,查看配额状态。
1.首先需要分区开启用户配额和组配额,文件系统必须支持磁盘配额 usrquota,grpquota (挂载时启用的quota选项)
#创建一个分区并格式化
lsblk
fdisk -cu /dev/sdb #要求创建一个1G的主分区
fdisk分区操作参考:p—>n—>p—>回车—>回车—>+1G—>p—>w
partx -a /dev/sdb 或 partprobe #通知内核更新分区表信息
mkfs.ext4 /dev/sdb1
#将文件系统挂载到系统中的/quota目录
mkdir /quota
mount /dev/sdb1 /quota
#查看文件系统是否支持磁盘配额
mount | grep /quota
#让文件系统支持磁盘配额(用remount选项)
mount -o remount,usrquota,grpquota /dev/sdb1 /quota
#将分区设置为开机挂载(可选)
vim /etc/fstab
/dev/sdb1 /quota ext4 defaults,usrquota,grpquota 0 0
2.创建磁盘配额的记录文件(即quota主配置文件)
quotacheck -cugv /quota
注:-c 创建磁盘配额的配置文件
-u 针对用户配额的配置文件aquota.user
-g 针对用户组配额的配置文件aquota.group
-v 显示扫描过程信息
-a 检测系统中所有已经挂载支持quota功能的分区
ls /quota
3.针对用户进行配额
useradd quota1 -d /quota/quota1
useradd quota2 -d /quota/quota2
ls -ld /quota
#保证普通用户可以对/quota目录可写