+
80
-

如何限制linux目录的容量大小空间?

如何限制linux目录的容量大小?比如这个目录最多只能容纳100M的文件。


网友回复

+
0
-

要限制 Linux 目录的容量大小空间,您可以使用 quota 命令。

quota 命令可以对文件系统或目录设置磁盘空间配额,从而限制用户或组在该文件系统或目录中使用的磁盘空间大小。

步骤如下:

安装 quota 工具:

yum install quota

800_auto

然后,需要在`/etc/fstab`文件中修改需要限制磁盘分区的属性,例如:

/dev/sda1 / ext4 defaults,usrquota,grpquota 0 1

接着,重新挂载根目录:

mount -o remount

接下来,扫描要限制的分区:

quotacheck -ugmv /

初次运行会有警告,结束后根目录下会出现`aquota.group`和`aquota.user`两个文件。

开启磁盘限额:

quotaon -ugv /

接着,编辑用户www的限额:

edquota -u www

# edquota -u www

Disk quotas for user www (uid 1000): 
Filesystem   blocks      soft      hard   inodes soft hard 
/dev/sda1    1191884   2048000   3076000   5099   0    0

要编辑的是soft和hard的值,以KB为单位。例如,我们可以限制work用户占用超过2G(soft)就发出警告,超过3G(hard)就拒绝写入。inode的值一般无需限制。最后,切换到www账号,尝试创建一个3G的文件:fallocate -l 3G testfile

如果创建失败,说明限制起作用了。如果要限制用户组,可以使用`edquota -g www`命令。如果要关闭限制,可以使用`quotaoff -ugv /`命令。

我知道答案,我要回答