<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[linux下，Iptable加过滤IP时提示：iptables: Resource temporarily unavailable.的解决办法]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Unix/LinuxC技术]]></category>
<pubDate>Sat, 06 Dec 2014 13:39:11 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	背景：过滤蜘蛛程序，iptables出现：<br/>root@119.10.6.**:/usr/local/scripts# sh getRidOfSpam.sh <br/>iptables: Resource temporarily unavailable.<br/>iptables: Resource temporarily unavailable.<br/>iptables: Resource temporarily unavailable.<br/>iptables: Resource temporarily unavailable.<br/>iptables: Resource temporarily unavailable.<br/><textarea name="code" class="php" rows="15" cols="100">
/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.
 </textarea><br/><br/><br/><br/>iptables: Resource temporarily unavailable解决方法<br/> 由于线程数目超出了最大值。<br/>root用户下查看oracle用户可用的线程数目<br/>vi /etc/security/limits.conf<br/>显示内容类似如下：<br/>iptables soft&nbsp;&nbsp;&nbsp;&nbsp; nproc&nbsp;&nbsp; 2046<br/>iptables hard&nbsp;&nbsp;&nbsp;&nbsp; nproc&nbsp;&nbsp; 16384<br/>nproc就是&quot;max user processes&quot;， 修改soft的数目即可。<br/><br/>lsof &#124; grep iptables &#124; wc -l<br/>PHP的php-fpm进程打开文件居然有这么多，太恐怖了，重启一下先:<br/>lsof &#124; grep iptables &#124; wc -l<br/>21<br/>lsof &#124; grep php &#124; wc -l<br/>12970<br/>lsof &#124; grep nginx &#124; wc -l<br/>776<br/>lsof &#124; grep mysql &#124; wc -l&nbsp;&nbsp;&nbsp;&nbsp; <br/>134<br/>查看打开文件的具体信息:<br/>lsof &#124; grep iptables &gt; iptables.txt<br/><br/>参看：http://blog.itpub.net/12457158/viewspace-753400/<br/>————————————————————————————————————————<br/>ulimit -n 65535&nbsp;&nbsp;解决，但重启无效的解决办法：<br/>linux下，Iptable加过滤IP时提示：iptables: Resource temporarily unavailable.的解决办法<br/><br/>使用ulimit -a 可以查看当前系统的所有限制值，使用ulimit -n 可以查看当前的最大打开文件数。<br/><br/>新装的linux默认只有1024，当作负载较大的服务器时，很容易遇到error: too many open files。因此，需要将其改大。<br/><br/>使用 ulimit -n 65535 可即时修改，但重启后就无效了。（注ulimit -SHn 65535 等效 ulimit -n 65535，-S指soft，-H指hard)<br/><br/>有如下三种修改方式：<br/><br/>1.在/etc/rc.local 中增加一行 ulimit -n 65535<br/>2.在/etc/profile 中增加一行 ulimit -n 65535<br/>3.在/etc/security/limits.conf最后增加如下两行记录<br/>* soft nofile 65535<br/>* hard nofile 65535<br/><br/>具体使用哪种，试试哪种有效吧，我在 CentOS中使用第1种方式无效果，使用第3种方式有效果，而在Debian中使用第2种有效果<br/><br/>——————————————————————————————————————————————————————————————<br/>一)临时改变：<br/>设置各linux 用户的最大进程数，下面我把某linux用户的最大进程数设为10000个：<br/>ulimit -u 10000&nbsp;&nbsp;<br/>ulimit -a <br/>root@119.10.6.**:~# ulimit -a <br/>core file size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(blocks, -c) 0<br/>data seg size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (kbytes, -d) unlimited<br/>scheduling priority&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (-e) 0<br/>file size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (blocks, -f) unlimited<br/>pending signals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (-i) 46661<br/>max locked memory&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (kbytes, -l) 64<br/>max memory size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (kbytes, -m) unlimited<br/>open files&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-n) 65535&nbsp;&nbsp; (因为是tcp协议&nbsp;&nbsp;要打开套接字，要打开文件句柄，而单进程的最大打开文件句柄操作系统是有限制的，默认是1024)<br/>pipe size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(512 bytes, -p) 8<br/>POSIX message queues&nbsp;&nbsp;&nbsp;&nbsp; (bytes, -q) 819200<br/>real-time priority&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-r) 0<br/>stack size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(kbytes, -s) unlimited<br/>cpu time&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (seconds, -t) unlimited<br/>max user processes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-u) 10000<br/>virtual memory&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(kbytes, -v) unlimited<br/>file locks&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(-x) unlimited<br/><br/>二）永久性改变&nbsp;&nbsp;<br/>解除 Linux 系统的最大进程数和最大文件打开数限制： <br/>vi /etc/security/limits.conf <br/># 添加如下的行 <br/>* soft noproc 11000&nbsp;&nbsp;#软连接&nbsp;&nbsp;<br/>* hard noproc 11000&nbsp;&nbsp;#硬连接 <br/>* soft nofile 4100&nbsp;&nbsp; <br/>* hard nofile 4100 <br/><br/><textarea name="code" class="php" rows="15" cols="100">
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535
</textarea><br/>说明：* 代表针对所有用户，noproc 是代表最大进程数，nofile 是代表最大文件打开数 
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] linux下，Iptable加过滤IP时提示：iptables: Resource temporarily unavailable.的解决办法]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>