服务器用户内存限制
使用 /etc/security/limits.conf 和 PAM 模块
步骤 1:编辑 /etc/security/limits.conf 文件
打开文件:
sudo vim /etc/security/limits.conf
添加以下内容到文件末尾:
* soft rss 33554432 # 软限额:32GB (单位 KB)
* hard rss 67108864 # 硬限额:64GB (单位 KB)
解释:
- * 表示对所有用户生效。
- rss 是 Resident Set Size(物理内存使用限制)。
- 单位是 KB,因此 32GB = 32 * 1024 * 1024 = 33554432。
步骤 2:确保 PAM 模块加载
编辑 /etc/pam.d/login:
sudo vim /etc/pam.d/login
确保包含以下内容(通常默认存在):
session required pam_limits.so
步骤 3:验证设置
重新登录非 root 用户账户,使用以下命令检查:
ulimit -a
输出中应包含:
max memory size (kbytes, -m): 33554432 # 软限额
max memory size (kbytes, -M): 67108864 # 硬限额