磁盘配额(quota),相信大家都晓得,下面我对quota使用方法简单的介绍下:

  Quota主要作用:

  1、针对WEB Server,例如:每个网页空间的容量限制

  2、针对MAIL Server,例如:每个人的邮件空间限制

  3、针对FILE Server,例如:每个最大的可用网络硬盘空间

  下面对介绍下Quota的规范设置选项

  1、容量限制或文件数量限制

   限制inode用量:管理用户可用新建的“文件数量”

   限制block用量:管理用户磁盘容量的限制,比较常见的为这种方式

  2、soft/hard

   soft:软限制,用户可用超过这个限制,系统只是会给用户发出警告

   hard:硬限制,用户绝对不能超过这个限制

  3、会倒计时的宽限时间(grace time)

   当用户磁盘使用超过了soft,但没有达到hard时,系统会给出一个倒计时值,这个默认倒计时时间为7天,当到达倒计时的时间后,系统会把soft的值做hard值,用户不能在增加文件。解决这个问题的方法是,删除多余的文件,让空间使用值低于soft限制值。

  Quota实例设置

  建立mkk1、mkk2、mkk3、mkk4、mkk5这五个用户和mkkgrp这个用户组,给这个五个用户对/mnt目录的磁盘限制都限制100M的空间,超过80M就警告,给mkkgrp组400M的限制,最后警告天数设为10天。

  第一步:建立用户

  1. [root@mkk date]# vi users.sh  
  2. #!/bin/sh 
  3. PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin 
  4. export PATH 
  5.  
  6. groupadd mkkgrp 
  7. for usr in mkk1 mkk2 mkk3 mkk4 mkk5 
  8. do 
  9.    useradd -g mkkgrp $usr 
  10.    echo "passwd" | passwd --stdin $usr 
  11. done 
  12. [root@mkk date]# sh users.sh 

  第二步:查看目录是否支持quota

  1. [root@mkk date]# df -h /mnt 
  2. Filesystem            Size  Used Avail Use% Mounted on 
  3. /dev/sdb1             966M   18M  899M   2% /mnt 
  4. [root@mkk date]# mount | grep /dev/sdb1  
  5. /dev/sdb1 on /mnt type ext3 (rw) 
  6. [root@mkk date]#  

  启用quota

  1. [root@mkk date]# mount -o remount,usrquota,grpquota /mnt 
  2. [root@mkk date]# mount | grep /dev/sdb1  
  3. /dev/sdb1 on /mnt type ext3 (rw,usrquota,grpquota) 
  4. [root@mkk date]#  

  当你重新挂载时,系统会同步更新/etc/mtab这个文件,所以你必须要确定/etc/mtab已经加入usrquota、grpquota的支持到你所想要设置的文件系统中

  注意:虽然是挂载好了,但是下次重启系统后会失效,所以要永久设置,就得在/etc/fstab中设置

  1. [root@mkk date]# vi /etc/fstab 
  2. /dev/sdb1               /mnt                    ext3    defaults,usrquota,grpquota      1 2 
  3. [root@mkk date]# umount /mnt/ 
  4. [root@mkk date]# mount -a 
  5. [root@mkk date]# mount | grep mnt 
  6. /dev/sdb1 on /mnt type ext3 (rw,usrquota,grpquota) 

  第三步:新建Quota

   quota扫描文件命令及格式

  1. [root@mkk date]# quotacheck [-avgufM] [/mount_point] 
  2. -a:扫描所有的文件系统 
  3. -v:显示扫描过程 
  4. -g:针对用户组扫描文件与目录使用情况,会新建aquota.group 
  5. -u:针对用户扫描文件与目录使用情况,会新建aquota.user 
  6. -f:强制扫描文件系统,并写入新的quota配置文件 
  7. -M:强制以读写的方式扫描文件系统,只有在特殊情况下才会使用 
  1. [root@mkk date]# quotacheck -avgu 
  2. quotacheck: Scanning /dev/sdb1 [/mnt]  
  3. quotacheck: Cannot stat old user quota  
  4. file: No such file or directory 
  5. quotacheck: Cannot stat old group quota file: No such file or directory 
  6. quotacheck: Cannot stat old user quota file: No such file or directory 
  7. quotacheck: Cannot stat old group quota file: No such file or directory 
  8. done 
  9. quotacheck: Checked 3 directories and 2 files 
  10. quotacheck: Old file not found. 
  11. quotacheck: Old file not found. 

  扫描一次文件,系统会自动建立,aquota.group与aquota.user两个文件,在此扫描时会报错,不过可以用-fM强制扫描,格式为:quotacheck -avgu -fM