Linux中怎么限制用户的磁盘空间

发布时间:2021-06-21 16:38:05 作者:Leah
来源:亿速云 阅读:570

Linux中怎么限制用户的磁盘空间,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

一、如何限制用户的磁盘空间


1. 查看系统中所有用户的磁盘空间配额

sudo repquota /dev/vda1


2. 查看某个用户的磁盘空间配额

sudo edquota user_name

要想更改该用户的磁盘空间配额,直接在弹出的文件中修改blocks字段后面的soft和hard字段的值即可。比如下图就将soft字段的值设置为2097152(也就是2G),将hard字段的值设置为3145728(也就是3G),这么设置的意思就是,系统会允许你在一定时间内(时间的设置见下面的第4节)的磁盘空间超过2G,但是你要在截至时间到来之前将磁盘空间降到2G以下;但是无论如何,你的磁盘空间都不能超过3G。这也就是soft和hard的含义。需要注意的是,blocks和inodes字段无需进行设置,这两个字段的值是系统自动给出的。


3. 先设置好某个模板用户fanyiwei的磁盘空间配额,然后将其配额赋值给目标用户target_user_name。只要设置过一次模板配额,那么以后这个命令就是最常用的,很方便。

sudo edquota -p fanyiwei target_user_name


4. 设置预警期

之前第2节我们设置过用户磁盘空间的软上限(soft)和硬上限(hard)。硬上限是绝对不允许超过的上限,比如上面设置的3G;软上限是短时间内允许你超过限制,但是有截止时间,也就是预警期。预警期的默认设置是7天,但是你可以用下面的命令修改

sudo edquota -t

运行之后会弹出下面的文件,然后修改即可,比如下图就将预警期设置成了3天。


二、如何限制用户的内存使用量


1. 首先使用下述命令进入文件

sudo vim /etc/security/limits.conf

进入后若想限制每一个用户的内存使用量不能超过20G左右,则在最下面添加下图中的语句

* hard rss 21000000

若想限制某个用户test的内存使用量不能超过20G左右,则可添加下图中的命令

@test hard rss 21000000

做一下说明,上面我们写的四个字段的意思分别是:(1) 加*号表示对所有用户起作用,加@test表示只对某个名叫test的用户起作用。(2) hard说明是硬上限,你也可以改成soft,也即软上限。(3) rss表示我们限制的是内存的使用量。(4) 21000000(单位KB)表明我们限制的量大概是20GB。


2. 修改上面的文件并保存之后,我们再用下述命令

sudo vim /etc/pam.d/login

进入文件,在最下面添加如下一句话,然后保存。

session required /lib/security/pam_limits.so


3. 退出账户在重新登陆,使用下述命令可以查看内存配额

ulimit -a

关于Linux中怎么限制用户的磁盘空间问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. 使用linux的quotaoff命令关闭磁盘空间限制
  2. 使用linux的nologin命令限制用户登录

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:【学习笔记】如何配置Solr索引库

下一篇:Python中怎么对齐打印对象属性

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》