在一个大型的多用户系统中,通常需要控制每个用户所能使用的硬盘大小。
想要管理硬盘配额,需要安装quota和quotatool软件包。Ubuntu系统中的硬盘配额管理是默认禁用的,可以被系统管理员启用和配置。系统管理员可以使用一系列的与硬盘配额相关的命令:quotacheck初始化quota数据库文件;edquota设置和编辑用户配额;set quota配置硬盘配额;quotaon和quotaoff控制配额服务;warnquota自动发邮件给超过硬盘配额的用户。
即使安装了quota软件包,quotas也没有启用。当quota服务启用后,可以查看/etc/fstb文件,在每一行的第4个字段定义了硬盘配额的相关信息。例如:
/dev/hda5 /home /ext3 defaults,usrquota,grpquota 1 1
说明了/home分区启动了配额服务。启用了quota服务的分区的根目录下能找到两个文件quota.user和quota.group,文件包含了具体的配额信息。这两个文件的权限是600,也就是说用户不能都写文件,否则用户可能会为自己分配更大的配额。
要初始化硬盘配额,分区必须被重新挂载。如下命令:
sudo mount -o ro, remount partition_to_be_remounted mount_point
常用的硬盘配额命令主要有:
quotaon,quotaoff——启动或关闭一个分区的配额服务
repquota——用户和群组硬盘配额情况的状态报告
quotacheck——更新配额状态(对比新旧硬盘使用情况,在fsck后运行)
edquota——基本配额管理命令
可以通过更改/etc/fstab文件的条目来启动和关闭硬盘配额服务。在第4个字段增加usrquota或grpquota选项。
也可以通过在分区的根目录下创建quota.user和quota.group文件,然后用quotaon命令启动硬盘配额服务。
sudo touch /quota.user (创建quota.user文件)
sudo quotaon -av(启用硬盘配额服务)
quota -v(用户可以查询自己的硬盘配额情况)