美文网首页
12、磁盘配额quota

12、磁盘配额quota

作者: 崔千易 | 来源:发表于2018-04-12 08:01 被阅读0次

磁盘配额

配额:quota

什么是磁盘配额?   

    限制磁盘资源的使用的。

限制原因就是因为资源不是无限的。

应用场合:

    1、网络存储空间有限 

    2、邮件服务器

    3、公司的文件共享服务器

能限制谁?

    1、限制普通用户

    2、限制用户组

      注意:没有办法限制root的。

能够限制什么?

    inode —— 限制用户创建文件的个数

    block —— 限制用户能够使用的磁盘空间的大小

设置配额的条件?

    需要内核支持quota的功能

    [loring ~]# grep -i quota /boot/config-2.6.32-358.el6.x86_64

        CONFIG_NETFILTER_XT_MATCH_QUOTA=m

        CONFIG_XFS_QUOTA=y

        CONFIG_QUOTA=y    //看到此行表示支持

        CONFIG_QUOTA_NETLINK_INTERFACE=y

        CONFIG_PRINT_QUOTA_WARNING=y

        # CONFIG_QUOTA_DEBUG is not set

        CONFIG_QUOTA_TREE=y

        CONFIG_QUOTACTL=y

如何进行磁盘配额?usrquota,grpquota

    1、首先需要分区开启用户配额和组配额

        创建一个分区并将其格式化

          [loring ~]#  fdisk /dev/sda

          [loring ~]#  partx -a /dev/sda

          [loring ~]#  mkfs.ext4 /dev/sda10     

        将其挂载到系统中的/quota目录

          [loring ~]# mkdir /quota

          [loring ~]# mount -o usrquota,grpquota /dev/sda10 /quota/

        将分区设置为开机自动挂载(可选)

          [loring ~]# vim /etc/fstab

            /dev/sda10      /quota  ext4    defaults,usrquota,grpquota 0 0

  2、创建配额记录文件

        [loring ~]# quotacheck -cugv /quota/

        [loring ~]# ls /quota/          //有如下文件即可

            aquota.group  aquota.user

            -c:--create 创建磁盘配额的配置文件

            -u:--user 针对用户配额的配置文件

            -g:--group 针对组配额的配置文件

            -v:--verbose 详细显示扫描过程中的信息

            -a:--all 检测系统中所有已经挂载的支持quota功能的分区

  3、针对用户和组进行配额

        [loring ~]# useradd quota1

        [loring ~]# useradd quota2

        [loring ~]# useradd -g quota2 quota3   

        [loring ~]# chmod 1777 /quota/      //保证普通用户对/quota目录可写

        例子:限制quota1用户最多使用8M空间或者创建10个文件;当使用空间超过5M或者创建文件超过5个时警告

        [loring ~]# edquota [-u] quota1 [-f /quota]  //编辑方式同vim

            -u:编辑user的quota

-g:编辑group的quota

-t:编辑宽限时间

-p:复制资料到另一个用户上

blocks :现在使用者(quota:uid=5011)在/dev/hda7所使用的空间,单位:KB (不要修改)

soft :soft limit 磁盘空间限定值 单位:KB (需要设定)

hard :hard limit 磁盘空间限定值 单位: KB (需要设定)

inodes :现在使用者使用掉的inodes,由于不容易使用inode控制,所以不要修改他。

soft :soft limit 文档限制数量 (根据需要修改)

hard :hard limit 文档限制数量 (根据需要修改)

soft limit :最低限制容量,在宽限期(grace period)之内,使用容量能够超过soft limit,但必须在宽限期之内将使用容量降低到soft limit以下。

hard limit :最终限制容量,假如使用者在宽限期内继续写入数据,到达hard limit将无法再写入。

宽限时间:使用容量超过soft limit,宽限时间自动启动,使用者将容量降低到soft limit以下,宽限时间自动关闭,假如使用者没有在宽限时间内将容量降低到soft limit,那么他将无法再写入数据,即使使用容量没有到达hard limit

