2010年(1)
分类:
2010-06-09 12:06:45
磁盘配额是指用户在主机上可以使用的磁盘空间的额度。linux通过quota来实现磁盘配额管理。quota从两个方面进行限制:一个方面可以限制用户或组占用的磁盘块数;另一方面限制用户或组所拥有的文件数(inode数)。大多数使用块数限制。
quota是以文件系统为基础的,如果系统中有多个文件系统,则必须在所有文件系统上分别进行quota的设置。
配置quota一般有以下几个步骤:
1、检查内核是否支持quota。
#dmesg|grep “quota”
2、修改/etc/fstab文件
对于要启动quota的文件系统,要配置相应的安装选项。
/etc/hda /mnt/disk1 ext3 defaut,usrquota,grpquota 1 2
usrquota表示支持用户quota, grpquota表示支持组quota。
3、重启系统或卸载文件系统并重新安装文件系统让quota选项生效。
#unmount
#mount
4、建立aquota.user和aquota.group文件。使用quotacheck命令来完成这一任务,该命令的作用是检查配置了quota的文件系统中,各个用户或组对文件和文件数的使用情况,并在每个文件系统的根目录上建立aquota.user和aquota.group文件。
例如:
#quota -avug
参数选项:
-a:检查所有已安装(mount)了并且配置了配额的文件系统。
-g:检查组的配额。
-u:检查用户配额。
-v:显示检查时产生的信息。
5、修改系统的启动脚本,让系统启动时自动执行配额检查并启动配额功能。系统的启动脚本为/etc/rc.d/rc.local,在rc.local文件末尾加入以下语句:
/sbin/quotacheck -avug
/sbin/quoaon -auvg
重启系统让脚本生效。也可手工执行一遍以上命令。
6、设置用户配额。
edquota [参数][用户名或组名]
参数选项:
-u:修改用户的配额。
-a:修改组的配额。
-t:修改缓冲延时。
例如:#edquota -u test
Edit block and inode quota for user test:
Device /dev/hda3(/mnt/disk1):
Used 0KB,limits :soft=0 hard=0
Used 0 inodes,limits:soft=0 hard=0
~
“Used 0KB”是用户已经使用的磁盘块数,“limits:soft”是软配额,“hard”是硬配额,“used inodes”是用户已经使用的文件数(inode数)
(1)软配额:用户所使用的磁盘块数或文件数到之一配额后,系统会警告,但仍允许继续使用。
(2)硬配额:用户所使用的磁盘块数或文件数到之一配额后,系统不允许用户继续使用。
(3)缓冲延时:用户使用的磁盘块数或文件数达到软配额后,仍允许用户继续使用的时间。如果延时到达,用户将不被允许使用磁盘了。
例如:
#edquota -t
Edit grace times for user quota:
Device /dev/hda3(/mnt/disk1):
Block grace:7days Inode grace:7days
~
其中,Block grace:7days 表示磁盘块数的缓冲延时;Inode grace:7days 表示文件数的缓冲延时
7、关闭和打开磁盘配额功能
quotaoff -a 文件系统-----关闭功能
-a:关闭所有已安装了并且配置了配额的文件系统的配额功能
quotaon[参数]文件系统-----打开文件系统磁盘配额功能
8、其他命令
repquota:检查磁盘空间限制的状态。repquota [-aguv][文件系统...]
执行repquota指令,可报告磁盘空间限制的状况,清楚得知每位用户或每个群组已使用多少空间。
参 数:
-a 列出在/etc/fstab文件里,有加入quota设置的分区的使用状况,包括用户和群组。
-g 列出所有群组的磁盘空间限制。
-u 列出所有用户的磁盘空间限制。
-v 显示该用户或群组的所有空间限制。
setquota:设置磁盘配额或时间限制
setquota [ -u|-g ] 装载点 软块数 硬块数 软文件数 硬文件数 用户名/组名