返回列表 发帖

CentOS8_磁盘分区管理(磁盘配额)

笺注:这是在 CentOS8_磁盘分区管理 的基础上进行的。

在linux中我们只能使用超级管理员root用户进行磁盘配额的设置,并且磁盘配额是基于文件系统(挂载分区)的,也就是必须在文件系统上配置磁盘配额。

可以对用户或组的所能使用的空间大小或是创建的文件、文件夹个数进行限制。限制可以分为两种:      
    1,软限制:当用户或组所分配的空间占满以后,在一定的宽限期内可以超出容量但是系统会给处警告,并在宽限期过后强制收回空间。   
    2,硬限制:当用户或组所分配的空间占满以后,就不能再添加数据。


关闭SELinux:
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config




创建组、用户:
[root@centos8 ~]# groupadd team1
[root@centos8 ~]# useradd -g team1 zhuohua
[root@centos8 ~]# echo '888' |passwd --stdin zhuohua
更改用户 zhuohua 的密码 。
passwd:所有的身份验证令牌已经成功更新。



安装quota软件:
yum -y install quota




给文件系统设置磁盘配额功能,并且每次开机都自动挂载:
[root@centos8 ~]# vi /etc/fstab
/dev/nvme0n2p1    /office   xfs defaults,usrquota,grpquota 0 0


重启服务器前:
[root@centos8 ~]# mount |grep /dev/nvme0n2
/dev/nvme0n2p1 on /office type xfs (rw,relatime,attr2,inode64,noquota)


重启服务器后:( usrquota,grpquota
图片1.png
2020-4-4 15:01




启动文件系统的磁盘配额功能:
quotaon -ugv /office/


设置开机自动启动文件系统的磁盘配额功能:
echo 'quotaon -ugv /office/' >> /etc/rc.d/rc.local

若以下命令若不加,Centos7、8不会开机执行:
chmod a+x /etc/rc.d/rc.local




#####
编辑某个组的配额设置:
[root@centos8 ~]# edquota -g team1
假设,team1对目录 /office 的配额为:磁盘容量软限制20M(单位为KB),硬限制为30M
图片2.png
2020-4-4 15:02



###
编辑某个用户的配额设置: (用户的配额必须少于该组的配额)
[root@centos8 ~]# edquota -u zhuohua
假设,用户zhuohua对目录 /office 的配额:磁盘容量软限制8M,硬限制为10M
图片4.png
2020-4-4 15:02






磁盘容量的配额大小测试的方法:
假设,用户zhuohua向目录 /office/ 下写入一个名为ddtest1的测试文件,大小为8M(分8次写入,每次1MB),复制来源为设备文件/dev/zero
dd if=/dev/zero of=/office/ddtest1 bs=1M count=8

图片5.png
2020-4-4 15:02




超出磁盘限额的效果:
图片6.png
2020-4-4 15:03



备注:测试的目录要有权限写入
[root@centos8 ~]# chmod -R 777 /office/







#####

查看某个组的配额使用情况:(blocks为此组已经使用的空间大小)
quota -g team1
图片7.png
2020-4-4 15:03




查看某个用户的配额使用情况:(blocks为此用户已经使用的空间大小)
quota -u zhuohua
图片8.png
2020-4-4 15:03

返回列表