Disk quotas for user quota1 (uid 6668):

  Filesystem                  blocks      soft      hard    inodes    soft    hard

  /dev/sda10                        0      5120      8192          0      5      10

                                                  单位是KB                        单位是个

        (补充:quota -uv quota_name 显示user信息)                           

  4、启动配额  —— 一定要记住这步

        [loring ~]# quotaon /quota/

  5、测试配额

    1)文件个数测试

        [loring ~]# su - quota1

        [quota1@loring ~]$ cd /quota/    //一定要切换到做了配额的目录下再操作

        [quota1@loring quota]$ touch quota1_{1,2,3,4,5,6}  //超过软限制,有警告,但是仍然可以创建quota1_6

            sda10: warning, user file quota exceeded.  //超软限制告警

        [quota1@loring quota]$ ls

            aquota.group  quota1_1  quota1_3  quota1_5

            aquota.user  quota1_2  quota1_4  quota1_6

        [quota1@loring quota]$ touch quota1_{7,8,9,10,11}    //超过硬限制,不能够创建quota1_11文件

            sda10: write failed, user file limit reached.  //超过硬限制的提示信息

            touch: cannot touch `quota1_11': Disk quota exceeded

        [quota1@loring quota]$ ls

            aquota.group  quota1_1  quota1_2  quota1_4  quota1_6  quota1_8

            aquota.user  quota1_10  quota1_3  quota1_5  quota1_7  quota1_9

      2)使用空间测试

        [quota1@loring quota]$ rm -f quota1_*

        [quota1@loring quota]$ dd if=/dev/zero of=quota1_2m bs=2M count=1

        [quota1@loring quota]$ ll

        [quota1@loring quota]$ dd if=/dev/zero of=quota1_4m bs=4M count=1

            sda10: warning, user block quota exceeded.  //超过软限制的警告 

        [quota1@loring quota]$ ll

        [quota1@loring quota]$ dd if=/dev/zero of=quota1_6m bs=6M count=1

            sda10: write failed, user block limit reached.

            dd: writing `quota1_6m': Disk quota exceeded  //超过硬限制

            1+0 records in

            0+0 records out

            2097152 bytes (2.1 MB) copied, 0.0185134 s, 113 MB/s

        [quota1@loring quota]$ ll quo*

            -rw-rw-r-- 1 quota1 quota1 2097152 Aug  8 15:05 quota1_2m

            -rw-rw-r-- 1 quota1 quota1 4194304 Aug  8 15:06 quota1_4m

            -rw-rw-r-- 1 quota1 quota1 2097152 Aug  8 15:07 quota1_6m

              quota1_6m:超过硬限制了,它只会将分配给该用户的剩余空间全部使用,quota1_2m、quota1_4m和quota1_6m三个文件的总空间无法超出8M。

