Quota就字面上的意思看,就是有多少"限额"的意思。什么是Quota在Linux系统中,由于是多用户、多任务的环境,所以会有多用户共同使用一个硬盘空间的情况发生,如果其中有少数几个用户大量占掉了硬盘
Quota就字面上的意思看,就是有多少"限额"的意思。
什么是Quota
在Linux系统中,由于是多用户、多任务的环境,所以会有多用户共同使用一个硬盘空间的情况发生,如果其中有少数几个用户大量占掉了硬盘空间的话,那肯定影响其他用户的使用权限。因此管理员应该适当限制硬盘的空间给用户,以妥善分配系统资源。
如果想要磁盘的容量公平分配,这个时候就要靠quota的帮忙。
Quota的一般用途
- quota比较常用的几种情况是:
- 针对www server,例如:每个人的网页空间的容量限制!
- 针对mail server,例如:每个人的邮件空间限制。
- 针对file server,例如:每个人最大的可用网络硬盘空间(教学环境中最常见)
- 如果针对Linux系统主机上面的设置,用途有下面这些:
限制某一用户组所能使用的最大磁盘配额(使用用户组限制)
可以将你的主机上用户分门别类,有点像是目前很流行的收费于免费会员制的情况,你比较喜好的那一群的使用配额就可以分配高一些。
限制某一用户的最大磁盘配额(使用用户限制)
在限制了用户组之后,你页可以再继续针对个人来进行限制,使得同一用户组之下还可以有更公平的分配。
以Link的方式来使邮件可以作为限制的配额(更改/var/spool/mail这个路径)
直接使用Link的方式指向/home(或者其他已经做好的quota磁盘)就可以。这通常是用于原本磁盘分区的规划不好但是却又不想要更改原有主机架构时。
- quota比较常用的几种情况是:
Quota的使用限制
- 虽然quota很好用,但是使用上还是有些限制要先了解的:
仅能针对整个文件系统
quota实际再运行的时候,是针对整个文件系统进行限制的。
内核必须支持quota
Linux内核必须有支持quota整个功能才行:如果你使用CentOS 5.x的默认内核,那么恭喜你了,你的系统已经默认有支持quota整个功能。如果你是自行编译内核的,那么请特别留意你是否已经"真的"打开了quota这个功能。
Quota的日志文件
kernel 2.6.xx的内核版本,这个内核版本支持新的quota模块,使用的默认文件(aquota.user,aquota.group)将不同于旧版的quota.user,quota.group(多了一个a),而由旧版本的quota可以通过converquota这个程序来转换。
只针对一般身份用户有效
不是所有Linux上面的账号都可以设置quota,例如root就补能设置quota,因为整个系统所有的数据几乎都是它的。所以,不能针对某个目录来进行Quota的设计,但是你可以针对某个文件系统来设置。
- 虽然quota很好用,但是使用上还是有些限制要先了解的:
Quota的规范设置选项
quota针对整个文件系统的限制项目分为下面几个部分:
- 容量限制或者文件数量限制(block或inode)
- 限制inode用量:管理用户可以新建的"文件数量";
- 限制block用量:管理用户磁盘容量的限制,较常见的为这种方式
- 容量限制或者文件数量限制(block或inode)
soft/hard
- hard:表示用户的用量绝对不会超过这个限制值,若超过这个值则系统会锁住该用户的磁盘使用权;
- soft:表示用户在低于soft限值时,可以正常使用磁盘,但若超过soft且低于hard的限值,每次用户登录系统时,系统会主动发出磁盘即将爆满的警告逆袭,且会给予一个宽限时间(gracetime)。不过,若用户在宽限时间倒数期间就将容量再次降低soft限值之下,则宽限时间会停止。
会倒计时的宽限时间(gracetime)
一般默认的宽限时间为7天,如果7天你都不进行任何磁盘管理,那么soft限制值会即刻替代hard限值来作为quota的限制。