`

linux磁盘配额简介

阅读更多

什么是Quota 
Quota 让你可以从两方面指定磁盘的储存限制: 使用者所能够支配的索引  节点(inodes)数量;以及使用者可以取用的磁盘区块数量。 
Quota 背後的含意是强制使用者在大部分的时间中保持在他们的磁盘使用  限制之下,取消他们在系统上无限制地使用磁盘空间的能力。 
Quota 是以每一使用者,每一文件系统为基础的.如果使用者可能在超过  一个以上的文件系统上建立文件,那么必须在每一文件系统上分别设定quota.

建立quota:
 
一:内核中支持QUOTA:检查当前内核是否支持quota,当前内核配置文件在/boot下
[root@LFS ~]#grep  CONFIG_QUOTA  /boot/config-[version]CONFIG_QUOTA=yCONFIG_QUOTACTL=y
如果有上列输出,则表示当前内核已经支持quota。如果当前内核不支持quota,需要重新编译内核将quota support编译进核心:File systems  --->   Quota support 

二:安装QUOTA工具:
http://distro.ibiblio.org/pub/linux/distributions/sorcerer/sources/quota/3.12/下载quota-3.12.tar.bz2 解压后使用如下命令编译安装:
[root@LFS quota-tools]#./configure --prefix=/usr
[root@LFS quota-tools]#make
[root@LFS quota-tools]#make install

三:修改/etc/fstab加入QUOTA支持:
/dev/hda7  /mnt/lfs    ext3     defaults,usrquota,grpquota    1      2

四:使用quotacheck初始化QUOTA数据库:
因为quotacheck依据/etc/mtab搜索文件系统,所以要将刚刚修改的hda7重新挂载
[root@LFS quota-tools]#mount /mnt/lfs/ -o remount
[root@LFS quota-tools]#mount......略/dev/hda7 on /mnt/lfs type ext3 (rw,usrquota,grpquota)
[root@LFS quota-tools]#quotacheck -avugquotacheck: Scanning /dev/hda7 
quotacheck: Cannot stat old user quota file: No such file or directoryquotacheck: Cannot stat old group quota file: No such file or directoryquotacheck: Cannot stat old user quota file: No such file or directoryquotacheck: Cannot stat old group quota file: No such file or directorydonequotacheck: Checked 6316 directories and 85861 filesquotacheck: Old file not found.quotacheck: Old file not found.
#这里因为搜索不到旧版本的quota文件,所以有错误信息,但不影响。 -a : 扫描所有在/etc/mtab中开启quota的文件系统-v : 显示扫描过程-u : 扫描所有user quotas   (usrquota)-g : 扫描所有group quotas  (grpquota)检查完毕后生成quota的信息文件:[root@LFS lfs]#ls -l /mnt/lfs/aquota.*-rw-------  1 root root 11264 Mar 18 20:56 aquota.group-rw-------  1 root root 12288 Mar 18 20:56 aquota.user[root@LFS lfs]#五:启动QUOTA:[root@LFS lfs]#quotaon -av/dev/hda7 [/mnt/lfs]: group quotas turned on/dev/hda7 [/mnt/lfs]: user quotas turned on[root@LFS lfs]#-a : 开启所有quota设定,根据/etc/mtab设定-v : 当开启quota时显示信息六:编辑用户磁盘限额:这里设定用户quota最大使用容量为20M,当使用到10M时会得到警告要求降低到10M最多可以创建10个文件,当创建5个文件时会得到警告要求降低到5个文件 :-)[root@LFS lfs]#edquota -u quotaDisk quotas for user quota (uid 5011):  Filesystem         blocks       soft       hard     inodes     soft     hard  /dev/hda7             0         10240      20480        0        5        10-u : 编辑user的quota -g : 编辑group的quota -t : 编辑宽限时间-p : 复制quota资料到另一用户上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 设定宽限时间:
[root@LFS lfs]#edquota -tGrace period before enforcing soft limits for users:Time units may be: days, hours, minutes, or seconds  Filesystem             Block grace period     Inode grace period  /dev/hda7                    1days                 7daysOK,完成啦,检查一下吧:
[root@LFS lfs]#quota -uv quotaDisk quotas for user quota (uid 5011):     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace      /dev/hda7       0    1024    2048               0       5      10
[root@LFS lfs]#-u : 显示user -v : 显示quota值使用-p参数复制quota资料到另一个用户:
[root@LFS lfs]#edquota -p quota test
[root@LFS lfs]#quota -uv testDisk quotas for user test (uid 5012):     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace      /dev/hda7       0    1024    2048               0       5      10
#edquota -p quota `awk -F: '$3 >499 {print $1}' /etc/passwd`这样就将quota的磁盘配额资料复制给所有uid >499的用户(uid为500以上的用户通常为真实用户)OK,最后加在启动脚本里,系统启动时自动激活quota吧! 可以加入到/etc/rc.d/rc.sysinit或/etc/rc.d/rc.local中,在结尾加上一行:/usr/sbin/quotaon -aug 还要记得在系统关机/重启脚本(/etc/rc.d/rc[0,6]/)中加入关闭quota的语句:/usr/sbin/quotaoff -aug 通常发行版在系统启动/关闭时都会处理quota,在系统启动信息看到相关信息。 例如RedHat RHEL4,Mandrake 10.1系统启动/关闭时有这样两行:Turning on user and group quotas for local filesystems: (/etc/rc.d/rc.sysinit)Turning off quotas:       (/etc/rc.d/rc0.d/S01halt  /etc/rc.d/rc6.d/S01reboot)查询磁盘配额:root查询所有用户使用情况:
[root@LFS ~]#repquota -a*** Report for user quotas on device /dev/hda7Block grace time: 24:00; Inode grace time: 7days           Block limits       File limitsUser      used    soft    hard  grace    used  soft  hard  grace 略quota     +-    1032    1024    2048  23:59       2     5    10
[root@LFS ~]#如果有多个分区为quota,可用repquota -u 挂载点 查询单个分区的使用情况普通用户查询自己使用情况:
[quota@MyLFS ~]$quotaDisk quotas for user quota (uid 5011):     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace      /dev/hda7    1032*   1024    2048   23:58       2       5      10
[quota@MyLFS ~]$quotcheck :quotcheck用来扫描文件系统的磁盘用量,更新aquota.user,aquota.group 保持quota记录档到最新的状态。因此最好在系统启动时执行或通过cron定期执行:每周六早七点执行一次: 0 7 * * 6 /sbin/quotacheck -avug 你是不是想在跟分区做配额?这样是可以的。

第一,你要修改你的/etc/fstab文件:
LABEL=/ / ext3 defaults 1 1改为:LABEL=/ / ext3 defaults,usrquota 1 1或者改为:LABEL=/ / ext3 defaults,grpquota 1 1usrquota是基于用户的磁盘配额,grpquota是基于组的磁盘配额,怎么改就看你需要了。之后你或者重新启动一下,或者remount一下(mount -o remount / 。

第二,在 / 中建立aquota.user或aquota.grup,这两个文件要建立在你要实现配额的顶级目录,所谓定级目录,就是 ̄ ̄咋解释呢?就是比如你要在 / 上实现配额,就要在 / 下建立aquota.user或者aquota.grup;如果你要在/home上实现配额(当然你的/home应该是一个独立的磁盘分区),就在 /home下建立这两个文件中的一个。用touch命令建立就可以了,touch aquota.user 或aquota.srup。但这时建立好的文件是空的,不符和系统的需要。所以执行下一步。

第三,用quotacheck -mc / 将这两个文件(aquota.user或aquota.grup)格式化。注意一下,除非是/分区,一般不用加-m参数,比如你要在/home上实现配额(当然你的/home应该是一个独立的磁盘分区)就:quotacheck -c /home 就可以了。-m的意思是强迫在“读、写”模式下检查硬盘的配额。

第四,quotaon / 启动磁盘配额。

第五,edquota 用户名/组名 设置用户/组的配额例如:edquota user_nameedquota -g group_name (对于用户组) 执行后会打开一个vi编辑窗口。可以设置磁盘空间和节点数目的配额。其中soft只是起到警告的作用,并不会真正的限制用户/组。hard就会强制限制用户/组的磁盘空间和节点数目了。

第六,设定soft quota和hard quota之间的时间:edquota -t出现一个 vi 窗口:Grace period before enforcing soft limits for users:Time units may be: days, hours, minutes, or secondsFilesystem Block grace period Inode grace period/dev/hda7 7days 7days按照自己的需要修改吧。重新启动就可以了。磁盘限额就生效了。

第七,如果要成批的复制相同的磁盘配额给不通用户:edquota -p user user1 user2 user3edquota -g -p group group1 group2 group3第八,取消磁盘限额:quotaoff /

分享到:
评论

相关推荐

    Linux 磁盘配额管理实验

    Linux 磁盘配额管理实验 Linux 磁盘配额管理是 Linux 操作系统中的一项重要功能,旨在限制用户或用户组对磁盘空间的使用,以避免磁盘空间的滥用和浪费。本实验的目的是将/usr 设置为一个独立分区,并对 Linux 的...

    磁盘配额,linux磁盘配额

    ### 磁盘配额在Linux系统中的应用与配置 #### 一、磁盘配额的概念及功能 磁盘配额是一种系统级别的功能,它允许系统管理员为用户或用户组设置磁盘空间的使用上限。这项功能对于确保共享存储资源合理分配、避免单一...

    linux磁盘配额.docx

    Linux 磁盘配额 Linux 磁盘配额是一种对文件系统的存储空间进行限制和管理的机制。它可以对用户和组进行磁盘配额,限制文件的大小和数量,并对用户进行软限制和硬限制。本文将详细介绍 Linux 下的磁盘配额配置过程...

    linux磁盘配额.pdf

    Linux 磁盘配额配置详解 Linux 磁盘配额是一种控制用户或组在文件系统中磁盘空间使用的机制。它可以对用户和组实施磁盘配额,限制他们在文件系统中的磁盘空间使用。Linux 下面可以针对 ext2 和 ext3 的文件系统来做...

    Linux磁盘配额管理.pdf

    Linux 磁盘配额管理 Linux 操作系统中的磁盘配额管理是一种重要的存储管理机制,它允许系统管理员控制用户和组群对文件系统的访问和使用。下面是 Linux 磁盘配额管理的详细知识点: 一、确认已安装 quota 包 在 ...

    linux磁盘配额录像

    详细录像:关于linux上进行磁盘配额详细步骤,与方法。

    Linux磁盘配额和RAID5

    Linux磁盘配额和RAID5是两个在服务器管理和存储优化方面至关重要的概念。Linux系统中的磁盘配额可以有效地管理用户或组的磁盘空间使用,防止个别用户占用过多资源,而RAID5则是一种磁盘冗余技术,通过分布式奇偶校验...

    NFS上实现磁盘配额

    在IT领域,尤其是在网络文件系统(NFS)的管理与优化方面,实现磁盘配额是一项重要的技术。本文将深入探讨如何在NFS上实施磁盘配额,以控制用户或用户组对共享资源的使用,确保网络环境下的资源合理分配与高效利用。...

    磁盘配额的步骤

    "Linux 磁盘配额详解" 在 Linux 中,磁盘配额是一个强大的工具,能够帮助系统管理员控制和管理用户对磁盘空间的使用情况。磁盘配额可以根据用户或分区对磁盘空间进行限制和管理,从而避免了磁盘空间的滥用和系统...

    Linux磁盘配额管理:策略、工具与实践

    在Linux系统中,磁盘配额管理是一个重要的功能,它允许系统管理员限制用户或用户组的磁盘使用量,从而有效控制磁盘空间的使用并防止滥用。本文将详细介绍Linux系统中进行磁盘配额管理的方法,包括配额的设置、监控和...

    linux针对用户的磁盘配额(quota)

    1.什么是磁盘配额? 由于linux是多人多任务的空间,那么肯定会有多个人同时使用同一块磁盘空间的情况发生。如果其中有几个用户使用磁盘空间占比较大的化,势必会压缩其他用户的使用权力,因为管理员应该分配用户以...

    在Linux NFS服务器上实现磁盘配额

    在Linux NFS服务器上实现磁盘配额 实现共享NFS磁盘限制 可用于docker容器挂载卷的大小限制 方便管理各容器大小

    17-3-RHEL7-Linux+磁盘配额技巧

    在Linux系统中,磁盘配额是指对用户或用户组在特定文件系统上所能占用磁盘空间进行限制的一种管理方法。本文主要探讨了在Red Hat Enterprise Linux 7(RHEL 7)中实施磁盘配额的技巧,以帮助系统管理员更有效地管理...

    Linux下的磁盘配额.pdf

    Linux下的磁盘配额 Linux下的磁盘配额是指在Linux操作系统中对磁盘的使用做出限制,以避免某个用户或组由于过度使用磁盘空间而影响其他用户或组的正常使用。磁盘配额的作用是限制普通用户或者组的对磁盘的最大使用...

    linux批量设置用户磁盘配额

    在Linux系统管理中,批量设置用户磁盘配额是一项重要的任务,它有助于合理分配系统资源,避免因单个用户过度占用磁盘空间而导致系统性能下降或资源耗尽。以下是对如何在Linux环境下批量设置用户磁盘配额的详细解析:...

    Linux磁盘配额Quota配置详解.doc

    "Linux磁盘配额Quota配置详解" Linux磁盘配额Quota配置详解是Linux系统中的一项重要功能,目的是为了限制用户对硬盘空间的使用,以避免少数用户占用大量硬盘空间,影响其他用户的使用权力。 什么是Quota? Quota是...

    Linux磁盘配额概述.pdf

    在Linux操作系统中,磁盘配额是一项重要的管理工具,用于限制用户或用户组在特定文件系统中可使用的磁盘空间。这有助于避免个别用户过度占用系统资源,保持系统的稳定运行。下面将详细解释磁盘配额的概念、设置方法...

Global site tag (gtag.js) - Google Analytics