RHAS3上快速实现磁盘配额解决方案

发表于:2007-07-04来源:作者:点击数: 标签:
在多用户的情况下,为了对用户实现个性化管理,不仅从权限进行管理,用户的可用空间或可创建的文件数也往往是需要管理的,否则,可能有些用户把 服务器 当自己备份设备了。 实现用户磁盘使用量的限制就是所谓的磁盘配额(quota), Windows 中也有,似乎更好

  在多用户的情况下,为了对用户实现个性化管理,不仅从权限进行管理,用户的可用空间或可创建的文件数也往往是需要管理的,否则,可能有些用户把服务器当自己备份设备了。
  实现用户磁盘使用量的限制就是所谓的磁盘配额(quota),Windows中也有,似乎更好配置。Linux下的配置应该不太难。
  我常用Redhat Linux ,所以以下的实验都建立在Redhat基础上,相信其他的Linux应该类似。
  (一)Linux配额基础
  Linux中的磁盘配额分为用户配额和组的配额,组的配额是对某组中全体用户的综合限制。
  Linux 中的磁盘配额按是否可有一定的超越又分为软限制(可以超越)和硬限制(禁止超越)
  Linux中的磁盘配额按限制的项目不同,可分为空间限制(blocks 大小)和文件数限制(inodes 个数,与软硬连接无关)。
  (二)Red Hat linux as 3 磁盘配额的实现
  1)修改/etc/fstab中的某文件系统行,在挂载选项中添加usrquota,grpquota,如下一例:/dev/sda5   /mnt/sda5   ext3   defaults,usrquota,grpquota 0 0简单说明:usrquota表示支持用户级配额,grpquota表示支持组级的配额
  2)重新挂载刚才修改的文件系统 ,使其支持配额
  #mount -o remount /dev/sda5
  3)运行quotacheck在支持配额文件系统下生成配额管理文件
  #quotacheck -avug /dev/sda5
  简单说明:a-自动开启挂载文件系统的配额,v-显示信息,u-启用用户配额,g-启用组配额
  4)用edquota完成用户或组配额设置/修改
  #edquota user1 [-f /dev/sda5]
  #edquota -g group1  [-f /dev/sda5]
  简单说明:第一行是设置用户user1的配额限制
  第二行是设置组group1的配额限制
  [-f /dev/sda5]表可选,不选表示在所有启用磁盘配额的系统上使用相同的配额设置,一般不选即可。
  配额格式说明:
  filesystem  blocks  soft hard  inodes soft  hard
  filesystem-正在设置的文件系统,不要修改或删除!
  bolock-当前已经使用的磁盘空间
  soft(第一个)-软磁盘空间限制,可以有7天(默认)的超越,表示用户可以使用的磁盘空间大小,单位为字节
  hard(第一个)-硬配额限制,不能超越,表示用户可以使用的最大磁盘空间,单位为字节
  inodes-当前文件个数
  soft(第二个)-软磁盘空间限制,可以有7天(默认)的超越,表示用户可以创建的文件个数,包括目录,可以有默认七天的超越
  hard(第二个)-硬配额限制,不能超越,表示用户可以创建的文件个数,不能超过。
  5)打开磁盘配额监控进程
  #quotaon -avug [/dev/sda1]
  到此为止,磁盘配额已经完成。那么我们如何知道配额的使用情况呢?
  6)显示磁盘配额使用状态
  #repquota -a 或 repquota /dev/sda1
  #repquota -g -a 或 repquota -a /dev/sda2 (组的配额)
  7)暂时关闭某个文件系统的配额
  #quotaoff -avug 停止所有所有文件系统的用户和组的配额
  8)取消某个文件系统的配额限制
  #quotaoff -vug 文件系统
  #删除/etc/fstab中设置配额的部分
  9)修改软配额的最大超越时间
  #edquota -t [-g] 修改用户/配额软配额超越的最大天数,也就是用户超过soft的限制后,系统允许在设定的时间范围内继续超越。默认是7天好了,能力有限,错误难免,欢迎讨论。
  9)补充说明
  /,/boot/,/proc,/mnt/cdrom等不要使用配额,其实也没用。

原文转自:http://www.ltesting.net