.html
1. 磁盘配额的使用限制
仅针对整个分区:磁盘配额实际运行时,是针对“整个分区”进行限制的,例如,如果/dev/hda5载入在/home下,那么,在/home下面的所有目录都会受到限制。 核心必须支持磁盘配额:Linux 系统 核心必须支持磁盘配额模块。 磁盘配额的记录文件:使用的Kernel 2.6.XX的核心版本,这个核心版本支持新的磁盘配额模块,使用的默认文件(aquota.user、up)将不同于旧版本的quota.user和up。旧版本的磁盘配额可以通过convertquota程序来转换 www.2cto 只对一般身份用户有效:并不是所有在 Linux 上的账号都可以设置磁盘配额,例如root就不能设置磁盘配额,因为他拥有整个系统所有的数据。 2. 磁盘配额程序对硬盘配额的限制 最低限制( soft ):这是最低限制容量。用户在宽限期间之内,它的容量可以超过最低限制,但必须在宽限时间之内将磁盘容量降低到最低限制的容量限制范围之内。 最高限制( hard ):这是“绝对不能超过”的容量。通常最高限制会比最低限制高。 宽限时间:宽限之间是指当用户使用的空间超过了最低限制,却还没有到最高限制时,在这个“宽限时间”内,就必须请用户将使用的磁盘空间降低到最低限制之下,否则则不允许在写入。反之,则宽限时间取消 3. 基本的磁盘配额命令 在开始进行磁盘配额的实际练习之前,先了解一下磁盘配额使用的命令,这些命令分为两种,一种是查询功能(quota、quotacheck、quotastats、warnquota、requota),另一种则是编辑磁盘配额的内容(edquota、setquota)。下面我们来讨论这些基本命令。 3.1. /etc/mtab www.2cto 为什么要提这个文件系统实际载入的记录文件呢?要注意,当我们使用磁盘配额的时候,系统会去搜素:“系统上具有磁盘配额参数的分区”,所以,当我们要使用磁盘配额的功能时,系统文件必须要支持磁盘配额的标志。一般来说,我们是通过编辑/etc/fstab后,在重新载入文件系统的方法,来让系统的文件系统支持磁盘配额。这个概念很重要。 3.2. quota 这个命令仅仅用来“显示”当前某个用户或者组的磁盘配额值。 # quota -uvs //这个是显示当前用户的配额值 -u:表示显示用户的配额 -g:表示显示组的配额 -v:显示每个文件系统的磁盘配额 -s:可以选择用Inode或者磁盘容量的限制值来显示 # quota -gvs //显示root用户所在组的配额值 # quota -uvs test1 //显示test1用户的配额值 3. 3.quotacheck 这个命令的主要目的是扫描某个磁盘的配额空间,它会针对分区进行扫描,并且,由于该磁盘持续欲行,可能扫描过程中文件会增加,造成磁盘配额扫描错误,因此,当使用quotacheck时,该磁盘将“自动被设置为只读扇区”;扫描完毕后,扫描所得的磁盘空间结果会写入该区最顶端(aquota.user与up) # quotacheck -cug //扫描分区,并生成配额信息文件 -a:扫描所有在/etc/mtab内含有磁盘配额支持的文件系统,加上此参数,可以不写/mount_point -v:显示扫描过程 -u:针对用户扫描文件与目录的使用情况,会建立quota.user -g:针对组扫描文件及与目录的使用情况,会建立up -c :代表创建 Ps:如果提示不能quotacheck,权限不足,此时的原因是因为SElinux ,关闭它就能创建了。 3. 4: edquota www.2cto 这个文件时编辑每一个“用户”或者“用户组”的磁盘配额数值。通常我们以edquota -u username或者是edquota -g groupname来编辑个人与用户组的磁盘配额值,不过这样一个一个分配很慢。也可以直接复制一个人的设置给另外一个人。用edquota -p user1 -u user2,下面介绍编辑时,里面的几个值 。filesystem:代表这个磁盘是针对哪个分区 。blocks:这个是当前用户在文件系统上所消耗的磁盘数量,也就是当前用户使用的空间,单位是KB -u:配置用户的磁盘配额 -g:配置组的磁盘配额 -p:复制磁盘配额设定,从一个用户到另一个用户 -t:修改宽限时间,可以针对分区 # edquota -u test1 //配置test1的磁盘配额 # edquota -p test1 -u test2 //将test1的配置服务之test2 #edquota -t //修改宽限时间 可以针对每个分区 www.2cto 3.5. quotaon 这个命令是启动磁盘配额,不过,由于这个命令是启动up与aquota.user的,所以必须要先完成quotacheck的工作,然后执行quota -a即可启动 -u:针对用户启动磁盘配额 -g:针对用户组启动磁盘配额 -v:显示启动过程的相关信息 -a:根据/etc/mtab内的文件系统设置启动相关的磁盘配额,若不加-a的话,则后面就需要加上特定的文件系统 #quota -avug //启动所有的磁盘配额 #quota -uv /data //启动/data里面的用户磁盘配额设置 3.6. quotaoff -a:全部文件系统的磁盘配额都关闭 -u:关闭用户的磁盘配额 -g:关闭组的磁盘配额 #quotaoff -a //全部关闭 #quotaoff -u /data //关闭/data的用户磁盘配额设置值 ------------------------------------------------------------------------------------------- 磁盘配额实例1 磁盘配额应用广泛,它的一般用途有: 。限制某用户组所能使用的最大磁盘配额 。限制某一用户的最大磁盘配额 。以连接方式,使邮件可以作为限制的配额 磁盘配额从开始准备文件系统的支持,到整个设置结束的主要步骤如下: 步骤1:设置分区的文件系统支持磁盘配额参数 步骤2:建立磁盘配额文件 步骤3:编辑磁盘配额限制值数据 步骤4:重新扫描与启动磁盘配额 设置步骤就是这样,很简单,我们以下面的范例来介绍整个流程 。我的linux主机中主要是针对test1和test2两个用户来进行磁盘配额的设置,且这两个用户都在test用户组里 。每个用户共有50MB的磁盘空间限制,并且最低限制为45MB。 。宽限时间为1天,也就是说,超过最低限制1天后,还不降到最低限度一下,将无法使用磁盘空间了 。test用户组的最大限额,设置为90MB 1:准备好测试环境,建立用户与用户组 1 #groupadd test 2 #useradd test1 -g test 3 #useradd test2 -g test 4 #passwd test1 5 #passwd test2 2:建立文件系统的磁盘配额支持 1 www.2cto [root@yangcan ~]# fdisk -l /dev/sda 2 Device Boot Start End Blocks Id System 3 /dev/sda1 * 1 64 512000 83 Linux 4 Partition 1 does not end on cylinder boundary. 5 /dev/sda2 64 2611 20458496 8e Linux LVM 6 /dev/sda4 2611 3916 10483750 5 Extended 7 /dev/sda5 2611 3916 10483718+ 83 Linux 1 [root@yangcan ~]# mkdir /test 2 [root@yangcan /]# vi /etc/fstab 3 [root@yangcan /]# mount -a 4 [root@yangcan /]# mount|grep sda5 5 /dev/sda5 on /test type ext4 (rw,usrquota,grpquota) www.2cto 1 [root@yangcan Desktop]# quotacheck -cug /test/ 2 [root@yangcan Desktop]# cd /test/ 3 [root@yangcan test]# ll 4 total 32 5 -rw------- 1 root root 6144 Aug 3 22:up 6 -rw------- 1 root root 6144 Aug 3 22:25 aquota.user 7 drwx------ 2 root root 16384 Aug 3 20:04 lost+found 3. 这样就加入了磁盘配额的磁盘格式了。不过,由于真正的磁盘配额在读取时时读取/etc/mtab文件,这个文件需要重启之后才能用/etc/fstab的新数据,所以这个时候可以选择 。重新启动 或者 1 [root@yangcan test]#mount -o remount /data 这样 /dev/sdb1 就支持磁盘配额 (quota) 了 4:启动磁盘配额的限制 1 [root@yangcan test]#quotaon -avug 5 :编辑用户的可使用空间 01 www.2cto [root@yangcan test]#edquota -u test1 //格式如下,单位是KB 02 Disk quotas for user test1 (uid 503): 03 Filesystem blocks soft hard inodes soft hard 04 /dev/sdb1 10256 45000 50000 1 0 0 05 [root@yangcan test]#edquota -p test1 -u test2 //把test1的设置值复制给test2 06 [root@yangcan test]#edquota -t //设置宽限时间 07 Grace period before enforcing soft limits for users: 08 Time units may be: days, hours, minutes, or seconds 09 Filesystem Block grace period Inode grace period 10 /dev/sdb1 1days 7days 11转载于:
本文发布于:2024-01-30 19:34:17,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170661446122327.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |