在 Ubuntu 中,查看和设置 ulimit(用户资源限制)通常有以下几种方式:
ulimit -a
输出示例:
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 1024
max user processes (-u) 7090
...
ulimit -n # 打开文件数
ulimit -u # 最大用户进程数
ulimit -s # 栈大小
ulimit -c # core 文件大小
默认是软限制(soft limit),加
-H可看硬限制:
ulimit -Hn
/proccat /proc/<PID>/limits
例如:
cat /proc/1234/limits
prlimitprlimit --pid <PID>
/etc/security/limits.confcat /etc/security/limits.conf
以及:
ls /etc/security/limits.d/
示例:
* soft nofile 65535
* hard nofile 65535
如果是 systemd 服务:
systemctl show <service> | grep Limit
例如:
systemctl show nginx | grep LimitNOFILE
或在 service 文件中:
[Service]
LimitNOFILE=65535
ulimit -n 65535
⚠️ 仅对当前 session 有效,重启失效。
如果你是想查某个具体场景(如文件数、进程数、Docker、MySQL),可以告诉我,我给你更精确的方法。