前面我们已经谈到,使用磁盘配额的前提,是必须要内核以及文件系统支持才行,这里假设大家使用的就是支持磁盘配额的内核,那么接下来就是要配置文件系统,使其支持配额限制。
由于 Quota 仅针对文件系统进行限制,因此我们有必要查一下,/home 是否是独立的文件系统,执行命令如下:
[root@localhost ~]# df -h /home
Filesystem Size Used Avail Use% Mounted on
/dev/hda3 4.8G 740M 3.8G 17% /home <-- /home 确实是独立的!
可以看到,/home 确实是独立的文件系统,因此可以直接对其进行限制。但如果读者所用系统中,/home 不是独立的文件系统,则可能就要针对根目录做磁盘配额了,但不建议大家这样做。
另外,由于 VFAT 文件系统并不支持磁盘配额功能,因此,这里需要查看 /home 的文件系统,执行命令如下:
[root@localhost ~]# mount | grep home
/dev/hda3 on /home type ext3 (rw)
显然,/home 的文件系统为 ext3,是支持磁盘配额的。
在此基础上,如果想要获得文件系统的支持,还需要为执行的文件系统添加挂载参数,分别是 usrquota(启用用户限额)和 grpquota(启动用户组限额),添加的方式有以下 2 种:
- 如果只是想在本次启动中试验磁盘配额,则只需使用如下的方式手动添加挂载参数:
[root@localhost ~]# mount -o remount,usrquota,grpquota /home
[root@localhost ~]# mount | grep home
/dev/hda3 on /home type ext3 (rw,usrquota,grpquota) - 手动添加的方式,会在下次重新挂载时消失,因此我们可以直接修改 /etc/fstab 文件,将挂载参数写入到配置文件中,这样,即便重新挂载也不会消失,执行命令如下:
[root@www ~]# vi /etc/fstab
注意,修改完 /etc/fatab 文件后,务必要亲自测试一下,有问题赶紧处理,因为此文件修改错误,将直接导致系统无法启动。
......
LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2
[root@www ~]# umount /home
[root@www ~]# mount -a
[root@www ~]# mount | grep home
/dev/hda3 on /home type ext3 (rw,usrquota,grpquota)
由此,我们就成功启用了文件系统对磁盘配额的支持,但此时还是不能立即使用磁盘配额,还需进一步检测相应的文件系统,并建立磁盘配额文件,这就需要使用 quotacheck 命令。