/sbin/iptables -A INPUT -s 110.89.34.54 -j DROP
iptables: Resource temporarily unavailable.
/sbin/iptables -A INPUT -s 27.153.160.40 -j DROP
iptables: Resource temporarily unavailable.
/sbin/iptables -A INPUT -s 27.153.233.238 -j DROP
iptables: Resource temporarily unavailable.
/sbin/iptables -A INPUT -s 110.85.68.209 -j DROP
iptables: Resource temporarily unavailable.
/sbin/iptables -A INPUT -s 27.150.241.82 -j DROP
iptables: Resource temporarily unavailable.
解決方式:
由于线程数目超出了最大值。
root用户下查看oracle用户可用的线程数目
vi /etc/security/limits.conf
显示内容类似如下:
iptables soft nproc 2046
iptables hard nproc 16384
nproc就是"max user processes", 修改soft的数目即可。
lsof | grep iptables | wc -l
PHP的php-fpm进程打开文件居然有这么多,太恐怖了,重启一下先:
lsof | grep iptables | wc -l
21
lsof | grep php | wc -l
12970
lsof | grep nginx | wc -l
776
lsof | grep mysql | wc -l
134
查看打开文件的具体信息:
lsof | grep iptables > iptables.txt
参看:http://blog.itpub.net/12457158/viewspace-753400/
————————————————————————————————————————
ulimit -n 65535 解决,但重启无效的解决办法:
linux下,Iptable加过滤IP时提示:iptables: Resource temporarily unavailable.的解决办法
使用ulimit -a 可以查看当前系统的所有限制值,使用ulimit -n 可以查看当前的最大打开文件数。
新装的linux默认只有1024,当作负载较大的服务器时,很容易遇到error: too many open files。因此,需要将其改大。
使用 ulimit -n 65535 可即时修改,但重启后就无效了。(注ulimit -SHn 65535 等效 ulimit -n 65535,-S指soft,-H指hard)
有如下三种修改方式:
1.在/etc/rc.local 中增加一行 ulimit -n 65535
2.在/etc/profile 中增加一行 ulimit -n 65535
3.在/etc/security/limits.conf最后增加如下两行记录
* soft nofile 65535
* hard nofile 65535
具体使用哪种,试试哪种有效吧,我在 CentOS中使用第1种方式无效果,使用第3种方式有效果,而在Debian中使用第2种有效果