这是一个 Linux 系统常见的故障,网络上也能轻易的找到解决办法,我也只是在工作中遇到了这个问题,所以在博客记录下,以备不时之需。
图为 resin 的报错日志,很明显提示了 Too many open files:
临时的解决办法很简单,先执行 ulimit -n 65535,然后重启 resin 即可。
Ps:请注意启动环境是否生效:切换到 resin 的启动身份,执行 ulimit -n 查看当前的最大文件打开数是否已优化。
第①种做法:可讲 ulimit -n 65535 添加到 /etc/profile 的最后即可;
Shell
1 2 3 | echo "ulimit -n 65535" >>/etc/profile #刷新配置 source /etc/profile |
第②种做法:修改/etc/security/limits.conf 文件,在最后添加以下内容即可:
Shell
1 2 3 4 | * soft noproc 65535 * hard noproc 65535 * soft nofile 65535 * hard nofile 65535 |
或者直接执行如下代码亦可:
Shell
1 2 3 4 | echo '* soft noproc 65535 * hard noproc 65535 * soft nofile 65535 * hard nofile 65535'>>/etc/security/limits.conf |
使用第①种,登陆普通账号的时候,会报无权限错误,所以推荐使用第②种方法。
最后啰嗦下,不管使用哪一种方法,修改生效后,需要重启应用才行,否则程序将延续使用旧的环境设置。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!