概述
- 在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)