如下命令可以了解相关信息
代码: 全选
cat /proc/sys/fs/file-max #得到的值比如 601324, 确保下面要设置的值比该值小
cat /proc/sys/fs/file-nr
sysctl -a | grep fs.file-max
ulimit -a
代码: 全选
ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 47557
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 47557
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
想把 open files 的数目改大点,是不让的
代码: 全选
ulimit -n 5120
先建立个三行的脚本,用来测试
代码: 全选
nano test.sh
代码: 全选
#!/bin/bash
ulimit -n
ulimit -n 5120
ulimit -n
代码: 全选
chmod +x test.sh
代码: 全选
cp ./test.sh /tmp/
sudo -u nobody /tmp/test.sh
代码: 全选
nano /etc/security/limits.conf
代码: 全选
nobody soft nofile 60000
nobody hard nofile 60000
代码: 全选
nano /etc/pam.d/common-session
nano /etc/pam.d/common-session-noninteractive
代码: 全选
session required pam_limits.so
代码: 全选
cp ./test.sh /tmp/
sudo -u nobody /tmp/test.sh
代码: 全选
60000
5120