配置用户对磁盘进行指定大小或者文件数量的使用权限。
1)用户配额和组配额
2)磁盘容量限制和文件个数限制
3)软限制和硬限制
4)宽限时间 如果用户的空间占用数处于软限制和硬限制之间,统会在用户登陆时警告用户磁盘将满,这个时间就是宽限时间,默认是 7 天。如果达到了宽限时间,用户的磁盘占用量还超过软限制,那么软限制就会升级为硬限制。
1)查看系统内核必须支持磁盘配额
[root@centos ~]# grep CONfig_QUOTA /boot/config-2.6.32-642.el6.x86_64 CONfig_QUOTA=yCONfig_QUOTA_NETlink_INTERFACE=y# CONfig_QUOTA_DEBUG is not setCONfig_QUOTA_TREE=yCONfig_QUOTACTL=y
2)系统中必须安装了 quota 工具
[root@centos ~]# rpm -qa | grep quotaquota-3.17-23.el6.x86_64
3、磁盘配额实验1)创建测试用户和测试组
[root@centos ~]# useradd love1[root@centos ~]# passwd love1[root@centos ~]# useradd love2[root@centos ~]# passwd love2[root@centos ~]# groupadd test[root@centos ~]# gpasswd -a love1 testAdding user love1 to group test[root@centos ~]# gpasswd -a love2 testAdding user love2 to group test
开启磁盘配额[root@centos ~]# mount -o remount,usrquota,grpquota / # 重新挂载 /,并加入用户和用户组的磁盘配额功能.#如果我们要想永久生效,则需要修改/etc/fstab 文件,[root@centos ~]# vim /etc/fstab /dev/mapper/vg_centos-lv_root / ext4 defaults,grpquota 1 1
3)建立磁盘配额的配置文件
quotacheck [选项] [分区名]选项: -a:扫描/etc/mtab 文件中所有启用磁盘配额功能的分区。如果加入此参数,命令后面就不需要加入分区名了 -c:不管原有的配置文件,重新扫描并建立新的配置文件 -u:建立用户配额的配置文件,也就是生成 aquota.user 文件 -g:建立组配额的配置文件,会生成 aquota.group 文件 -v:显示扫描过程 -m:强制以读写的方式扫描文件系统,和-M 类似。一般扫描根分区时使用。 -f:强制扫描文件系统,并写入新的配置文件。一般扫描新添加的硬盘分区时使用quotacheck -avugm #如果我们自动扫描/分区建立配额配置文件时,因为/分区已经挂载成读写系统,而 quotacheck 需要把分区先挂载成只读分区,然后建立配置文件,最后再挂载回来,所以不能直接在/分区建立配 置文件。这时就需要使用-m 强制以读写方式扫描文件系统了。
建立配额文件[root@centos ~]# ll /total 122-rw------- 1 root root 8192 Dec 5 19:49 aquota.group-rw------- 1 root root 7168 Dec 5 19:49 aquota.user
5)、设置用户和组的配额限制
[root@centos ~]# edquota [选项] [用户名或组名] 选项: -u 用户名: 设定用户配额 -g 组名: 设定组配额 -t: 设定宽限时间 -p: 复制配额限制。如果已经设定好某个用户的配额限制,其他用户的配额限制如果和这个用户相同,那么可以直接复制配额限制,而不用都手工指定。#我们给 love1 用户设定的配额限制是:磁盘空间软限制是 20MB,硬限制是 30MB;文件个数的软限制是 8 个,硬限制是 10 个[root@centos ~]# edquota -u love1disk quotas for user love1 (uID 500):filesystem blocks soft hard inodes soft hard/dev/mapper/vg_centos-lv_root 16 20000 30000 5 8 10再给 love2 用户配置限额,love2 用户要求是空间软限制 250MB,硬限制 250MB,文件个数不做限制[root@centos ~]# edquota -u love2disk quotas for user love2 (uID 501): filesystem blocks soft hard inodes soft hard /dev/mapper/vg_centos-lv_root 16 250000 300000 5 0 0接下来给 test 组配置限额,test 组要求是空间软限制是 450MB,硬限制 500MB,文件个数不做限制disk quotas for group test (gID 502): filesystem blocks soft hard inodes soft hard /dev/mapper/vg_centos-lv_root 0 450000 500000 0 0 0
6)、启动和关闭配额
启动配额[root@centos ~]# quotaon [选项] [分区名] 选项: -a:依据/etc/mtab 文件启动所有的配额分区。如果不加-a,后面就一定要指定分区名 -u:启动用户配额 -g:启动组配额 -v:显示启动过程的信息 [root@centos ~]# quotaon -ugv //dev/mapper/vg_centos-lv_root [/]: group quotas turned on/dev/mapper/vg_centos-lv_root [/]: user quotas turned on[root@localhost ~]# quotaoff [选项] [分区名] 选项 -a:依据/etc/mtab 文件关闭所有的配额分区。如果不加-a,后面就一定要指定分区名 -u:关闭用户配额 -g:关闭组配额 -v:显示启动过程的信息 关闭配额[root@centos ~]# quotaoff -ugv //dev/mapper/vg_centos-lv_root [/]: group quotas turned off/dev/mapper/vg_centos-lv_root [/]: user quotas turned off
7)磁盘配额查询
[root@centos ~]# repquota [选项] [分区名] 选项: -a: 依据/etc/mtab 文件查询配额。如果不加-a 选项,就一定要加分区名 -u: 查询用户配额 -g: 查询组配额 -v: 显示详细信息 -s: 以习惯单位显示容量大小 repquota –augvs
8)测试
[love1@centos ~]$ dd if=/dev/zero of=/home/love1/test/test bs=1M count=60dm-0: warning,user block quota exceeded.dm-0: write Failed,user block limit reached.dd: writing `/home/love1/test/test': disk quota exceeded30+0 records in29+0 records out30699520 bytes (31 MB) copIEd,0.633288 s,48.5 MB/s
9)交互式命令设置
[root@centos ~]# setquota -u 用户名 容量软限制 容量硬限制 个数软限制 个数硬限制 分区名 [root@centos ~]# useradd love3[root@localhost ~]# passwd love3 # 建立用户 [root@localhost ~]# setquota -u love3 10000 20000 5 8 / # 设定用户在 / 分区的容量软限制为 10MB ,硬限制 20MB 。文件个数软限制 5 个,硬限制 #8 个 。
总结 以上是内存溢出为你收集整理的文件系统之磁盘配额全部内容,希望文章能够帮你解决文件系统之磁盘配额所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)