Ali*_*xel 28 system ulimit resource-limiting 18.04
我已经运行ulimit -n 65536,将以下行添加到/etc/security/limits.conf:
* soft nofile 65536
* hard nofile 65536
alix soft nofile 65536
alix hard nofile 65536
root soft nofile 65536
root hard nofile 65536
Run Code Online (Sandbox Code Playgroud)
并添加session required pam_limits.so到两者中:
并且fs.file-max = 65536到/etc/sysctl.d/60-file-max.conf。
尽管如此,ulimit -n在我的会话重新启动并运行后,我只得到 4096(之前是 1024)。
我错过了什么?
Rin*_*ind 22
从手册:
-n The maximum number of open file descriptors (most
systems do not allow this value to be set)
Run Code Online (Sandbox Code Playgroud)
systemd 有一个选项:
$ more /etc/systemd/system.conf | grep NOFILE
#DefaultLimitNOFILE=
Run Code Online (Sandbox Code Playgroud)
但这也仅适用于图形用户设置。删除#,您可以将其设置为 65536。
DefaultLimitNOFILE=65536
Run Code Online (Sandbox Code Playgroud)
可能还需要
/etc/systemd/user.conf
Run Code Online (Sandbox Code Playgroud)
小智 13
Ubuntu 18.04 一步一步
希望所有这些都有帮助,很长但它有效(有证据)
我在 Ubuntu 18.04 上安装 MongoDb 时遇到了这个线程
https://posidev.com/blog/2009/06/04/set-ulimit-parameters-on-ubuntu/
正如你所看到的,它已经很老了,但它对我有用。
这是我所做的。
MongoDb 推荐设置(https://docs.mongodb.com/manual/reference/ulimit/#review-and-set-resource-limits)
检查我当前的限制
ubuntu@isdb-stage:~$ ulimit -a 核心文件大小(块,-c)0 数据段大小(千字节,-d)无限制 调度优先级 (-e) 0 文件大小(块,-f)无限制 待处理信号 (-i) 7873 最大锁定内存 (kbytes, -l) 16384 最大内存大小 (kbytes, -m) 无限制 打开文件 (-n) 1024 管道大小(512 字节,-p)8 POSIX 消息队列(字节,-q)819200 实时优先级 (-r) 0 堆栈大小(千字节,-s)8192 cpu时间(秒,-t)无限制 最大用户进程数 (-u) 7873 虚拟内存(千字节,-v)无限制 文件锁 (-x) 无限制
记下需要更改的内容
ubuntu 如何更改这些限制?
$ manlimits.conf
姓名
limit.conf - pam_limits 模块的配置文件
描述
pam_limits.so 模块将 ulimit 限制、良好优先级和同时登录会话数限制应用于用户登录会话。此配置文件语法说明适用于
/etc/security/limits.conf 文件和 *.conf 文件在
/etc/security/limits.d 目录。
这是该文件的开头,当然它甚至还有说明,记住这是好人写的开源!:)
vi /etc/security/limits.conf
# /etc/security/limits.conf
#每行描述一个用户的限制,格式如下:
#
#在哪里:
# 可:
# - 用户名
(如果您想了解更多详细信息,请自行查看该文件)
这是我的更改:-
mongodb 软内存锁无限 mongodb 硬内存锁无限 mongodb 软 nofile 64000 mongodb 硬文件 64000 mongodb 软 nproc 64000 mongodb 硬 nproc 64000
最后,最后,记住 man limits.conf 条目中的这一点。
limit.conf - pam_limits 模块的配置文件
最好确保加载了 pam_limits 模块,以便所有这些限制工作正常工作。为此,您可以编辑 /etc/pam.d/common-session。当然,这也在手册页中。
须藤vi /etc/pam.d/common-session # 添加此项以确保加载 pam_limits.so。 会话需要 pam_limits.so
重新启动将显示已应用限制(对于用户 mongodb)。如果您改为使用 '*' 应用它们,则无需切换到 mongodb 用户即可进行检查。只需执行此命令。
$ ulimit -a 核心文件大小(块,-c)0 数据段大小(千字节,-d)无限制 调度优先级 (-e) 0 文件大小(块,-f)无限制 待处理信号 (-i) 7873 最大锁定内存 (kbytes, -l) 无限制 最大内存大小 (kbytes, -m) 无限制 打开文件 (-n) 64000 管道大小(512 字节,-p)8 POSIX 消息队列(字节,-q)819200 实时优先级 (-r) 0 堆栈大小(千字节,-s)8192 cpu时间(秒,-t)无限制 最大用户进程 (-u) 64000 虚拟内存(千字节,-v)无限制 文件锁 (-x) 无限制
如您所见,lubbly jubbly 都设置为我们想要的限制。
Apt*_*ryx 12
我在 Ubuntu 20.04 上也遇到了同样的问题。
唯一需要更改的文件是/etc/security/limits.conf. 将该行附加* - nofile 100000到该文件并重新登录就可以了:
$ ulimit -Sn
100000
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
45012 次 |
| 最近记录: |