在CentOS系统中安装quota来管理磁盘配额

2020-01-30 14:40:50于海丽

在网络管理的工作中,由于硬盘的资源是有限的,常常需要为多用户的服务器设定用户的linux磁盘配额。这个功能对公用的多用户服务器(免费的或者收费的)来说,更是非常必要的。Quota就是在RedHatlinux下实现linux磁盘配额的工具。 quota只支持单独的挂载文件系统  不是某一个目录。

1. 挂载目录加入 quota

查看/home目录挂载情况

复制代码
[root@bogon ~]# df -h /home

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3             2.0G   35M  1.8G   2% /home

复制代码
[root@bogon ~]# mount | grep home
/dev/sda3 on /home type ext4 (rw)

使用者与群组的 quota 文件系统支持参数:usrquota, grpquota

复制代码
[root@bogon ~]# mount -o remount,usrquota,grpquota /home

查看 确定加了 usrquota,grpquota

复制代码
[root@bogon ~]# mount | grep home

/dev/sda3 on /home type ext4 (rw,usrquota,grpquota)

编辑 fstab文件让系统启动时挂载quota  

复制代码
[root@bogon ~]# vi /etc/fstab 重启后生效
LABEL=/home /home ext4 defaults,usrquota,grpquota 1 2

重新挂载

复制代码
[root@bogon ~]# umount /home
[root@bogon ~]# mount -a
[root@bogon ~]# mount | grep home

2. quota安装  生成usrquota, grpquota两个目录
对整个系统含有 usrquota, grpquota 参数的文件系统进行 quotacheck 扫瞄

复制代码
[root@bogon ~]# quotacheck -avug
-bash: command not found


复制代码[root@bogon ~]# yum install quota 安装quota

复制代码
[root@bogon ~]# quotacheck -avug

自动创建 usrquota, grpquota两个目录

复制代码
[root@bogon ~]# ll -d /home/

-rw------- 1 root root 8192 Mar  6 11:58 /home/aquota.group
-rw------- 1 root root 9216 Mar  6 11:58 /home/aquota.user
 
这时, 由于某种需要,或者在某种情况,“不得不”运行这个命令 :

复制代码
[root@bogon ~]# quotacheck -avug -mf

参数 -m[M] 意思是:强迫在“读、写”模式下检查硬盘的 quota (有一定的“正在写”的数据丢失可能,应确保没有进程在写这个分区。建议在单用户模式下进行。)。

复制代码
[root@bogon ~]# quotaon -auvg   启动 quota
/dev/sda3 [/home]: group quotas turned on
/dev/sda3 [/home]: user quotas turned on