免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3559 | 回复: 19
打印 上一主题 下一主题

磁盘限额!一直在CU索取学习了这么长时间,应该奉献奉献了。希望对初学的朋友有点帮助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-18 20:43 |只看该作者 |倒序浏览
一直在CU索取学习了这么长时间,应该奉献奉献了。希望对初学的朋友有点帮助。高手请略过!

为普通用户和用户组加入磁盘配额限制
Linux的quota程序允许为系统上每一用户或用户组指定所能使用的磁盘配额。使用quota注意以下几点。
1:当前的系统核心支持quota
2:系统已正确安装quota套装程序。
3:老版本的quota仅能工作在ext2类型的文件系统上。
4:必须是单独的挂载点。
如果你当前的系统核心不支持quota,请重新编译你的核心,当系统提示:Quota support(CONFIG-QUOTA)[n]回答y,生成新的系统核心。
一般Linux的发行版本都默然包含了quota支持,也附带了quota套装程序,只需安装quota并加以设置便可以让quota工作.

步骤:
1:编辑/etc/fstab来启动每一个文件系统的配额。
vi /etc/fstab
在需要做磁盘配额的目录上加入usrquota,grpquota
2:重新挂载文件系统。reboot
mount -l 观察是否挂载上
3:创建配额文件,重新生成磁盘用量表。
quotacheck -ug /home   //在/home下生成aquota.user和aquota.group文件
参数:a   检查所有起用了配额的在本地挂载的文件系统
    b    在检查配额过程中显示详细的状态信息
    u    检查用户磁盘配额信息
    g    检查组群磁盘配额信息
4:分配配额。
quotaon -a     //打开磁盘配额

现在假设想给test用户10M的硬盘配额限制,他所拥有的最大文件数不得超过100个。

edquota -u test    //test为用户名
,进入编辑环境,将如下三行:

Quotas for user test:
/dev/hadx: blocks in use14,limits(soft=0, hard=0)
inodes in use: 12, limits (soft=0, hard=0)

改为:
Quotas for user test:
/dev/hdax: blocks in use: 14, limits (soft=10204, hard=10204)
inodes in use: 12, limits (soft=100, hard=100)
其中:
blocks in use:用户已使用块的大小,单位是KB
inodes in use:用户现有文件的大小。
这两项都是系统自动给出,不必改动。
测试:切换到test用户,注意这里一定别忘了用test用户登陆测试,因为root用户是没有限制的。

cp /bin/* /home/test       //拷贝/bin/下所有文件到/home/test下,看磁盘配额有没有生效.


其他参数或命令:quotaon -a 开启quota
              quotaoff -a 关闭quota
              repquota命令用来生成系统上配额使用情况的统计报告。有如下几个参数:          -a:统计所有文件系统的配额使用情况
             -v:统计所有配额的使用情况,没有用到的也要统计
             -g:以用户分组为单位统计配额使用情况
             -u:以用户为单位统计配额使用情况
quota 命令是供用户使用的。这个命令可以让用户查看分配给自己的配额。如下参数:
             -g:给出用户所在分组的配额使用情况
             -u:给出该用户配额使用情况(缺省操作)
             -v:给出支持配额的所有文件系统里与改用户有关的配额使用情况
             -q:如果该用户已经超标,显示一个消息给他。



软限制(soft limits)
     通常设置软限制为一接近硬限制的值,超越此限制时,系统将警告用户将到达最大磁盘配额限制。软限制为0时没有软限制。结合宽限期使用时,只要用户超越了软限制,一过宽限期,任何对磁盘空间的额外需求将被立刻拒绝。

硬限制(hard limits)
     磁盘配额的绝对限制,设置了quota的用户不能超越此限制。

宽限期(Grace Period)
     宽限期是用户超越了软限制而没有达到硬限制时的一段放宽期,在这段时间内,用户可以在硬限制范围内自由地使用磁盘空间,超过这段时间,所有对磁盘空间的额外需求将被拒绝,即使用户还在硬限制之内。宽限期的单位可以是秒,分,时,天。执行edquota -t命令设置宽限期。执行该命令后,将系统提示中的两个0days改成你认为合适的值即可。

    有时想给另一个用户加上同样的限制,比方说,给test1用户加上与test同样的限制。可以这样做:
    edquota -u test1 -p test
      repquota -a
    查看一下
    如果想给一批用户加上同样的限制。比方说给系统所有100个用户加上与test同样的限制。执行如下命令:
    edquota -p test ' awk -F:' $3 499 {print $1}' /etc/passwd'


给用户用户组设置磁盘配额限制与普通拥护类似,假设有一用户组 game,执行
edquota -g game 即可。



一直都在CU看文章,吸取知识。索取就应该奉献啊。给初学LINUX的朋友点帮助,希望能帮到你们。
高手就不要看了!^_^

论坛徽章:
0
2 [报告]
发表于 2006-09-18 20:50 |只看该作者
没人支持
自己顶一下

论坛徽章:
0
3 [报告]
发表于 2006-09-18 20:59 |只看该作者
呵呵,没留意,原来是linux专用

论坛徽章:
0
4 [报告]
发表于 2006-09-18 23:45 |只看该作者

当然是LINUX了

论坛徽章:
0
5 [报告]
发表于 2006-09-19 09:11 |只看该作者
edquota -p test ' awk -F:' $3 499 {print $1}' /etc/passwd'

这句很有实用价值!以前一直不知道edquota搞个-p有啥用。。。

和 /etc/group结合是不是可以针对某个特定组设置QUOTA?

谢谢!

论坛徽章:
0
6 [报告]
发表于 2006-09-19 09:39 |只看该作者
原帖由 rain_forest 于 2006-9-19 09:11 发表
edquota -p test ' awk -F:' $3 499 {print $1}' /etc/passwd'

这句很有实用价值!以前一直不知道edquota搞个-p有啥用。。。

和 /etc/group结合是不是可以针对某个特定组设置QUOTA?

谢谢!



呵呵
领悟能力真高

论坛徽章:
1
午马
日期:2014-06-14 09:08:34
7 [报告]
发表于 2006-09-19 10:14 |只看该作者
好东西现收藏,以后能用得上。谢谢。

论坛徽章:
0
8 [报告]
发表于 2006-09-19 10:22 |只看该作者
原帖由 yjd333 于 2006-9-19 10:14 发表
好东西现收藏,以后能用得上。谢谢。



呵呵
对大家能有点用心理就满足了!!

论坛徽章:
0
9 [报告]
发表于 2006-09-19 10:40 |只看该作者
楼主辛苦了

论坛徽章:
0
10 [报告]
发表于 2006-09-19 10:45 |只看该作者
好,支持一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP