Linux是一个多用户管理的操作系统,磁盘配额是为了防止某用户疏忽或者恶意占满磁盘空间,而导致磁盘崩溃。
- 磁盘配额限制类型
通过
对用户/组进行磁盘空间使用量的限制(data block)
对用户/组进行磁盘空间创建文件个数的限制(inode)
来满足磁盘配额的效果
-
磁盘配额限制界别
1.软限制:低级限制,此限制可以突破,突破时会被警告
2.硬限制:绝对限制,此限制不会被突破,达到指定限制后无法使用更多空间
3.宽限天数:允许用户在每个文件系统指定的宽限期内超过他们的软限制。一旦宽限期过期,软限制将作为硬限制强制执行。
注意:磁盘配额是针对分区的
-
磁盘配额实验规划
2.1准备足量的空间大小的分区
2.2 添加磁盘、修改分区表类型、分区、格式化、挂载
参考分区步骤2.3创建实验的用户和组
用户:laow、laos、laom、
组:old2.4磁盘配额规划
old: 硬:500M 软:450M 文件数不限制
laow: 硬:50M 软:40M 硬:10个 软:8个
laos: 硬:250M 软:200M 文件数不限制
laom: 硬:250M 软:200M 文件数不限制
开始磁盘配额
-
磁盘开启条件
首先确认一下内核是否支持磁盘配额
[root@xxx ~]# :grep "CONFIG_QUOTA" /boot/config-3.10.0-957.el7.x86_64
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
# CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=y
CONFIG_QUOTACTL=y
CONFIG_QUOTACTL_COMPAT=y #表示支持状态
在查看一下quota命令是否安装
[root@xxx ~]# :rpm -q quota
quota-4.01-19.el7.x86_64 #这里会显示版本
-
查看分区的挂载是否开启了磁盘配额功能
查看结果是否有usrquota,grpquota这两个属性
[root@xxx ~]# :mount | grep /dev/sdc1
/dev/sdc1 on /disk/guazai4 type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
如果没有,那么我们需要去/etc/fstab中配置
如果已经在fstab中挂载了,我们mount -a 是没有用
这种情况(已经卸载了guazai4),我们使用 mount -ao remount,usrquota,grpquota /disk/guazai4就可以实现更新挂载
或者输出重定向也可以
[root@xxx ~]# echo "/dev/sdb1 /movie xfs defaults,usrquota,grpquota 0 0" >> /etc/fstab
[root@localhost ~]# mount -a
mount -a 是在我们没有在fatab中做任何挂载,通过echo来实现挂载,我们在mount -a就可以
配置完成后,我们再次mount | grep /dev/sdc1查看一下。
-
创建用户及用户组
用户:laow、laos、laom
组:old
顺便设置密码
[root@xxx /boot]# :groupadd old
You have new mail in /var/spool/mail/root
[root@xxx /boot]# :useradd -g old laow
[root@xxx /boot]# :useradd -g old laos
[root@xxx /boot]# :useradd -g old laom
You have new mail in /var/spool/mail/root
[root@xxx /boot]# :echo "123123" | passwd --stdin laow
Changing password for user laow.
passwd: all authentication tokens updated successfully.
You have new mail in /var/spool/mail/root
[root@xxx /boot]