Linux /etc/security/limits.conf 文件

使用/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