5382091F7164FB61A429D9465EA9FA39.jpg

基于用户的磁盘限额和基于组的磁盘限额(usrquota grpquota)
在做磁盘限额的时候是基于文件系统做的,所以要给用户家目录做磁盘年限额的话首先要看
/home 所在的分区是独立分区还是挂载到了根下,如果在根下,就得对整个根来做磁盘限额,
如果是独立分区,只需要在独立分区上做就可以了.

独立分区的/home 家目录的用户usrquota 的磁盘配额:

查看一下挂载情况 :/home 分区是/dev/sda5
查看一下系统当前所用的内核,在查看一下所用内核是否支持磁盘限额
uname -r
grep -i quota /boot/config...
要做磁盘限额首先要熟悉fstab 文件,修改fstab 中的/home,使其支持quota
:defaults,usrquota,grpquota
重新挂载文件系统(/home),查看/dev/sda5 是否已经支持磁盘配额
重新挂载:如根目录的特殊性(需要重启),使用mount -o remount / 或者mount -o
remount usrquota / (重启失效,先要写入fstab 文件中),就不用我们去重启系统也可
以使其生效了
生成配额文件,quotacheck -cum /dev/sda5 ——> u:是指usrquota(可以省略,缺省为u)
注释:quotacheck [-avugfM] 系统文件
选项与参数:
-u :针对用户扫瞄档案不目弽的使用情况,会建立aquota.user
-g :针对群组扫瞄档案不目弽的使用情况,会建立aquota.group
-v :显示扫瞄过程的信息;
-f :强制扫瞄文件系统,并写入新的quota 配置文件(危险)
-M :强制以读写的方式扫瞄文件系统,只有在特殊情况下才会使用。
quotacheck -cum /dev/sda5
ls
查看一下生成的配额文见aquota.user,数据库格式
生成配额文件之后默认并没有开启配额功能,需要开启,先查看一下当前状态
如下:/home 的usrquota 还是off 状态;
也可以使用这条命令查看: quotaon -p /dev/sda5
开启usrquota 的磁盘限额;# quotaon -uv /dev/sda5 没有加-u 的参数
注释:quotaon [-vug] [/mount_point]
选项与参数:
-u :针对使用者启动quota (aquota.user)
-g :针对群组启动quota (aquota.group)
-v :显示启动过程的相关讯息;
-a :根据/etc/mtab 内的filesystem 设定启动有关的quota,若不加-a 的话,
则后面就需要加上特定的那个filesystem 的!
quotaon -uv /home 开启/home 下用户的磁盘限额
quotaon -auvg 开启所有执行磁盘限额文件系统用户和组的磁盘限额
关系磁盘限额的功能正好和这个相反,使用quotaoff 来执行
quota /dev/sda5
再看一下状态,是否启用成功
quota -p /dev/sda5
为用户qy配置磁盘限额,大小的限制以KB 为单位,blocks、inodes 不用修改,默认就好
先来做基于文件大小的限制,给用户qy软限制为8M,硬限制为10M
测试,切换到qy用户,进行测试看看磁盘配额有没有生效
可以查看针对自己磁盘配额
su qy
quota
默认我在自己的家目录下,我依次写入大小3M 的文件4 次,看看效果
执行以下命令3 次,生成,每次都修改一下文件名,以免重复
解释:dd if=/dev/zero bs=3M count=1 of=test bs=不加单位的话是以字节计算,count
则是次数,这个命令的含义就是:每次写入3M 大小,写1 次在当前目录下生成3M 大的test文件
repquota :针对文件系统的限额做报表(只有root 才可以执行查看)
注释:repquota -a [-vugs]
选顷不参数:
-a :直接到/etc/mtab 搜寻具有quota 标志的filesystem ,幵报告quota 的
结果;
-v :输出的数据将吨有filesystem 相关的绅部信息;
-u :显示出用户的quota 限值(这是默讣值);
-g :显示出个别群组的quota 限值。
博客地址:http://wqmsl.blog.51cto.com
-s :使用M, G 为单位显示结果
repquota -auvs
warnquota :对超过限额的用户发出警告信
注释:warnquota 字面上的含义就是quota 的警告(warn) !它可以依据
/etc/warnquota.conf 的设定,然后找出目前系统上面quota 用量超过soft (就是有
grace time 出现的那用户) 的用户账号,通过email 发送警告信到用户的电子邮件信箱。
warnquota 不会自动执行,需要我们手动去执行它。光执行『warnquota 』之后,他会发
送两封信出去, 一封给超过软限制的用户一封给root
只有root 执行了warnquota 命令才会给超过软限制的用户发送邮件,试想一下,这样是不
是很不合适呢,所以我们得让其自动执行,那就是计划任务
先看一下warnquota 这个命令在哪里
which warnquota
把计划任务添加到每天4:00 执行的任务中,注意要有可执行权限,
这样系统每天凌晨4:00 就会执行这个任务,自动给超过软限制的用户发送邮件
在cron,daily新加warnquota
写入:/usr/bin/warnquota
继续往里面写东西,看看到了硬限制之后有没有提示
当\再写的时候已经提示了,磁盘超出限额
但是并不是说就完全写不进去了,还有一部分能写进去

setquota :直接用命令设定quota 磁盘限额
注释:edquota 是呼叫vi 进行行讴定,setquota 直接由命令输入所须要的各项限制值得
到的
用命令行的方式给qy设定磁盘限额
setquota -u qy 7000 9000 0 0 /home
切换到qy下查看
su qy
quota

为组做限额
和用户的是一样的
生成组限制文件
[root@localhost /]# quotacheck -cmg /
为组启用quota
[root@localhost /]# quotaon -g /
为组做限额分配大小
[root@localhost /]# edquota -g quota(组名)
注意:这里的组要是基于主组的创建的文件要属于磁盘配额的用户组
如果你限制的对象是附属组,那么是不生效的,只有文件所属组为你限制的组的时候才会生

文件个数的限制
这个和限制大小一样,修改如下的内容就可以了
档案数量(inodes):这是quota 自己算出来的,单位为个数,不要更改此项;
soft:inode 的soft 限制值,以个数为单位;
hard:inode 的hard 限制值,以个数为单位;
修改完这个就可以了,当你写入的文件数量超过了硬限制的数量,那么就会禁止你再往里写
文件了

单用户文件系统的限额做报表
注释:uota [-uvs] [username]
quota [-gvs] [groupname]
选项与参数:
-u :后面可以接username ,表示显示出该用户的quota 限制值。若不接username ,
表示显示出执行此命令用户的quota 限制值。
-g :后面可接groupname ,表示显示出该群组的quota 限制值。
-v :显示每个用户在filesystem 的quota 值;
-s :使用1024 为倍数来指定单位,会显示如M 之类的单位!
直接使用quota 去显示出qy不test的限额
例如:quota -uvs qy test

宽限时间(grace time):
命令edquota -t 去修改宽限时间,系统默认是7 天,
edquota -p 范本账号-u 新账号——> 给所有的用户相同的限制
edquota -p qy-u test
test用户的配额和qy是一样的

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

Captcha Code