Linux学习—CentOS7磁盘配额工具quota

磁盘配额——Linux做为一个多用户的操做系统,实际生活中会发生多人共同使用一个磁盘的状况,,为了保证一个磁盘的有效利用,必须对磁盘进行使用率的限制,所以磁盘配额(quota)会是一个很是有用的工具node



目录centos

  • quota的使用限制bash

  • quota的设置内容(xfs)app

  • 使用quota的案例(重点)ide


1、quota的使用限制
工具

    对EXT系列文件系统,quota仅能针对整个文件系统进行设计,没法对单一的目录进行磁盘配额;而在xfs的文件系统中,可使用quota对目录进行磁盘配额,所以在进行磁盘配额前,必定要对文件系统进行检查。centos7

    核心必须支持quota,centos7默认支持quota功能。spa

    只对通常用户有效,由于root拥有所有的磁盘空间。操作系统

    若启用SELinux功能,不是全部的目录都能设定quota,默认quota仅能对/home进行设定。设计


2、quota的设置内容(xfs)

    分别针对用户、群组、个别目录(user,group,project)进行磁盘配额

    限制inode和block的用量,既然quota是管理文件系统的,那么对inode和block的限制也在情理之中

    soft/hard,表示具体限制的数值大小,当磁盘容量达到soft时,系统会发出警告,要求下降至soft值如下,当达到hard时,系统会禁止继续增长新的文件。

    宽限时间(通常为7天),当某一用户使用磁盘容量达到soft时,系统会给出一个grace time,若超过这个天数,soft值会变成hard值并禁止该用户对磁盘增长新的文件


3、使用quota的案例

    ①编写脚本/app/bin/adduser.sh,建立用户myquota1,myquota2,myquota3,myquota4,myquota5,密码都为centos。都位于myquotagrp这个组。这五个用户有一个共享目录/app/home/myquota,而且只有myquotagrp这个组的全部成员对这个共享目录拥有所有权限,其余人没有任何权限。

  1 #!/bin/bash
  2 groupadd myquotagrp
  3 for num in {1..5}
  4 do
  5     useradd -d /app/home/myquota$num -G myquotagrp myquota$num
  6     echo "centos" |passwd --stdin myquota$num
  7 done
  8 mkdir /app/myquota
  9 chgrp myquotagrp /app/myquota
 10 chmod 2770 /app/myquota

查看效果以下:

blob.png

    ②对文件系统进行检测并开启文件系统支持

    因为centos7默认是xfs文件系统而且内核支持quota功能,因此用centos7的/app目录进行试验,

blob.png

    对于xfs文件系统,因为quota功能在挂载一开始就决定了,因此mount命令的-o remount选项不能生效,只能经过修改/etc/fstab文件进行quota功能的开启,而后卸载(umount /app)再从新挂载(mount /app), 修改内容以下:

blob.png

    针对quota主要有三个类别设置

        ·usrquota    用户

        ·grpquota    群组

        ·prjquota    单一目录,可是不能和grpquota同时存在

    ③观察quota的管理数据

    咱们先来看这条指令:xfs_quota

    xfs_quota -x -c "command" [挂载点]

        -x    专家模式,后续才能够跟-c选项

          -c    后边跟命令

        command: print    简单列出主机内文件系统的信息

                  df       和原来的df命令的同样,可是比原来的df显示的数值更加精确

                  report   后边必须跟支持quota的载入点,列出quota的项目设置

                           report后能够跟-u -g -p -i -b -h等选项

blob.png

后面跟-u -g -p的话值显示相对应的信息,而不是全部user/group/project列出来,-i显示inode的使用状况,-h表示以人们便于阅读的单位(例如KB,MB等)

                  state    列出支持quota功能的文件系统的quota状态(user/group/project的开启状态

    ④设置限制值的大小

    设置myquota1,myquota2,myquota3,myquota4,myquota5的soft/hard为250M/300M限制,grace time设置为14天。

xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota1" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota2" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota3" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota4" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota5" /app
xfs_quota -x -c "timer -u -b 14days" /app

设置以后的状态:

blob.png

blob.png

以后切到myquota1用户实验限额结果:

blob.png

在家目录下建立310M的文件,显示报错,同时查看家目录下新建立的文件的大小实际是300M

    

    ⑤对project的限制(/app/myquota目录的限制)

        第一步:设定目录,项目名称(project),项目ID

                其中须要配置两个相关的文件/etc/projects,/etc/projid(默认没有这两个文件,须要建立,若是文件名出错后边的会失败)

echo "11:/app/myquota" > /etc/projects  #设置项目ID和目录的对应关系
echo "myquotaproject:11" > /etc/projid  #设置项目名称和项目ID的对应关系
xfs_quota -x -c "project -s myquotaproject"  #初始化项目名称

blob.png

        第二步:对目录设定具体限制值,将/app/myquota设置为450M/500M

xfs_quota -x -c "limit -p bsoft=450M bhard=500M myquotaproject" /app

 blob.png

相关文章
相关标签/搜索