前言:quota是用来给每个用户或者是每一个用户组分配一定的空间,避免公平的使用空间。

内容:

  1. quota的一般用途,

  2. a)        WWW server,例如:每个人的网页的容量限制

  3. b)        Mail server,例如:每个人的邮件空间限制。

  4. c)        File server,例如:每个人可用的网络硬盘空间。

除了以上的服务之外对于linux系统的主机有一下的用途

1)  限制某一个足轻的最大磁盘配额。

2)  限制用户的最大磁盘配额

3)  Link的凡是,为邮件做配额。

  1. 谈谈quota的使用限制

1)  针对整个filesystem

2)  核心必须支持quota

3)  quota的记录文件:在2.6.xx以后的核心版本上默认的但文件都是aquota.useraquota.group

4)  只是对一般的用户有作用,例如root就没有用。

  1. 说说quota可以配置的几个内容

1)  容量限制或文件数限制(blockinode

  1. Block可是限制文件的大小

  2. Inode就是限制文件个数。

2)  柔性劝导和硬性规定(softhard

Soft:就是超过之后还能用,但是有宽限时间,如果超过就会锁住用户的磁盘使用权。

Hard:就是坚决不能超过的额度。

3)  会倒计时宽限时间(gracetime

默认是7天,这个可以改动,如果超过这个时间,那么soft的值就会变成hard的值作为限制。

  1. 说说具体的配置命令吧。

  2. 将文件系统挂载,指出quota

  3. a)        注意:此处的挂载要用一些属性:例如:mount –o remount,defaults,usrquota,grpquota /home 这里是临时使用,如果长久的使用,那么就将其写入到/etc/fstab.写入到/etc/fstab之后要检查是不是有错误,mount -a

  4. 建立quota记录文件。

  5. a)        quotacheck quotachek命令是可以生成quota的记录文件,quota的基本原理:quota分析整个文件系统所有使用者和组的文件综述和总容量,再将这些数据记录在文件系统的最顶层,然后在该记录文件中使用账号或者是群组的限制区规范磁盘。

  6. b)        quotacheck的基本用法:

-a 扫描/etc/mtab (这个文件中有对所有的文件系统的描述,这里只是对有quota属性的文件)这个可以后面不用加挂载点。

-u 只对用户使用quota 会建立quota.user

-g同上

-v 显示过程信息。

-f 强制扫描,写入新的quota配置文件,这个会毁掉原先的配置文件。

-M 强制用读写的方式扫描文件系统。

         3 quotaon 启动quota命令

         -u针对使用者启动quotaquota.user

         -g:同上

         -v显示过程信息

         -a根据/etc/mtab

         注意:这个命令只需要第一次执行就行了,未来都会/etc/rc.d/rc.sysinit初始化脚本帮你搞定。

  1. quotaoff关闭quota服务

  2. c)        –a :同上

  3. d)        –u :关闭user quota后面跟上挂载点

  4. e)        –g :关闭groupquota

  5. edquota:编辑账号/群组的限制和宽限时间

-u 更改用户 edquota –u user_name [-g groupname]

-g 同上

-t 改时间的

-p 复制范本的,edquota –o old –u new

注意:此处soft/hard的值为0就表示没有限制。

5.quota限制值报表

-u 后面接username 表示出用户的quota 不加username显示本用户的

-g 同上

-v 显示每个用户的

-s M之类的单位

6.repquota.针对文件系统的配额报表

-a 按照/etc/mtab

-v 显示详细信息

-u显示用户的

-g显示群组的

-s MG之类的表示。

7.管理

warnquota:对超过限额的发出警告信。可以根据/etc/warnquota.conf设定可以通过/etc/cron.daily/warnquota文件写入/usr/sbin/warnquota 那么每天早上4:02 就可以被执行。

8.说一个不动现在的文件系统就能完成quota的实例。

想一想,如果你的主机原先没有想到要设定成为邮件主机,所以并没有规划将邮件信箱所在的 /var/spool/mail/  独立成为一个partition,然后目前你的主机已经没有办法新新增或者分割出新的分割槽了。那我们知道quota 是针对整个filesystem 进行设计的,因此,你是否就无法针对 mail 的使用量给予quota 的限制呢?

此外,如果你想要让使用者的邮件信箱与家目录的总体磁盘使用量为固定,那又该如何是好?由于/home /var/spool/mail 根本丌可能是同一个filesystem (除非是都不分割,使用根目录,才有可能整合在一起) ,所以,该如何迚行这样的 quota 限制呢?其实没有那么难啦!既然quota 是针对整个filesystem 来进行限制,假设你又已经有/home 这个独立的分割槽了,那么你只要:

  1.  /var/spool/mail 这个目录完整的移到/home底下;

   2.利用 ln -s /home/mail /var/spool/mail 来建立链接数据;

   3./home 迚行quota 限额设定

只要这样的一个小步骤,嘿嘿!您家主机的邮件就有一定的限额啰!弼然啰!您也可以依据不同的使用者与群组来设定 quota 然后同样的以上面的方式来进行 link动作!嘿嘿嘿!就有不同的限额针对不同的使用者提出啰!很方便吧! ^_^

9.说一下写quota脚本中要用到的两种方法

如果要建立大量的账号,并要所有的用户建立就给予quota,有两种方法

  1. 先建立原始quota账号,然后edquota –p old –n new写入script中;

  2. 直接setquota 建立用户的quota设定值。

Setquota用法:setquota –u user1 100000 5000000 0 0 /home