简短结论:getconf 本身不能改系统限制,它只是“读取”配置/限制值的工具。
getconf 是什么getconf 用于查询系统配置参数,例如:
getconf LONG_BIT
getconf _POSIX_OPEN_MAX
getconf PAGESIZE
它:
✅ 所以:getconf 不能改系统限制
通过 ulimit 或 /etc/security/limits.conf
ulimit -n # 查看
ulimit -n 65536
持久化:
/etc/security/limits.conf
例:
* soft nofile 65536
* hard nofile 65536
⚠️ 需要 PAM + 重新登录生效
如果是 systemd 服务:
[Service]
LimitNOFILE=65536
LimitNPROC=4096
然后:
systemctl daemon-reload
systemctl restart xxx
sysctl -a
sysctl fs.file-max
修改:
/etc/sysctl.conf
fs.file-max = 1000000
sysctl -p
例如:
ARG_MAXPOSIX_THREAD_THREADS_MAX这些:
| 误解 | 事实 |
|---|---|
getconf 能改限制 |
❌ 只能查 |
ulimit 改了全局 |
❌ 只对当前 shell / 进程树 |
limits.conf 对所有进程生效 |
❌ 只对 PAM 登录会话 |
你可以告诉我:
open files、threads、stack)cat /etc/debian_version)我可以给你精确修改步骤。