Linux 磁盘配额

    在Linux系统的多人多任务环境中经常会出现多个用户使用一块磁盘的问题,所以我们为了避免某些用户占用过大空间,使用磁盘配额这一方法限定用户的磁盘使用空间大小,以进行磁盘管理,磁盘配额分为两种:限制大小和限制文件数。

    磁盘配额,我们就使用到了quota ,quota是针对整个分区起作用,比如/dev/hda2挂载到home下,/dev/hda2启动磁盘配额,那么对/home下所有目录都会受到限制

    quota的限制被容包括下面几部分:

soft:软限制。用户超出软限制后还可以继续使用磁盘空间,但是在宽限的时间内,必须把使用的磁盘空间降到软限制标准下,不然会强行清除

hard:硬限制。用户使用的磁盘空间被严格限制在应限制下,如果用户使用空间超出应限制将会被拒绝并提出警告。

宽限时间:通常与软限制配合使用,用户超出软限制后在宽限时间内还是可以使用超出的磁盘空间。

我们一般定义的磁盘限额是软限制,硬限制与宽限时间配合使用。比如说soft=2048k,hard=4096k,宽限时间=1day。也就是说用户可以超过2048k使用4096k大小的空间,但是一天后会强行清除到2048的大小。

其实quota的用法十分简单:

查询方法:

quota:quota [-guvs] [user,group]

-g:查询组

-u:查询用户

-v:显示qouta值

-s:选择inod或者是磁盘空间来显示

例子:quota -uvs user 显示当前user这个用户的qouta值

quotacheck: 扫描一个磁盘的quota空间并创建配额文件quota.user,quota.group

进入单用户模式用quotacheck直接对其家目录生成配额文件

我们一般使用的是: quotacheck -cumg /filesystem 对filesyatem分区创建配额文件

-c:创建配额文件

-a:扫描所有以挂载的磁盘空间(在/etc/mtab中定义)

-u:扫描使用者的目录与档案

-v:显示扫描的过程

-g:扫描群组使用的档案与目录

-m:强制扫描创建

编辑quota有两种方法:edquota    setquota

edquota:edquota [-u user] [-g group] [-t]

-u:为用户设定磁盘配额

-g:为组设定磁盘配额

-t:设定宽限时间

edquota -p user1 -u user2

-p:将user1用户的quota值复制给user2用户

 例子:edquota -u test 会出现如下界面:

Filesystem         blocks      soft      hard     inodes     soft     hard

/dev/hda2             8          0         0     5             0       0 上面界面表示:Filesystem:用户使用从盘所在分区 , block:已使用的空间大小, soft软限制 ,hard 硬限制  ,  inodes 已使用的inode(文件数目)  soft:软限制数目, hard:硬限制数目。空间大小的单位为 K !0表示不做限制

setquota 用户名 空间软限制数 空间应限制数  文件软限制数  文件应限制数

配置宽限时间:quota username -t  时间单位可为days,minutes等

quotaon:开启磁盘配额

quotaon [-a] [-uvg directory]

-a 配置的磁盘配额全部启动

-u 激活diretory目录下用户配额

-g 激活diretory目录下组配额

-s 显示信息

例如:quota -uv /home 激活/home下的用户配额

关闭磁盘配额:quotaoff -a 关闭所有 quotaoff /filesyatem 关闭filesystem配额

 

具体步骤:

1: #vim /etc/fstab   编辑此文件使磁盘支持quota

选择要配额的分区将default一项改为default,usrquota,grpquota

2:重新挂载文件系统

mount -o remount /dev/hda2

3:扫描创建配额文件:

quotacheck -cumg /home

4:开启磁配额

quotaon /home

5:编辑配额信息:

edquota -u test

 

Filesystem         blocks      soft      hard     inodes     soft     hard

/dev/hda2             8        2048      4096        5         8       10 

 

6:将test2用户的配额信息配为跟test一样

edquota -p test -u test2

7:设定宽限时间

edquota test -t

 

8:检查一遍

quota -uv test test2

 

你可能感兴趣的:(linux,职场,休闲,quota,磁盘配额)