quota 比较常使用的几个情况是:
针对 WWW server ,例如:每个人的网页空间的容量限制!
针对 mail server,例如:每个人的邮件空间限制。
针对 file server,例如:每个人最大的可用网络硬盘空间 .
上头说的是针对网络朋务的设计,如果是针对 Linux 系统主机上面的设定那么使用的方向有底下这一些:
1、限制某一群组所能使用的最大磁盘配额 (使用群组限制):
2、限制某一用户的最大磁盘配额 (使用用户限制):
3、以 Link 的方式,来使邮件可以作为限制的配额 (更 改 /var/spool/mail 这个路径):
下面开始具体步骤
1.首先我先在虚拟机里面增加一块虚拟硬盘,也可以使用现有的硬盘进行磁盘限额。使用命令 fdisk -l 查看现有的硬盘情况
2.对新增加的硬盘进行分区,格式化
分区命令 fdisk /dev/sdb
格式化命令 mkfs -t ext3 /dev/sdb
3.挂载新格式化的硬盘 /dev/sdb1,创建挂载点 /mnt/sdb1
命令 mkdir /mnt/sdb1 挂载命令 mount /dev/sdb1 /mnt/sdb1
挂载完可以用mount命令查看挂载情况,也可以用df -h查看硬盘的具体情况
4.新建用户在对应的限制配额的目录里
[root@localhost ~]# useradd test1 -d /mnt/sdb1
5.用vim修改配置文件
[root@localhost ~]# vim /etc/fstab
具体修改如下,修改后保存退出
6.修改完以后mount 一下
7.通过mount我们可以看到 所要限额的分区已经挂载了而且配置文件已经配置好
接着 [root@localhost ~]# quotacheck -avug 检查一下 它会显示没有文件或目录,这里没关系的
[root@localhost ~]# cd /mnt/sdb1
[root@localhost sdb1]# ll
总计 26
-rw------- 1 root root 6144 09-20 13:10 aquota.group
-rw------- 1 root root 6144 09-20 13:10 aquota.user
drwx------ 2 root root 12288 09-20 12:48 lost+found
8.启动quota的服务 命令 quotaon -uv /mnt/sdb1
9.修改用户test1文件达到限额的目的[root@localhost ~]# edquota -u test1 ,修改时他们是以kB为单位的
10. 查询所有用户的quota限制情况 repqota -auvs
11.切换到test验证 先建一个81m的文件
[root@localhost ~]# su - test1
-bash-3.2$ dd if=/dev/zero of=/mnt/sdb1/test1.txt bs=M count=81
提示权限不够 打开 “/mnt/sdb1/test1.txt”: 权限不够
12.修改打开 “/mnt/sdb1权限
13.切换到 test1进行测试
[root@localhost ~]# su - test1
-bash-3.2$ pwd
/mnt/sdb1
-bash-3.2$ dd if=/dev/zero of=/mnt/sdb1/test1.txt bs=1M count=60
60+0 records in
60+0 records out
62914560 bytes (63 MB) copied, 0.219308 seconds, 287 MB/s
新建了60m test。txt
14.再建一个25m的
-bash-3.2$ dd if=/dev/zero of=/mnt/sdb1/test11.txt bs=1M count=25
sdb1: warning, user block quota exceeded.
dd: 写入 “/mnt/sdb1/test11.txt”: 设备上没有空间
它会提示没有空间