练习:

    设置quota1用户的配额为可以存放3M文件或者6个文件,当到达1M或者创建3个文件时警告

    [loring ~]# edquota quota1   

            Disk quotas for user quota1 (uid 6668):

      Filesystem                  blocks      soft      hard    inodes    soft    hard

      /dev/sda11                    8192      1024      3072          3        3        6

    [loring ~]# su - quota1

    [quota1@loring ~]$ cd /quota/

    [quota1@loring quota]$ rm -f qu*

    [quota1@loring quota]$ ls

        aquota.group  aquota.user

    [quota1@loring quota]$ touch 1 2 3 4

        sda10: warning, user file quota exceeded.

    [quota1@loring quota]$ touch 5 6 7

        sda10: write failed, user file limit reached.

        touch: cannot touch `7': Disk quota exceeded

    [quota1@loring quota]$ ls

        1  2  3  4  5  6  aquota.group  aquota.user

    ---组配额的限制

            edquota -g quota2

关闭配额

    [loring ~]# quotaoff /quota/

查看配额的使用情况(只有root能这么做)

    [loring ~]# repquota -a

        *** Report for user quotas on device /dev/sda10

        Block grace time: 7days; Inode grace time: 7days

                                Block limits                File limits

        User            used    soft    hard  grace    used  soft  hard  grace

        ----------------------------------------------------------------------

        root      --      20      0      0              2    0    0     

        quota1    -+      0    1024    3072              6    3    6  6days

    grace:优雅时间,当超过软限制,优雅时间倒计时为0时,软限制自动提升为硬限制;直到用户将使用空间或文件个数降至软限制以下,才能够继续使用该分区。

        例子:假如硬限制100M,软限制70M,用户当前已使用85M,那么优雅时间开始倒计时,直到优雅时间为0,那么剩余的那15M空间也不能使用了,即软限制自动提升为硬限制。

        grace默认是7天。

        另外:

        [loring ~]# edquota quota2

                    Disk quotas for user quota2 (uid 6669):

          Filesystem                  blocks      soft      hard    inodes    soft    hard

          /dev/sda10                        0          0          0          0        5        8

        [loring ~]# repquota -a  //看不到quota2的信息,是因为他没有创建任何文件

            *** Report for user quotas on device /dev/sda10

            Block grace time: 7days; Inode grace time: 7days

                                    Block limits                File limits

            User            used    soft    hard  grace    used  soft  hard  grace

            ----------------------------------------------------------------------

            root      --      20      0      0              2    0    0     

            quota1    -+      0    1024    3072              5    3    6  5days

        [loring ~]# su - quota2

        [quota2@loring ~]$ cd /quota/

        [quota2@loring quota]$ touch hello

        [quota2@loring quota]$ exit

            logout

        [loring ~]# repquota -a

            *** Report for user quotas on device /dev/sda10

            Block grace time: 7days; Inode grace time: 7days

                                    Block limits                File limits

            User            used    soft    hard  grace    used  soft  hard  grace

            ----------------------------------------------------------------------

            root      --      20      0      0              2    0    0     

            quota1    -+      0    1024    3072              5    3    6  5days

            quota2    --      0      0      0              1    5    8

  查看用户的磁盘配额使用情况

        [loring ~]# repquota -u /quota/

            *** Report for user quotas on device /dev/sda10

            Block grace time: 7days; Inode grace time: 7days

                                    Block limits                File limits

            User            used    soft    hard  grace    used  soft  hard  grace

            ----------------------------------------------------------------------

            root      --      20      0      0              2    0    0     

            quota1    -+      0    1024    3072              5    3    6  5days

            quota2    --      0      0      0              1    5    8 

  查看组的配额使用情况

        [loring ~]# repquota -g /quota/

            *** Report for group quotas on device /dev/sda10

            Block grace time: 7days; Inode grace time: 7days

                                    Block limits                File limits

            Group          used    soft    hard  grace    used  soft  hard  grace

            ----------------------------------------------------------------------

            root      --      20      0      0              2    0    0     

            quota1    --      0      0      0              5    0    0     

            quota2    --      0      0      0              1    0    0 

总结:

    1、挂载分区使其支持用户配额和组配额功能

    2、创建磁盘配额配置文件  quotacheck

    3、配置用户的磁盘配额  edquota

    4、开启配额  quotaon

    5、测试配额情况

概念

    软限制、硬限制

相关文章

  • 12、磁盘配额quota

    磁盘配额 配额:quota 什么是磁盘配额? 限制磁盘资源的使用的。 限制原因就是因为资源不是无限的。 应用...

  • 磁盘配额 (Quota)

    所谓磁盘配额,就是设置某一个文件系统(分区)内的用户可使用空间大小。 用途 WWW server 服务器,针对每个...

  • 磁盘配额quota

    磁盘配额 磁盘配额就是管理员可以为用户所能使用的磁盘空间进行配额限制的一个功能。他可以通过用户和组进行配额管理的,...

  • 6.7 磁盘容量配额(P129-131)——《Linux就该这么

    磁盘容量配额(P129-131) 预览:quota,xfs_quota,edquota 限制某位用户或某个用户组针...

  • Linux实用工具-quota磁盘配额管理

    Linux可以使用quota进行配额管理。 磁盘配额功能需内核支持,挂载之时需指定特定的选项。 配额按分区分配,不...

  • /home/目录下的账户Quota(磁盘配额)

    /home/目录下的账户Quota(磁盘配额) 1、修改分区信息 df -h /home/ 命令查看需要设置Quo...

  • Linux学习日记——磁盘配额(quota)

    quota是一个可以限制用户对磁盘使用量的工具,它可以查看磁盘分配情况和配置用户使用磁盘的限额。 quota的一般...

  • 服务器磁盘配额quota

    有些时候为了避免服务器磁盘被写爆,引起系统崩溃,因此有必要对磁盘的使用配额进行限制,尤其是对用户使用磁盘的容量进行...

  • 大数据学习-配额管理

    配额管理(quota) 目录配额 目录配额计算的是目录下所有文件的总个数。如果配额是1,则表示空白目录 空间配额 ...

  • quota 磁盘配额 测试环境配置流程

    参考: 云栖社区:xfs分区设置空间配额 IBM:管理磁盘配额 鸟哥私房菜:磁盘配额 注:磁盘类型为 xfs 在f...

网友评论

      本文标题:12、磁盘配额quota

      本文链接:https://www.haomeiwen.com/subject/eigtkftx.html