报错问题:
Linux系统下,服务的进程还跑着,端口缺不再监听了,报错如下:
Too many open files in system
原因是系统文件开的太多了。
通过以下命令可以查看系统文件总上限:
cat /proc/sys/fs/file-max
cat /proc/sys/fs/file-nr
Centos7下,以下命令修改文件上限:
实时修改:
sysctl -w fs.file-max=500000
永久修改:
vi /etc/sysctl.conf
增加内容 fs.file-max=500000 刷新
sysctl -p
通过以下命令可以查看单个用户limit
ulimit -n
Centos7下,以下命令修改单个用户文件上限:
#实时修改 ulimit -n 655350 #永久修改 vi /etc/security/limits.d/20-nproc.conf 添加内容:
#nproc
* soft nproc 655350
root soft nproc unlimited
* hard nproc 655350
root hard nproc unlimited
#nofile
* soft nofile 655350
* hard nofile 655350
centos-7 新增了
/etc/security/limits.d/20-nproc.conf
文件,并且该文件会覆盖/etc/security/limits.conf
的配置参数