在 Debian 系统中,查看 ulimit 限制的方法主要有以下几种:
最直接的方法是在终端执行:
ulimit -a
这会列出当前用户、当前 shell 的所有资源限制,例如:
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 31235
virtual memory (kbytes, -v) unlimited
例如查看打开文件数限制:
ulimit -n
查看最大进程数:
ulimit -u
/proc假设进程 PID 为 1234:
cat /proc/1234/limits
输出示例:
Limit Soft Limit Hard Limit Units
Max open files 1024 4096 files
Max processes 31235 31235 processes
prlimitprlimit --pid 1234
cat /proc/sys/fs/file-max
查看当前已使用:
cat /proc/sys/fs/file-nr
查看:
cat /etc/security/limits.conf
以及:
ls /etc/security/limits.d/
如果是 systemd 管理的服务:
systemctl show <服务名> | grep Limit
例如:
systemctl show nginx | grep LimitNOFILE
如果你能说明是 普通用户、服务、还是 Docker 容器 的场景,我可以给你更精确的查看和修改方法。