• linux存储管理之磁盘配额


    磁盘配额



    1  相关命令:quota、quotacheck、edquota、quotaon、quotaoff
    quota要使用的命令有两种:一种用于查询功能,包括quota、quotacheck、quotastats、repquota和warnquota;另一种用于编辑quota的内容,包括edquota和setquota。
    1)quota命令
    语法:quota  [-uvsl]  [username] 或 quota  [-gvsl]  [groupname]
    quota命令各选项及其功能见表6-2。
    例1:# quota  -guvs //显示root用户的quota限制值
    例2:# quota  -vs  -u  ztg //显示ztg用户的磁盘配额

    2)quotacheck命令
    语法:quotacheck  [-avug]  [/mount_point]
    quotacheck命令各选项及其功能见表6-3。
    例1:# quotacheck  -avug //将所有在/etc/mtab(如图6-10所示)内,含有quota支持的分区进行扫描
    例2:# quotacheck  -avug  -m //强制扫描已挂载的文件系统

    file://C:UsersanliuAppDataLocalTempct_tmp/1.png
    图6-10  /etc/mtab文件

    3) edquota命令
    语法:edquota  [-u username]  [-g groupname] 或
    edquota  -t 或 edquota  -p  user1  -u  user2
    edquota命令各选项及其功能见表6-4。

    4) quotaon命令
    语法:quotaon  [-avug]] 或 quotaon  [-vug]  [/mount_point]
    quotaon命令各选项及其功能见表6-5。
    例:# quotaon  -auvg 启动所有具有quota的文件系统

    5) quotaoff命令
    语法:quotaoff  [-a] 或 quotaoff  [-ug]  [/mount_point]
    quotaoff命令各选项及其功能见表6-6。

    2  实例—实现磁盘限额
    实例6-1  实现磁盘限额
    问题描述:将/dev/hda4分区挂载在/mnt/quota下,在/mnt/quota目录中对用户(ztg和ztguang,这两个用户都在ztguang群组里)实行磁盘空间的配额限制。
    第1步:修改/etc/fstab文件

    file://C:UsersanliuAppDataLocalTempct_tmp/2.png
    图6-11  修改/etc/fstab文件
    第2步:在/mnt/quota目录创建aquota.user和aquota.group文件


    第3步:使用quotacheck命令生成符合系统要求的aquota.user和aquota.group文件


    file://C:UsersanliuAppDataLocalTempct_tmp/3.png
    图6-12  生成aquota.user和aquota.group文件
    第4步:为用户设置磁盘空间限额
    使用edquota来编辑每个用户或组群的可用磁盘空间,如图6-14所示,执行第1条命令“edquota ztg”,打开一个vi窗口,为用户ztg设置磁盘空间的限额,如下所示。
    [root@localhost quota]# edquota  ztg
    Disk quotas for user ztg (uid 500):
    Filesystem            blocks       soft       hard     inodes     soft     hard
    /dev/hda4                 0       100000    110000     0        0       0


    如图6-13所示,执行第2条命令“edquota -p ztg ztguang”,将ztg的quota限制值复制给ztguang用户(ztg和ztguang用户有相同的磁盘限额)。
    如图6-13所示,执行第3条命令“edquota -t”,设置“宽限时间”,如下所示。
    [root@localhost quota]# 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/hda4                     7days                  7days

    预设的“宽限时间”是7天,读者可以根据具体情况进行设置。
    如图6-13所示,执行第4条命令“edquota –vu ztg ztguang”, 显示ztg和ztguang用户的磁盘配额。
    file://C:UsersanliuAppDataLocalTempct_tmp/4.png
    图6-13  为用户设置磁盘空间限额
    第5步:为组群(ztguang)设置磁盘空间限额
    组群ztguang包含两个用户ztg和ztguang。
    执行命令“edquota  -g  ztguang”,设置组群ztguang的磁盘空间限额,如下所示。
    [root@localhost quota]# edquota  -g  ztguang
    Disk quotas for group ztguang (gid 501):
    Filesystem            blocks       soft       hard     inodes     soft     hard
    /dev/hda4                 0       190000    210000     0        0        0

    执行命令“edquota  -vg  ztguang”,查看组群ztguang的磁盘空间限额,如图6-14所示。
    file://C:UsersanliuAppDataLocalTempct_tmp/5.png
    图6-14  查看组群ztguang的磁盘空间限额

    第6步:启动quota的限额
    设定好quota之后,建议再执行一次quotacheck命令,然后执行“quotaon -avug”命令来启动quota的限额,如图6-15所示。
    file://C:UsersanliuAppDataLocalTempct_tmp/6.png
    图6-15  启动quota的限额

    第7步:自动启动quota的限额
    如果希望系统重启后自动启动quota的限额,可以在/etc/rc.d/rc.local中添加如下代码。
    if [ -x /sbin/quotacheck ]; then
    echo "Checking quotas,This may take some time ... "
    /sbin/quotacheck -avug
    echo "Done."
    fi
    if [ -x /sbin/quotaon ]; then
    echo "Enabling disk quota ... "
    /sbin/quotaon -avug
    echo "Done."
    fi


    xfsprogs---适合xfs分区
    使用xfs_quota命令管理xfs文件系统磁盘配额
    1)检查软件包是否安装
    2)创建被限额使用磁盘空间的大小的用户及密码-->创建用户存放文件的目录,并将该目录的所有权赋给该用户,以此保证用户能读写目录中的文件。
    3)以支持配额的方式重新挂载磁盘分区到指定目录。
    mount -o usrquota,grpquota /dev/sdb5 /data
    4)设置系统启动时支持配额
    /dev/sdb5 /data xfs defaults,usrquota,grpquota 0 0
    5)为指定用户设置配额
    xfs_quota -x -c 'limit bsoft=100M bhard=120M isoft=3 ihard=6 -u tom' /data
    查看配额
    xfs_quota -x -c 'report -u tom' /data
    6)切换到指定用户验证配额

  • 相关阅读:
    android ksoap2 访问webservice,连续两次调用时,第二次调用异常(转)
    iOS Programming – 触摸事件处理 (转)
    iPhone的解锁、越狱、激活、固件等等是什么意思,有什么分别?(转)
    pb中 执行动态sql
    Java的中文字体
    fastreport一些使用方法
    网页数据抓取
    base64
    TSelect
    解决DLL包组织的项目运行报 a class named Txxx exists
  • 原文地址:https://www.cnblogs.com/anttech/p/10612350.html
Copyright © 2020-2023  润新知