XFS文件系统中quota的使用
概述
- 在xfs文件系统中,使用quota可以针对用户、群组、文件夹进行磁盘限额;
- 在限额的操作中,使用最多的命令就是
xfs_quota -x -c
; - quota的限制是针对文件系统的,跨文件系统是无法实现quota的;
- quota的使用应该尽量避免在根目录下使用,如果前期为规划文件系统,后期需要对某个目录进行限额,可以将原目录完整的移动到/home下,然后利用
ln -s /home/dir /old/dir
创建一个软连接,在/home下对文件夹进行限额
1,编辑/etc/fstab
# /etc/fstab # Created by anaconda on Wed Aug 12 08:08:59 2020 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/centos-root / xfs defaults 0 0 UUID=4fe7f90d-841f-4aa0-8190-a796e82cbbca /boot xfs defaults 0 0 /dev/mapper/centos-swap swap swap defaults 0 0 /dev/sdc1 /mnt/Movie xfs defaults,usrquota,grpquota 0 0 #加入,usrquota,grpquota
2,重新挂载分区,显示红色部分证明已经开启了配额功能
[root@vm7 ~]# mount|grep Movie /dev/sdc1 on /mnt/Movie type xfs (rw,relatime,attr2,inode64,usrquota,grpquota)
3,使用xfs_quota命令查看quota报告
xfs_quota命令格式xfs_quota -x -c "comm" [mount_dir]
-x
专家模式,只有使用了该参数,才能使用-c
指定命令-
-c
指定命令
print
列出目前主机内的文件系统参数等数据df
与系统的df
命令一样report
列出目前的quota项目,有ugr(user/group/project)及bi等数据state
说明目前支持quota的文件系统的信息
u > 用户user g > 组group i > inode限制数量 b > block限制大小 h > 人性化human p > 对象proj
4,限额设置
限额用户和用户组
限额的命令格式xfs_quota -x -c "limit [-ug] b[soft|hard]=N i[soft|hard]=N name" /dev/sdc1
limit
指定限定的项目,可以针对user和group限制bsoft|bhard
isoft|ihard
block(磁盘容量)和inode(文件数量)的hard与soft值 通常hard要比soft限额高,hard表示使用者的用量绝对不会超过这个限额;soft表示在使用者低于限额可以正常使用,若高于soft低于hard,每次登陆系统时,系统会主动发送磁盘即将爆满的警告,并且会有一个宽限时间grace time,如果在grace time时间内不进行任何磁盘关联,soft会取代hard值,达到hard值后,磁盘使用权将会被锁住无法新增文件
xfs_quota -x -c "limit -u bsoft=200M bhard=300M user1" /home # 限定用户user xfs_quota -x -c "limit -g bsoft=500M bhard=600M user1" /home # 限定用户组user1
xfs_quota -x -c "timer -u -b 7days" # 设定用户宽限时间为7天 xfs_quota -x -c "timer -g -b 7days" # 设定用户组宽限时间为7天
5,针对用户或组单独配置限额
[root@vm7 ~]# edquota -u user #针对用户user配置
[root@vm7 ~]# edquota -g user #针对用户组user配置
6,查看限额信息 repquota命令
参数说明:
- -a 列出在/etc/fstab文件里,有加入quota设置的分区的使用状况,包括用户和群组。
- -g 列出所有群组的磁盘空间限制。
- -u 列出所有用户的磁盘空间限制。
- -v 显示该用户或群组的所有空间限制。
[root@vm7 ~]# repquota -avup *** Report for user quotas on device /dev/sdc1 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 0 0 0 0 2 0 0 0 user -- 36 0 0 0 2 0 0 0 user1 -- 18484 0 0 0 13 0 0 0 user2 -- 4 0 0 0 2 0 0 0 *** Status for user quotas on device /dev/sdc1 Accounting: ON; Enforcement: ON Inode: #67 (2 blocks, 2 extents)