29.CentOS7版本-quota高级文件系统

1.xfs_quota能做什么? 

限制用户和组的容量限制和文件数量限制(block和inode)

限制block就限制了用户可以使用的磁盘容量,限制inode就可以限制用户新建的文件数量。

限制某一目录的最大磁盘配额(directory project)

2.磁盘配额实战

第一步:准备工作

添加新的硬盘或分区,进行格式化挂载

     (1) fdisk  -l    #查看新硬盘      

     (2)gdisk /dev/sdb  #进行分区 然后 ls  /dev/sdb*  查看一下  

     (3)mkfs.xfs  /dev/sdb1 #写入文件系统

     (4)mkdir  /disk1 #创建挂载点目录/disk1

第二步:挂载并开启磁盘配额

mount  -o  remount,usrquota,grpquota,prjquota  /dev/sdb1 /disk1/

  #挂载并且开启磁盘配额

xfs_quota -x -c “state” /disk1  查看一下是否为ON开启

mount  |  grep  sdb1  #查看是否有usrquota,grpquota,prjquota

df  -h 查看挂载

开启磁盘配额方法二:vim  /dev/fstable  #打开配置文件

第三步:xfs_quota -x -c “print”  #查看有哪些分区开启了磁盘配额

第四步:创建用户和组

     (1)useradd  hf01  和     useradd  hf02  #创建用户hf01和hf02

     (2)groupadd  xxhf   #创建组xxhf

     (3)echo “123” | passwd --stdin hf01  #依次给hf01和hf02用户设置密码

     (4)gpasswd  -a  hf01  xxhf  #依次将hf01和hf02用户加入xxhf组内

第五步:授权

chmod  777  /disk1

第六步:用户测试

(1)用用户hf01登录进行测试:

(2)用root用户进行限制block:

xfs_quota -x -c “limit -u bsoft=50M bhard=100M hf01” /disk1/

(3)用xfs_quota -x -c “report -ubih” /disk1/查看限制

(4)用root用户进行限制inold:

xfs_quota -x -c “limit -u isoft=3 ihard=5 hf01” /disk1/

(5)用xfs_quota -x -c “report -ubih” /disk1/查看限制

(6)用dd  if=/dev/zero  of=/disk1/u1  bs=1M  count= 50

    和touch  /disk1/文件名  来进行实验  

(7)随时用ll -h  /disk1/进行查看文件数据大小和文件名数量

随时用xfs_quota -x -c “report -ubih” /disk1/查看记录的变化和磁盘配额限制

edquota  -p  hf01  -u  hf02  #将用户1的磁盘配额限制复制给用户2继续用用户2做实验

第七步:对组进行限制测试

(1)将用户hf01和hf02创建的文件都删除干净

(2)切换到用户1后:newgrp  xxhf  将其当前所属组改为xxhf,用id命令查看

(3)切换到用户2后:newgrp  xxhf  将其当前所属组改为xxhf,用id命令查看

(4)对xxhf组设置限制:建议硬限制大于单个用户,小于用户1+用户2的限制

(5)用root用户进行限制:

xfs_quota -x -c “limit -g bsoft=80M bhard=150M xxhf” /disk1/

xfs_quota -x -c “limit -g isoft=3 ihard=5 xxhf” /disk1/

(6)随时用ll -h  /disk1/进行查看文件数据大小和文件名数量

(7)随时用xfs_quota -x -c “report -gbih” /disk1/查看记录的变化和磁盘配额限制

第八步:对目录进行限制

    project可以实现对目录进行磁盘配额的限制,但是在进行限制的时候一定要注意。目录的磁盘配额和组的磁盘配额在 Centos7早期版本不能够同时开启在挂载的时候,如果同时指定grpquota和prjquota的话就会有报错信息。避免的两种限 制同时存在的情况(Centos7.6可以同时开启usr、grp、prj)

创建一个子目录:mkdir /disk1/test1/   并且ls  /disk1/ 查看一下

生成两个配置文件:

echo "12:/disk1/test1" >> /etc/projects

          echo "myprj:12" >> /etc/projid

(3) xfs_quota -x -c “project -s myprj” 

(4)xfs_quota -x -c “print”#查看挂载点来限制

(5)xfs_quota -x -c “report -pbih” /disk1 #查看一下myprj限制(空)

(6)对/disk1下的子目录进行限制:

限制block:  xfs_quota -x -c “limit -p bsoft=50M bhard=100M myprj” /disk1/

限制inold:  xfs_quota -x -c “limit -p isoft=3  bhard=5  myprj” /disk1/

(7)xfs_quota -x -c “report -pbih” /disk1 #重新查看一下myprj限制,发现已生效。建议先增大或者取消用户和组的限制在 进 行目录实验

(8)通过用dd  if=/dev/zero  of=/disk1/test1/r1  bs=1M  count= 50

和touch  /disk1/test/文件名  来进行实验

(9)随时用ll -h  /disk1/test1/文件名   #进行查看文件数据大小和文件名数量

(10)随时用xfs_quota -x -c “report -pbih” /disk1/查看记录的变化和磁盘配额限制

注:warnquota:可以对超出磁盘配额的用户发送邮件进行提示。

yum安装包名称为:quota-warnquota

在安装之后需要执行quota-warnquota -c /etc/warnquota.conf命令,可以指定用户检查是否超出磁盘配额,并给超出的用户和root用户发送邮件。

猜你喜欢

转载自blog.csdn.net/weixin_46659843/article/details/123071966