zoukankan      html  css  js  c++  java
  • 磁盘配额

    1. 磁盘配额条件

    内核必须支持磁盘配额
    [root@centos2
    ~]# cd /boot/ [root@centos2 /boot]# ll 总用量 192980 -rw-r--r--. 1 root root 153068 10月 19 01:19 config-3.10.0-1062.4.1.el7.x86_64 -rw-r--r--. 1 root root 152976 8月 8 02:11 config-3.10.0-1062.el7.x86_64 drwx------. 3 root root 17 11月 9 2018 efi drwxr-xr-x. 2 root root 27 11月 1 23:00 grub drwx------. 5 root root 97 11月 1 23:53 grub2 -rw-------. 1 root root 78623773 11月 1 23:08 initramfs-0-rescue-85901032a744483ebe559e0551c923f4.img -rw-------. 1 root root 31429453 11月 1 23:53 initramfs-3.10.0-1062.4.1.el7.x86_64.img -rw------- 1 root root 13878466 11月 7 23:16 initramfs-3.10.0-1062.4.1.el7.x86_64kdump.img -rw-------. 1 root root 31432689 11月 1 23:52 initramfs-3.10.0-1062.el7.x86_64.img -rw-------. 1 root root 13874408 11月 1 23:14 initramfs-3.10.0-1062.el7.x86_64kdump.img -rw-r--r--. 1 root root 318846 10月 19 01:19 symvers-3.10.0-1062.4.1.el7.x86_64.gz -rw-r--r--. 1 root root 318717 8月 8 02:12 symvers-3.10.0-1062.el7.x86_64.gz -rw-------. 1 root root 3597450 10月 19 01:19 System.map-3.10.0-1062.4.1.el7.x86_64 -rw-------. 1 root root 3594971 8月 8 02:11 System.map-3.10.0-1062.el7.x86_64 -rwxr-xr-x. 1 root root 6734016 11月 1 23:08 vmlinuz-0-rescue-85901032a744483ebe559e0551c923f4 -rwxr-xr-x. 1 root root 6734016 10月 19 01:19 vmlinuz-3.10.0-1062.4.1.el7.x86_64 -rwxr-xr-x. 1 root root 6734016 8月 8 02:12 vmlinuz-3.10.0-1062.el7.x86_64 [root@centos2 /boot]# grep CONFIG_QUOTA config-3.10.0-1062.el7.x86_64 CONFIG_QUOTA=y CONFIG_QUOTA_NETLINK_INTERFACE=y # CONFIG_QUOTA_DEBUG is not set CONFIG_QUOTA_TREE=y CONFIG_QUOTACTL=y CONFIG_QUOTACTL_COMPAT=y [root@centos2 /boot]# grep CONFIG_QUOTA config-3.10.0-1062.4.1.el7.x86_64 CONFIG_QUOTA=y CONFIG_QUOTA_NETLINK_INTERFACE=y # CONFIG_QUOTA_DEBUG is not set CONFIG_QUOTA_TREE=y CONFIG_QUOTACTL=y CONFIG_QUOTACTL_COMPAT=y 系统中必须安装了quota工具,我们的Linux默认是安装了quota工具的 [root@centos2 ~]# rpm -qa|grep quota quota-nls-4.01-19.el7.noarch quota-4.01-19.el7.x86_64

    要支持磁盘配额的分区必须开启磁盘配额功能,这个功能需要手工开启,不再是默认就开启的

    2.概念

      用户配额和组配额

      磁盘容量限制和文件个数限制

      软限制和硬限制

      宽限时间

      如果用户的空间占用数处于软限制与硬限制之间,系统会在用户登陆时警告用户磁盘将满,这个时间就是宽限时间,默认7天。如果达到宽限时间,用户的磁盘占用量仍高于软限制,那么软限制将会升为硬限制。

    例:

    1. 磁盘配额规划

    2. 创建组和用户

    groupadd test
    useradd -G test user1
    useradd -G test user2
    useradd -G test user3
    passwd user1
    passwd user2
    passwd user3

    3. 在分区上开启磁盘配额功能

    mount -o remount,usrquota,grpqouta /disk1
    #vim
    /etc/fstab
    #
    /dev/sdb1 /disk1 ext4 defaults,usrquota,grpquota 0 0 #mount -o remount /disk1

    4. 建立磁盘配额的配置文件

    quotacheck [选项] [分区名]
    -a 扫描/etc/mtab文件中所有启用磁盘配额功能的分区。如果加入此参数,命令后面就不需要加入分区名了
    -c 不管原有的配置文件,重新扫描并建立新的配置文件
    -u 建立用户配额的配置文件,也就是生成aquota.user文件
    -g 建立组配额的配置文件,会生成aquota.group文件
    -v 显示扫描过程
    -m 强制以读写的方式扫描文件系统,和-M类似。一般扫描根分区时使用
    -f 强制扫描文件系统,并写入新的配置文件。一般扫描新添加的硬盘分区时使用
    quotacheck -avug

    需要关闭SELinux

    [root@centos2 ~]# ll /disk1
    总用量 32
    -rw------- 1 root root  6144 11月  7 23:50 aquota.group
    -rw------- 1 root root  6144 11月  7 23:50 aquota.user
    drwx------ 2 root root 16384 11月  7 18:25 lost+found

    5. 设置用户和组的配额限制

    edquota [选项] [用户名或组名]
    
    -u 用户名     设定用户配额
    -g 组名       设定组配额
    -t         设定宽限时间
    -p        复制磁盘配额。如果已经设定好某个用户的配额限制,其他用户的配额限制如果和这个用户相同,那么可以直接复制配额限制,而不用都手工指定
    [root@centos2 ~]# edquota -u user1

    Disk quotas for user user1 (uid 1002): Filesystem blocks soft hard inodes soft hard /dev/sdb1 0 40000 50000 0 6 9
    #分区名 已占用容量 软限制 硬限制 已占用文件数 软限制 硬限制
    [root@centos2 ~]# edquota -u user2
    
    Disk quotas for user user2 (uid 1003):
      Filesystem                   blocks       soft       hard     inodes     soft     hard
      /dev/sdb1                         0     100000     200000          0       10       15

    5.2 配额复制

    [root@centos2 ~]# edquota -p user1 -u user3
    #命令 -p 源用户 -u 目标用户

    5.3 修改宽限时间

    [root@centos2 ~]# edquota -t
    
    Grace period before enforcing soft limits for users:
    Time units may be: days, hours, minutes, or seconds
      Filesystem             Block grace period     Inode grace period
      /dev/sdb1                     8days                  8days

    5.4 启动和关闭配额

    配额的配置完成之后,只需启动配额就好了。

    quotaon [选项] [分区名]
    -a    依据/etc/mtab文件启动所有的配额分区。如果不加-a,后面就一定要指定分区名
    -u    启动用户配额
    -g    启动组配额
    -v    显示启动过程的信息
    [root@centos2 ~]# quotaon -vug /disk1
    /dev/sdb1 [/disk1]: group quotas turned on
    /dev/sdb1 [/disk1]: user quotas turned on

    关闭配额

    quotaoff [选项] [分区名]
    -a    依据/etc/mtab文件关闭所有的配额分区。如果不加-a,后面就一定要指定分区名
    -u    关闭用户配额
    -g    关闭组配额
    [root@centos2 ~]# quotaoff -vug /disk1
    /dev/sdb1 [/disk1]: group quotas turned off
    /dev/sdb1 [/disk1]: user quotas turned off

    6. 磁盘配额查询

    quota查询用户或用户组配额

    quota [选项] [用户名或组名]
    -u 用户名    查询用户配额
    -g 组名    查询组配额
    -v    显示详细信息
    -s    以习惯单位显示容量大小
    [root@centos2 ~]# quota -uvs user1
    Disk quotas for user user1 (uid 1002): 
         Filesystem   space   quota   limit   grace   files   quota   limit   grace
          /dev/sdb1      0K  40000K  50000K               0       6       9        

    repquota查询文件系统配额

    repquota [选项] [分区名]
    -a    依据/etc/mtab文件查询配额。如果不加-a选项,就一定要加分区名
    -u    查询用户配额
    -g    查询组配额
    -v    显示详细信息
    -s    以习惯单位显示容量大小
    [root@centos2 ~]# repquota -avugs
    *** Report for user quotas on device /dev/sdb1
    Block grace time: 8days; Inode grace time: 8days
                            Space limits                File limits
    User            used    soft    hard  grace    used  soft  hard  grace
    ----------------------------------------------------------------------
    root      --     20K      0K      0K              2     0     0       
    user1     --      0K  40000K  50000K              0     6     9       
    user2     --      0K 100000K    196M              0    10    15       
    user3     --      0K  40000K  50000K              0     6     9       
    
    Statistics:
    Total blocks: 7
    Data blocks: 1
    Entries: 4
    Used average: 4.000000
    
    *** Report for group quotas on device /dev/sdb1
    Block grace time: 7days; Inode grace time: 7days
                            Space limits                File limits
    Group           used    soft    hard  grace    used  soft  hard  grace
    ----------------------------------------------------------------------
    root      --     20K      0K      0K              2     0     0       
    test      --      0K 100000K    196M              0    10    20       
    
    Statistics:
    Total blocks: 7
    Data blocks: 1
    Entries: 2
    Used average: 2.000000

    7. 测试

    [root@centos2 ~]# dd if=/dev/zero of=/disk1/testfile bs=1M count=60
    #建立testfile文件,指定大小60M

    8. 非交互式设定用户磁盘配额

    [root@localhost ~]# setquota -u 用户名 容量软限制 容量硬限制 个数软限制 个数硬限制 分区名
    [root@localhost ~]# useradd user4
    [root@localhost ~]# passwd user4
    [root@localhost ~]# setquota -u user4 10000 20000 5 8 /disk1
    #设定用户在/disk1分区的容量软限制为10MB,硬限制20MB。文件个数软限制5个,硬限制#8个。







  • 相关阅读:
    swfupdate flash上传工具
    在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服 务器。请验证实例名称是否正确并且 SQL Server 已配置为允
    多对多 一对一 一对多 主从 关联 字典
    JavaScript面向对象
    vue的transition过渡效果
    【译】Learn ES2015——箭头函数
    vue的选项
    JavaScript模块化
    vue-router
    vuex是啥
  • 原文地址:https://www.cnblogs.com/sswind/p/11812996.html
Copyright © 2011-2022 走看看