Linux setquota命令详解:非交互式设置磁盘配额

 
如果我们需要写脚本建立大量的用户,并给每个用户都自动进行磁盘配额,那么 edquota 命令就不能在脚本中使用了,因为这个命令的操作过程和 vi 类似,需要和管理员产生交互。

这种情况下就需要利用 setquota 命令进行设置,这个命令的好处是通过命令行设定配额,而不用和管理员交互设定。

edquota 命令格式如下:

[root@localhost ~]# setquota -u 用户名 容量软限制 容量硬限制 个数软限制 个数硬限制 分区名


举个例子,我们再建立用户 lamp4,并用 setquota 命令设定磁盘配额。

[root@localhost ~]# useradd lamp4
[root@localhost ~]# passwd lamp4
#建立用户
[root@localhost ~]# setquota -u lamp4 10000 20000 5 8/disk
#设定用户在/disk分区中的容量软限制为10MB,硬限制为20MB;文件个数软限制为5个,硬限制为8个
[root@localhost ~]# quota -uvs lamp4
Disk quotas for user Iamp4 (uid 503):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdbl 0 10000 20000 0 5 8
#查看一下,配额生效了

这个命令在写脚本进行批量设置时更加方便。当然,在写脚本时也可以先建立一个模板用户,设定好磁盘配额,再进行配额复制。