/etc/security/limits.conf 是一个配置文件,用于限制用户或进程在系统中可以使用的资源。
语法结构:
:指定要应用限制的目标对象,可以是用户(@)、用户组(@)或进程(、、<@group>、)。
:指定要限制的资源类型,例如 soft(软限制)和 hard(硬限制)。
:指定要限制的具体资源,例如 core(核心文件大小)、nofile(打开文件描述符数量)等。
:指定资源的限制值,可以是一个数值(代表具体数量)或 unlimited(无限制)。
限制类型():
soft:软限制,表示资源的可调整限制值,用户或进程可以在不超过该限制值时继续使用资源。
hard:硬限制,表示资源的最大限制值,用户或进程不能超过该限制值。
常见的资源项():
core:核心文件大小限制,指定生成的核心转储文件的最大大小。
nofile:打开文件描述符的数量限制,用于控制一个进程能够打开的文件数。
nproc:进程数量限制,指定用户或进程可以创建的子进程数量。
cpu:CPU 时间限制,用于限制一个进程可以使用的 CPU 时间。
memlock:内存锁定限制,用于限制一个进程可以锁定在物理内存中的最大字节数。
# 限制所有用户的核心文件大小为无限制
* hard core unlimited
# 限制用户 'user1' 的打开文件描述符数量为 1024
user1 soft nofile 1024
user1 hard nofile 2048
# 限制用户组 'group1' 的进程数量为 1000
@group1 soft nproc 1000
@group1 hard nproc 2000
# 限制进程 'process1' 的 CPU 时间为 2 小时
process1 soft cpu 7200
process1 hard cpu 10800
# 限制用户 'user2' 锁定在物理内存中的最大字节数为 1 GB
user2 soft memlock 1048576
user2 hard memlock 1048576