使用/etc/security/limits.conf文件设置ulimit
UNIX/Linux 操作系统能够限制用户进程可用的各种系统资源的数量。
这些限制包括一个进程可以打开多少文件,用户可以创建多大的文件,以及进程的不同组件(如堆栈、数据和文本段)可以使用多少内存。
ulimit 是用于完成此操作的命令。
要在参数上设置 ulimit 值,请使用以下命令。
# ulimit -p [new_value]
为了使 ulimit 在重启后持续存在,我们需要在配置文件 /etc/security/limits.conf 中设置 ulimit 值。
/etc/security/limits.conf 中的设置采用以下形式:
# vi /etc/security/limits.conf #[domain] [type] [item] [value] * - core [value] * - data [value] * - priority [value] * - fsize [value] * soft sigpending [value] eg:57344 * hard sigpending [value] eg:57444 * - memlock [value] * - nofile [value] eg:1024 * - msgqueue [value] eg:819200 * - locks [value] * soft core [value] * hard nofile [value] @[group] hard nproc [value] [user] soft nproc [value] %[group] hard nproc [value] [user] hard nproc [value] @[group] - maxlogins [value] [user] hard cpu [value] [user] soft cpu [value] [user] hard locks [value]
[域] 可以是:
- 用户名
- 组名,使用@group 语法
- 通配符 * ,用于默认条目
- 通配符 % ,也可以与 %group 语法一起使用,用于最大登录限制
[type] 可以有两个值:
- “soft”用于强制执行软限制
- “hard” 用于强制执行硬限制
[item] 可以是以下之一:
- core - 限制核心文件大小 (KB)
- data - 最大数据大小 (KB)
- fsize - 最大文件大小 (KB)
- memlock - 最大锁定内存地址空间 (KB)
- nofile - 最大打开文件数
- rss - 最大驻留集大小 (KB)
- stack - 最大堆栈大小 (KB)
- cpu - 最大 CPU 时间 (MIN)
- nproc - 最大进程数
- as - 地址空间限制 (KB)
- maxlogins - 此用户的最大登录次数
- maxsyslogins - 系统上的最大登录次数
- priority - 运行用户进程的优先级
- locks - 用户可以持有的最大文件锁数
- sigpending - 最大挂起信号数
- msgqueue - POSIX 消息队列使用的最大内存(字节)
- nice - 允许的最大优先级提高到值:[-20, 19]
- rtprio - 最大实时优先级
可以从以下命令中找到更多详细信息:
# man limits.conf
日期:2020-09-17 00:14:32 来源:oir作者:oir