实验环境


环境:centos7.3 ,一块磁盘sdb分一个分区sdb1。

centos mount 开机启动 centos7 mount -a_centos7查看磁盘空间


安装磁盘配额支持软件


yum install quota


制作文件系统,并以支持配额功能的方式挂载文件系统


mkfs.ext4 /dev/sdb1mount /dev/sdb1 /tmpmount -o remount,usrquota,grpquota /dev/sdb1


查看磁盘挂载时是否启用磁盘配额技术


mount要想永久挂载(需在配置文件里,加入usrquota,grpquota这两个参数)vim /etc/fstab/dev/sdb1	/tmp	ext4	defaults,usrquota,grpquota	0 0


检测磁盘配额并生成配额文件(若是出错,请关闭selinux)


quotacheck -cugv /tmp		#此命令会在/tmp下生成两个文件#解释:-c 创建配额文件,-u (-g) 扫描磁盘空间,计算每个用户(组)识别码所占用的目录和文件数,-a 扫描在/etc/fstab文件里,有加入quota设置的分区,-d 详细显示指令执行过程,便于排错。-R 排除根目录所在分区


用户和组帐号的配额设置


useradd wsfnk		#先创建一个用户,若有就不用创建了edquota -u wsfnk	#-g 表示 wsfnk组,在类似vim界面,编辑限制大小,Disk quotas for user wsfnk (uid 1000):  Filesystem                   blocks       soft       hard     inodes     soft     hard  /dev/sdb1                         0          20         50          1        0        0#对其中各字段解释如下:	#Filesystem下显示实现磁盘配额的分区;	#blocks下为当前已经使用的大小,不用修改;	#soft为软限制,超出后会给出警告,超出的部分默认会保存7天;	#hard为硬限制,不可超越的限制(软硬限制默认单位都是KB);	#后面的两个相同的soft、hard分别表示分区中这个用户可以创建的文件数目软硬限制;	#本例中设置,qingsword可以使用/dev/sdb1分区的软限制大小10KB,硬限制20KB,可创建的文件个数软限制是3个,硬限制5个;edquota参数	-u		:设置用户的quta,这是预设的参数	-g		:设置群组的quota	-p 源用户名称	:将源用户的quota设置套用到其他用户或组	-t		:设置宽限期限


激活磁盘配额


quotaon -ugv /tmp


注意: 磁盘配额中的blocks,不是fdisk里看到的blocks,而是表示1k 测试是否限制会生效


写数据mkdir /tmp/testchmod 777 /tmp/test切换用户wsfnksu wsfnkcd /tmp/testdd if=/dev/zero of=wss.test bs=1k count=500


关闭磁盘配额


#关闭单个磁盘的磁盘配额quotaoff /sdb1#关闭所有已经开启的磁盘配额quotaoff -a#反之,开启所有磁盘配额quotaon -a#如果不再使用磁盘配额,可以将配置文件也删除rm -rf /sdb1/aquota.*#最后删除/etc/fstab中的自动挂载即可