启动磁盘配额限制

实现的功能:给用户增加磁盘限额为100M

(1)启用配额功能:

[root@www home07:11:21]# cat /etc/fstab    ##配置配额限制功能将/etc/fstab中加入usrquota,grpquota

#
# /etc/fstab
# Created by anaconda on Sun Oct  2 22:20:50 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=f15c3ecc-b6e0-4bba-8918-36b6fcac540f /                       ext4    defaults        1 1
UUID=dcfcf26d-ae5e-4524-9326-c9cafffe7ecd /boot                   ext4    defaults        1 2
UUID=98eefdc6-1f04-4784-8b31-876ee05e618f swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/sdb1 /newFS ext4  defaults 0 0
/dev/sdc1 swap swap defaults 0 0 
UUID=990eddeb-d162-4d6d-ac74-cdafa474e5c0  /home  ext4   usrquota,grpquota  0 0     ##userquota:增加用户配额限制;grpquota:增加用户组配额限制


[root@www home07:10:51]#mount -o remount /home   ##启用配置
[root@www home07:11:19]#mount            ##检查配置
/dev/sda3 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/sdb1 on /newFS type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/sdd1 on /home type ext4 (rw,usrquota,grpquota)    ##配额功能已启用

(2)创建配额数据库:在指定的分区下创建配额数据库,根据/etc/fstab指定的配额选项进行创建数据库

[root@www home07:11:52]#quotacheck -cug /home # -c create 创建;-u userquote:用户的配额控制;-g grpquota:属组的配额控制;/home:要增加配额的分区(配额只能给分区)
quotacheck: Cannot create new quotafile /home/aquota.user.new: Permission denied    ##拒绝的原因是SELinux,下面先关闭此功能
quotacheck: Cannot initialize IO on new quotafile: Permission denied
quotacheck: Cannot create new quotafile /home/aquota.group.new: Permission denied
quotacheck: Cannot initialize IO on new quotafile: Permission denied
[root@www home07:29:31]#getenforce   #查看SELinux状态 enforce执行
Enforcing                 ##正在加强,正在执行保护
[root@www home07:29:41]#setenforce  ##设置SELinux
usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]    ##1为启用,0为关闭
[root@www home07:32:36]#setenforce 0
[root@www home07:32:40]#getenforce
Permissive
[root@www home07:32:47]#quotacheck -cug /home  ##创建磁盘配额数据库
[root@www home07:40:49]#cd /home
[root@www home07:41:32]#ls
aquota.group  aquota.user  hadoop  lost+found  test  test1  wangcai  ##数据库已经在/home下创建成功
[root@www home08:10:36]#quotaon -p /home      ##查看配额信息
group quota on /home (/dev/sdd1) is off        
user quota on /home (/dev/sdd1) is off
[root@www home08:10:48]#quotaon /home        ##启用配额功能
[root@www home08:11:06]#quotaon -p /home
group quota on /home (/dev/sdd1) is on
user quota on /home (/dev/sdd1) is on

(3)给用户或者属组设置配额:指的是文件的所有者或者是所属组。

[root@www home08:18:02]#edquota test1   ##给用户test1设置quota

Disk quotas for user test1 (uid 501):
  Filesystem                   blocks      soft       hard     inodes     soft     hard
  /dev/sdd1                        20          0          0          5        0        0
#blocks:单位KB,按块的大小进行磁盘配额设置,即可占用/home的空间大小;soft:警报值,用户test1占用空间达到此值时,警告,但仍可使用;hard:此时不能往磁盘写入任何数据
#inodes:节点数,即文件个数;soft:用户test1所建的文件个数达到此值时,会警告,但仍可创建;hard:不可创建文件。
#使用非交互的方式进行(默认单位是KB): setquota test1 1000 2000 1000 2000 /home
[root@www home08:47:04]#useradd test2
[root@www home08:50:27]#edquota -p test1 test2    ##quota权限的复制,复制给用户test2  
[root@www home08:26:23]#edquota -g test1   #-g group :表示属组

Disk quotas for group test1 (gid 501):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sdd1                        20          0          0          5        0        0

#grace :宽限期
原文地址:https://www.cnblogs.com/wzhuo/p/6762553.html