<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>我的备忘录 &#187; xdanger</title>
	<atom:link href="http://www.nimab.org/author/xdanger/feed" rel="self" type="application/rss+xml" />
	<link>http://www.nimab.org</link>
	<description>穷困潦倒</description>
	<lastBuildDate>Mon, 29 Aug 2011 02:53:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Mac flush DNS 缓存</title>
		<link>http://www.nimab.org/2010/02/23/69.html</link>
		<comments>http://www.nimab.org/2010/02/23/69.html#comments</comments>
		<pubDate>Tue, 23 Feb 2010 01:56:56 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://www.nimab.org/?p=69</guid>
		<description><![CDATA[&#60; 10.5: lookupd -flushcache &#62;= 10.5: dscacheutil -flushcache]]></description>
			<content:encoded><![CDATA[<p>&lt; 10.5: lookupd -flushcache<br />
&gt;= 10.5: dscacheutil -flushcache</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2010/02/23/69.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>几行bash分析日志并报警强力蜘蛛</title>
		<link>http://www.nimab.org/2008/08/25/51.html</link>
		<comments>http://www.nimab.org/2008/08/25/51.html#comments</comments>
		<pubDate>Mon, 25 Aug 2008 10:45:57 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[bash]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[log]]></category>

		<guid isPermaLink="false">http://www.nimab.org/?p=51</guid>
		<description><![CDATA[被SB蜘蛛抓烦了，今天早上一看，有2个IP一小时就抓了我80G的页面，还都是动态页面。 首先让 Apache 记的日志最小化，好处不用说了。 SetEnvIfNoCase Request_URI \.gif$ dontlog SetEnvIfNoCase Request_URI \.jpg$ dontlog SetEnvIfNoCase Request_URI \.png$ dontlog SetEnvIfNoCase Request_URI \.swf$ dontlog SetEnvIfNoCase Request_URI \.css$ dontlog SetEnvIfNoCase Request_URI \.js$ dontlog SetEnvIfNoCase Request_URI \.ico$ dontlog CustomLog "&#124;/usr/local/sbin/cronolog /var/log/httpd/%Y-%m/%d-%H.ip" "%{X-Forwarded-For}i" env=!dontlog 因为我的 Apache 是躲在 n 层代理的后面，所以只能记录 %{X-Forwarded-For}，里面包含真实 IP，但是需要下一步分析去取出。 cd /var/log/httpd f=`date -d '1 hours ago' +%Y-%m/%d-%H.ip` ip=`sed 's#^\([0-9\.]\{1,\}\)[0-9 \.,\s]\{1,\}#\1#' [...]]]></description>
			<content:encoded><![CDATA[<p>被SB蜘蛛抓烦了，今天早上一看，有2个IP一小时就抓了我80G的页面，还都是动态页面。</p>
<p>首先让 Apache 记的日志最小化，好处不用说了。</p>
<p><code><br />
    SetEnvIfNoCase Request_URI \.gif$ dontlog<br />
    SetEnvIfNoCase Request_URI \.jpg$ dontlog<br />
    SetEnvIfNoCase Request_URI \.png$ dontlog<br />
    SetEnvIfNoCase Request_URI \.swf$ dontlog<br />
    SetEnvIfNoCase Request_URI \.css$ dontlog<br />
    SetEnvIfNoCase Request_URI \.js$  dontlog<br />
    SetEnvIfNoCase Request_URI \.ico$ dontlog<br />
    CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/%Y-%m/%d-%H.ip" "%{X-Forwarded-For}i" env=!dontlog<br />
</code></p>
<p>因为我的 Apache 是躲在 n 层代理的后面，所以只能记录 %{X-Forwarded-For}，里面包含真实 IP，但是需要下一步分析去取出。</p>
<p><code><br />
cd /var/log/httpd<br />
f=`date -d '1 hours ago' +%Y-%m/%d-%H.ip`<br />
ip=`sed 's#^\([0-9\.]\{1,\}\)[0-9 \.,\s]\{1,\}#\1#' $f | awk '{a[$1]++ } END{for(i in a){print a[i] " " i}}' | sort -rn | head`<br />
curl -u 机器人的饭否登录名:密码 -d status="$ip" http://api.fanfou.com/statuses/update.xml<br />
rm $f<br />
</code></p>
<p>测试下来一小时 10M 的 log，分析一下也就 3 秒左右，还有1秒是发送给饭否的报警的。如果记录的直接就是真实 IP，那可以去掉 sed 那段，分析应该还会快很多（log文件就小很多了）。</p>
<p>看到有夸张的，不是常规搜索引擎蜘蛛的话，就咔嚓掉。<br />
<code><br />
iptables -A INPUT -s xxx.xxx.xxx.xxx/29 -j DROP<br />
</code><br />
1          202.106.186.*        163蜘蛛<br />
2          202.108.36.*        163蜘蛛<br />
3          202.108.44.*        163蜘蛛<br />
4          202.108.45.*        163蜘蛛<br />
5          202.108.5.*        163蜘蛛<br />
6          202.108.9.*        163蜘蛛<br />
7          220.181.12.*        163蜘蛛<br />
8          220.181.13.*        163蜘蛛<br />
9          220.181.14.*        163蜘蛛<br />
10        220.181.15.*        163蜘蛛<br />
11        220.181.28.*        163蜘蛛<br />
12        220.181.31.*        163蜘蛛<br />
13        222.185.245.*        163蜘蛛<br />
14        202.165.100.*        3721蜘蛛<br />
15        220.181.19.*        百度蜘蛛<br />
16        159.226.50.*        百度蜘蛛<br />
17        202.108.11.*        百度蜘蛛<br />
18        202.108.22.*        百度蜘蛛<br />
19        202.108.23.*        百度蜘蛛<br />
20        202.108.249.*        百度蜘蛛<br />
21        202.108.250.*        百度蜘蛛<br />
22        61.135.145.*        百度蜘蛛<br />
23        61.135.146.*        百度蜘蛛<br />
24        64.124.85.*        become.com<br />
25        61.151.243.*        china蜘蛛<br />
26        202.165.96.*        gais.cs.ccu.edu.tw<br />
27        216.239.33.*        google蜘蛛<br />
28        216.239.35.*        google蜘蛛<br />
29        216.239.37.*        google蜘蛛<br />
30        216.239.39.*        google蜘蛛<br />
31        216.239.51.*        google蜘蛛<br />
32        216.239.53.*        google蜘蛛<br />
33        216.239.55.*        google蜘蛛<br />
34        216.239.57.*        google蜘蛛<br />
35        216.239.59.*        google蜘蛛<br />
36        64.233.161.*        google蜘蛛<br />
37        64.233.189.*        google蜘蛛<br />
38        66.102.11.*        google蜘蛛<br />
39        66.102.7.*        google蜘蛛<br />
40        66.102.9.*        google蜘蛛<br />
41        66.249.64.*        google蜘蛛<br />
42        66.249.65.*        google蜘蛛<br />
43        66.249.66.*        google蜘蛛<br />
44        66.249.71.*        google蜘蛛<br />
45        66.249.72.*        google蜘蛛<br />
46        72.14.207.*        google蜘蛛<br />
47        61.135.152.*        iask蜘蛛<br />
48        65.54.188.*        msn蜘蛛<br />
49        65.54.225.*        msn蜘蛛<br />
50        65.54.226.*        msn蜘蛛<br />
51        65.54.228.*        msn蜘蛛<br />
52        65.54.229.*        msn蜘蛛<br />
53        207.46.98.*        msn蜘蛛<br />
54        207.68.157.*        msn蜘蛛<br />
55        194.224.199.*        noxtrumbot<br />
56        220.181.8.*        Outfox<br />
57        221.239.209.*        Outfox<br />
58        217.212.224.*        psbot<br />
59        219.133.40.*        QQ蜘蛛<br />
60        202.96.170.*        QQ蜘蛛<br />
61        202.104.129.*        QQ蜘蛛<br />
62        61.135.157.*        QQ蜘蛛<br />
63        219.142.118.*        sina蜘蛛<br />
64        219.142.78.*        sina蜘蛛<br />
65        61.135.132.*        sohu蜘蛛<br />
66        220.181.26.*        sohu蜘蛛<br />
          220.181.19.*<br />
67        61.135.158.*        tom蜘蛛<br />
68        66.196.90.*        yahoo蜘蛛<br />
69        66.196.91.*        yahoo蜘蛛<br />
70        68.142.249.*        yahoo蜘蛛<br />
71        68.142.250.*        yahoo蜘蛛<br />
72        68.142.251.*        yahoo蜘蛛<br />
73        202.165.102.*        yahoo中国蜘蛛<br />
74        202.160.178.*        yahoo中国蜘蛛<br />
75        202.160.179.*        yahoo中国蜘蛛<br />
76        202.160.180.*        yahoo中国蜘蛛<br />
77        202.160.181.*        yahoo中国蜘蛛<br />
78        202.160.183.*        yahoo中国蜘蛛<br />
79        72.30.101.*        yahoo蜘蛛<br />
80        72.30.102.*        yahoo蜘蛛<br />
81        72.30.103.*        yahoo蜘蛛<br />
82        72.30.104.*        yahoo蜘蛛<br />
83        72.30.107.*        yahoo蜘蛛<br />
84        72.30.110.*        yahoo蜘蛛<br />
85        72.30.111.*        yahoo蜘蛛<br />
86        72.30.128.*        yahoo蜘蛛<br />
87        72.30.129.*        yahoo蜘蛛<br />
88        72.30.131.*        yahoo蜘蛛<br />
89        72.30.133.*        yahoo蜘蛛<br />
90        72.30.134.*        yahoo蜘蛛<br />
91        72.30.135.*        yahoo蜘蛛<br />
92        72.30.216.*        yahoo蜘蛛<br />
93        72.30.226.*        yahoo蜘蛛<br />
94        72.30.252.*        yahoo蜘蛛<br />
95        72.30.97.*        yahoo蜘蛛<br />
96        72.30.98.*        yahoo蜘蛛<br />
97        72.30.99.*        yahoo蜘蛛<br />
98        74.6.74.*        yahoo蜘蛛<br />
99        202.108.4.*        中搜蜘蛛<br />
100      202.108.4.*        中搜蜘蛛<br />
101      202.108.33.*      中搜蜘蛛<br />
102      202.96.51.*        中搜蜘蛛<br />
103      219.142.53.*        中搜蜘蛛 </p>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2008/08/25/51.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>分阶段的人生</title>
		<link>http://www.nimab.org/2008/07/02/48.html</link>
		<comments>http://www.nimab.org/2008/07/02/48.html#comments</comments>
		<pubDate>Wed, 02 Jul 2008 06:55:33 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://www.nimab.org/?p=48</guid>
		<description><![CDATA[有一天,神创造了一头牛. 神对牛说:「你要整天在田里替农夫耕田,供应牛奶给人类饮用. 你要工作直至日落，而你只能吃草.我给你50年的寿命.」 牛抗议:「我这么辛苦，还只能吃草，我只要20年寿命，余下的还给你.」神答应了. 第二天,神创造了猴子. 神跟猴子说:「你要娱乐人类,令他们欢笑你要表演翻跟斗 ,而你只能吃香蕉.我给你20年的寿命.」 猴子抗议:「要引人发笑,表演杂技,还要翻跟斗,这么辛苦,我活10年好了.」 神答应. 第三天,神创造了狗. 神对狗说:「你要站在门口吠.你吃主人吃剩的东西.我给你25年的寿命.」 狗抗议:「整天坐在门口吠,我要15年好了,余下的还给你.」 神答应. 第四天,神创造了人.神对人说:「你只需要睡觉,吃东西和玩耍,不用做什么辛苦的事,只需要尽情享受生命,我 给你20年的寿命.」 人抗议:「这么好的生活只有20年」神没说话. 人对神说「这样吧.牛还了30年给你，猴子还了10年，狗也还了10年，这些都给我好了，那我就能活到70岁.」神答应了. 这就是为甚么,我们的头20年,只需吃饭.睡觉和玩耍. 之后的30年,我们像一条牛整天工作养家，. 接著的10年,我们退休了,我们得像只猴子表演杂耍来娱乐自己的孙儿， 最后的10年，整天留在家里，像一条狗坐在门口旁边看……]]></description>
			<content:encoded><![CDATA[<p>有一天,神创造了一头牛. 神对牛说:「你要整天在田里替农夫耕田,供应牛奶给人类饮用. 你要工作直至日落，而你只能吃草.我给你50年的寿命.」<br />
牛抗议:「我这么辛苦，还只能吃草，我只要20年寿命，余下的还给你.」神答应了.<br />
第二天,神创造了猴子. 神跟猴子说:「你要娱乐人类,令他们欢笑你要表演翻跟斗 ,而你只能吃香蕉.我给你20年的寿命.」<br />
猴子抗议:「要引人发笑,表演杂技,还要翻跟斗,这么辛苦,我活10年好了.」 神答应.<br />
第三天,神创造了狗. 神对狗说:「你要站在门口吠.你吃主人吃剩的东西.我给你25年的寿命.」<br />
狗抗议:「整天坐在门口吠,我要15年好了,余下的还给你.」 神答应.<br />
第四天,神创造了人.神对人说:「你只需要睡觉,吃东西和玩耍,不用做什么辛苦的事,只需要尽情享受生命,我 给你20年的寿命.」<br />
人抗议:「这么好的生活只有20年」神没说话.<br />
人对神说「这样吧.牛还了30年给你，猴子还了10年，狗也还了10年，这些都给我好了，那我就能活到70岁.」神答应了.<br />
这就是为甚么,我们的头20年,只需吃饭.睡觉和玩耍.<br />
之后的30年,我们像一条牛整天工作养家，.<br />
接著的10年,我们退休了,我们得像只猴子表演杂耍来娱乐自己的孙儿，<br />
最后的10年，整天留在家里，像一条狗坐在门口旁边看……   </p>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2008/07/02/48.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>新装 Leopard 安装开发环境全记录</title>
		<link>http://www.nimab.org/2008/03/16/30.html</link>
		<comments>http://www.nimab.org/2008/03/16/30.html#comments</comments>
		<pubDate>Sun, 16 Mar 2008 10:40:20 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[MacosX]]></category>

		<guid isPermaLink="false">http://www.nimab.org/2008/03/16/30.html</guid>
		<description><![CDATA[前期工作 安装光盘里的 Xcode，或者下载 iPhone SDK，2.1G，包括了最新的 Xcode 和 iPhone SDK。 安装好后会有 apache-2.2.6 / php-5.2.5 / ruby-1.8.6 / rails-1.2.6 / python-2.5.1 / java-1.5.0_13 / sqlite-3.4.0 …… gcc 会有2个版本：4.0.1 和 4.2.1，默认 /usr/bin/gcc 软连到 gcc-4.0，我们先让默认的 gcc 改用 4.2（2007年1月就 release 了，Changelog） cd /usr/bin sudo unlink gcc sudo ln -s gcc-4.2 gcc 设置全局编译参数，编辑 /etc/profile，加上下面的全局变量，保存后重启终端 export MACOSX_DEPLOYMENT_TARGET=10.5 export ARCHFLAGS='-arch x86_64' export CFLAGS='-arch [...]]]></description>
			<content:encoded><![CDATA[<h3>前期工作</h3>
<p>安装光盘里的 Xcode，或者下载 <a href="http://developer.apple.com/iphone/">iPhone SDK</a>，2.1G，包括了最新的 Xcode 和 iPhone SDK。</p>
<p>安装好后会有 apache-2.2.6 / php-5.2.5 / ruby-1.8.6 / rails-1.2.6 / python-2.5.1 / java-1.5.0_13 / sqlite-3.4.0 …… gcc 会有2个版本：<a href="http://gcc.gnu.org/gcc-4.0/">4.0.1</a> 和 <a href="http://gcc.gnu.org/gcc-4.2/">4.2.1</a>，默认 /usr/bin/gcc 软连到 gcc-4.0，我们先让默认的 gcc 改用 4.2（2007年1月就 release 了，<a href="http://gcc.gnu.org/gcc-4.2/changes.html">Changelog</a>）</p>
<div class="hl-surround" ><div class="hl-main"><pre>cd /usr/bin
sudo unlink gcc
sudo ln -s gcc-4.2 gcc</pre></div></div>
<p>设置全局编译参数，编辑 /etc/profile，加上下面的全局变量，保存后重启终端</p>
<div class="hl-surround" ><div class="hl-main"><pre>export MACOSX_DEPLOYMENT_TARGET=10.5
export ARCHFLAGS='-arch x86_64'
export CFLAGS='-arch x86_64 -O3 -pipe'
export CXXFLAGS=$CFLAGS
export LDFLAGS='-arch x86_64 -bind_at_load'</pre></div></div>
<p>如果需要编译兼容 i386、ppc、ppc64 版本的（编译出来的文件会增大不少），只要加上相应的 -arch 即可</p>
<div class="hl-surround" ><div class="hl-main"><pre>export CFLAGS=&quot;-arch ppc -arch ppc64 -arch i386 -arch x86_64 -O3 -pipe&quot;
export CXXFLAGS=$CFLAGS
export LDFLAGS=&quot;-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load&quot;</pre></div></div>
<p>如果需要编译针对 CPU 优化的，Apple 全系列已经升级到 Intel Core Duo，所以可以加上以下参数</p>
<div class="hl-surround" ><div class="hl-main"><pre>CHOST=&quot;x86_64-pc-linux-gnu&quot;
CFLAGS=&quot;-march=nocona -O2 -pipe&quot;
CXXFLAGS=&quot;${CFLAGS}&quot;</pre></div></div>
<p><a href="http://www.gentoo.org/doc/en/faq.xml#optimizations">-O 使用 O3</a>，其他详见 <a href="http://www.gentoo-wiki.com/Safe_Cflags">http://www.gentoo-wiki.com/Safe_Cflags</a></p>
<p>因此我自己编译的最终参数是</p>
<div class="hl-surround" ><div class="hl-main"><pre>export MACOSX_DEPLOYMENT_TARGET=10.5
export ARCHFLAGS='-arch x86_64'
export CFLAGS='-arch x86_64 -march=nocona -pipe -O3 -pipe'
export CXXFLAGS=$CFLAGS
export LDFLAGS='-arch x86_64 -bind_at_load'</pre></div></div>
<h3>Java</h3>
<p>虽然 Apple 总算在 2008年2月 放出了 <a href="http://developer.apple.com/java/download/">JDK6 Preview</a>，但是问题还是非常多。我们还是用 BSD 的一个移植版本 <a href="http://landonf.bikemonkey.org/static/soylatte/">Soylatte</a>，直接下载 64-bit JDK for Mac OS X 10.5: <a href="http://hg.bikemonkey.org/archive/javasrc_1_6_jrl_darwin/soylatte16-amd64-1.0.2.tar.bz2">soylatte16-amd64-1.0.2.tar.bz2</a> (Username: 'jrl'，Password: 'I am a Licensee in good standing')<br />
解压后放到 /usr/local/soylatte16-amd64，软连 /usr/local/java 到这个目录：</p>
<div class="hl-surround" ><div class="hl-main"><pre>cd /usr/local; sudo ln -s soylatte16-amd64 java
cd /System/Library/Frameworks/JavaVM.framework/Versions/; sudo mkdir soylatte16-amd64
cd soylatte16-amd64; sudo ln -s /usr/local/java Home; sudo ln -s ./Home/bin ./Commands
cd ../A; sudo mv Commands Commands.bak; sudo ln -s ../CurrentJDK/Commands ./
cd ..; sudo unlink CurrentJDK; sudo ln -s soylatte16-amd64 CurrentJDK
java -version</pre></div></div>
<p>显示如下，Java 就算搞定了</p>
<div class="hl-surround" ><div class="hl-main"><pre>java version &quot;1.6.0_03-p3&quot;
Java(TM) SE Runtime Environment (build 1.6.0_03-p3-landonf_03_feb_2008_01_32-b00)
Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_03-p3-landonf_03_feb_2008_01_32-b00, mixed mode)</pre></div></div>
<h3>基本库和命令</h3>
<p><b>libtool</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>curl http://ftp.gnu.org/gnu/libtool/libtool-1.5.26.tar.gz &amp;gt; libtool-1.5.26.tar.gz
tar xzf libtool-1.5.26.tar.gz
cd libtool-1.5.26
./configure
make
sudo make install</pre></div></div>
<p><b>zlib</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>curl http://www.zlib.net/zlib-1.2.3.tar.gz &amp;gt; zlib-1.2.3.tar.gz
tar xzf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
make
sudo make install</pre></div></div>
<p><b>openssl/libssl</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>curl http://www.openssl.org/source/openssl-0.9.8g.tar.gz &amp;gt; openssl-0.9.8g.tar.gz
tar xzf openssl-0.9.8g.tar.gz
cd openssl-0.9.8g
./config --prefix=/usr/local --openssldir=/openssl threads zlib-dynamic
vi Makefile
# OPTIONS 里去掉 no-sse2 来开启 CPU 的 SSE2 指令集支持
# CFLAG 里 -arch i386 改为 -arch x86_64
# SHARED_LDFLAGS 同上
make
sudo make install
cd /usr/local/bin
sudo ln -s ../openssl/bin/* ./</pre></div></div>
<p><b>wget</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>curl http://ftp.gnu.org/gnu/wget/wget-1.11.tar.bz2 &amp;gt; wget-1.11.tar.bz2
tar xjf wget-1.11.tar.bz2
cd wget-1.11.tar.bz2
./configure --with-libssl-prefix=/usr/local/openssl
make
sudo make install</pre></div></div>
<p><b>libpng</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://downloads.sourceforge.net/libpng/lpng1225.tar.bz2 -O libpng-1.2.25.tar.bz2
tar xjf libpng-1.2.25.tar.bz2
cd libpng-1.2.25
./configure
make
sudo make install</pre></div></div>
<p><b>libjpeg</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://freshmeat.net/redir/libjpeg/5665/url_tgz/jpegsrc.v6b.tar.gz
tar xzf jpegsrc.v6b.tar.gz
cd jpeg-6b
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .
./configure --enable-shared --enable-static
make
sudo mkdir -p /usr/local/man/man1
sudo make install -lib</pre></div></div>
<p><b>freetype</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://download.savannah.gnu.org/releases/freetype/freetype-2.3.5.tar.gz
tar xzf freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure
make
sudo make install</pre></div></div>
<p><b>fontconfig</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://fontconfig.org/release/fontconfig-2.5.91.tar.gz
tar xzf fontconfig-2.5.91.tar.gz
cd fontconfig-2.5.91
./configure --prefix=/usr/local --with-zlib --with-jpeg --with-png --with-freetype --disable-dependency-tracking
make
sudo make install</pre></div></div>
<p><b>gd2</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://www.libgd.org/releases/gd-2.0.35.tar.bz2
tar xjf gd-2.0.35.tar.bz2
cd gd-2.0.35
./configure --with-fontconfig=/usr/local/bin --disable-dependency-tracking
make
sudo make install</pre></div></div>
<p><b>ImageMagick</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.3.9-7.tar.bz2
tar xjf ImageMagick-6.3.9-7.tar.bz2
cd ImageMagick-6.3.9
./configure --with-fontconfig
make
sudo make install</pre></div></div>
<p><b>mysql</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.51a.tar.gz/from/http://mirror.services.wisc.edu/mysql/
tar xzf mysql-5.0.51a.tar.gz
cd mysql-5.0.51a
./configure --with-mysql-user=mysql --with-mysql-group=mysql --with-innodb --with-archive-storage-engine --with-ndbcluster --with-zlib-dir=/usr/local --with-pthread --with-extra-charsets=utf8 --disable-dependency-tracking
make
sudo make install</pre></div></div>
<p><b>neon</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://www.webdav.org/neon/neon-0.25.5.tar.gz
tar xzf neon-0.25.5.tar.gz
cd neon-0.25.5
./configure --with-ssl=openssl
make
sudo make install</pre></div></div>
<p><b>Berkeley DB</b></p>
<div class="hl-surround" ><div class="hl-main"><pre># 为了让 subversion-1.4.6 使用，只能用 db-4.4 版本的
wget http://download.oracle.com/berkeley-db/db-4.4.20.tar.gz
tar xzf db-4.4.20.tar.gz
cd db-4.4.20/build_unix
make
sudo make install
cd /usr/local/; sudo ln -s BerkeleyDB.4.4 bdb</pre></div></div>
<p><b>subversion</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.8.tar.bz2
tar xjf httpd-2.2.8.tar.bz2
wget http://subversion.tigris.org/downloads/subversion-1.4.6.tar.bz2
tar xjf subversion-1.4.6.tar.bz2
cd subversion-1.4.6
cp -r ../httpd-2.2.8/srclib/apr* ./
./configure --with-apxs=/usr/sbin/apxs --with-berkeley-db=/usr/local/bdb --with-ssl
make
sudo make install</pre></div></div>
<p><b>libevent</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://www.monkey.org/~provos/libevent-1.4.2-rc.tar.gz
tar xzf libevent-1.4.2-rc.tar.gz
cd libevent-1.4.2-rc
./configure
make
sudo make install</pre></div></div>
<p><b>memcached</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://www.danga.com/memcached/dist/memcached-1.2.5.tar.gz
tar xzf memcached-1.2.5.tar.gz
cd memcached-1.2.5
./configure
make
sudo make install</pre></div></div>
<p><b>pcre</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://nchc.dl.sourceforge.net/sourceforge/pcre/pcre-7.6.tar.bz2
tar xjf pcre-7.6.tar.bz2
cd pcre-7.6
./configure --enable-utf8
make
sudo make install</pre></div></div>
<p><b>pkg-config</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz
tar xzf pkg-config-0.23.tar.gz
cd pkg-config-0.23
make
sudo make install
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig</pre></div></div>
<p><b>libxml2</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget ftp://xmlsoft.org/libxml2/libxml2-2.6.31.tar.gz
tar xzf libxml2-2.6.31.tar.gz
cd libxml2-2.6.31</pre></div></div>
<p><b>lighttpd</b></p>
<div class="hl-surround" ><div class="hl-main"><pre>wget http://www.lighttpd.net/download/lighttpd-1.4.19.tar.bz2
tar xjf lighttpd-1.4.19.tar.bz2
cd lighttpd-1.4.19
./configure --with-openssl --with-zlib --without-bzip2 --with-pcre  --with-gdbm --with-memcache --with-ldap
make
sudo make install</pre></div></div>
<p>好像大功告成了，还缺啥嘛？</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2008/03/16/30.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>关羽、张飞的武功的来历</title>
		<link>http://www.nimab.org/2008/03/14/28.html</link>
		<comments>http://www.nimab.org/2008/03/14/28.html#comments</comments>
		<pubDate>Fri, 14 Mar 2008 02:34:25 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[8diagrams]]></category>

		<guid isPermaLink="false">http://www.nimab.org/2008/03/14/28.html</guid>
		<description><![CDATA[看三国最让人不解的是那些超一流武将从一登场就有超一流的武功，至于这些武功是怎么来的，罗老先生却惜墨如金，不像金庸的人物，武功都是一天天炼出来的。即使如全庸金康之流，笔下人物也还能喝点蛇血什么的，内功一下暴涨60年，总算有个交待。 三国武将的武功自然不是喝蛇血喝出来的，那是不是一天天炼出来的呢？武将之中，张飞关羽的早期经历写的稍微多一点，我们就以这哥俩为例作一分析。 张飞简历：“某姓张，名飞，字翼德。世居涿郡，颇有庄田，卖酒屠猪，专好结交天下豪杰。恰才见公看榜而叹，故此相问。” 关羽简历：“吾姓关，名羽，字长生，后改云长，河东解良人也。因本处势豪，倚势凌人，被吾杀了；逃难江湖，五六年矣。今闻此处招军破贼，特来应募。” 两位都没有提自己的武功，连“自幼习武”这句都没说。更重要的是随后的情节。刘关张决定起兵后，“云长造青龙偃月刀，又名”冷艳锯“，重八十二斤。张飞造丈八点钢矛。”你看，在这之前，两位连兵器都没有。关羽还好说，毕竟扛着八十二斤的大刀逃难有点困难。张飞就不该了，有钱有房，要是练武，不至于连一杆像样的矛都造不起。 可见他们平时并不练武。 那关羽张飞的武功到底是怎么来的呢？ 他们的武功来自他们的职业！ 据北京体育大学武术学院的网站，“马克思主义认为，人类的生产活动是最基本的实践活动，是决定其他一切活动的东西。武术的产生，从来就是有生产活动决定的。” 关羽张飞也不能有例外。 汉末，武术还没有系统化，不具备通过向师傅学习成为武林高手的条件。要想成为高手，一要有天生体格，二要悟性高，能从生产活动中领悟攻防技术。以此为指导，我们来分析张飞关羽的武功与职业的关系。 张飞的主要职业是杀猪。杀猪要用杀猪刀。和张飞的兵器不同，但技术特点一致。杀猪时不是用杀猪刀砍，而是捅。所以本质上杀猪刀不是刀，而是和矛类似。猪杀死后要去毛，去毛前要给猪充气，使皮肤绷紧。通常做法是用铁钎从后啼一直捅到腹部，然后拔出铁钎，往腹部充气。张飞没有打气筒，只能用嘴吹。铁钎就是小号的矛，所以张飞自然选矛作武器。 另外，长期给猪吹气，张飞练就了巨大的肺活量，才能在长板坡前一声吼，吓退曹操百万兵。 三国演义中没有提关羽的职业，但大家都知道，关羽在逃亡途中卖过枣。卖了五六年的枣，怎么说也是一种职业了。关羽不擅生意，买不出好价钱，但仍能维持生计，说明其进货渠道不一般。如果正常付款进货，本钱早就陪光了。关羽有案在身，不大可能去抢枣。再说，要抢也应该去抢钱。关羽只能自己去枣园打枣。枣园是地主豪强的，打他的枣就是斗地主，不用付钱，心安理得。为了少惹麻烦，关羽总是穿一身绿，见有人来，便爬到枣树上躲起来。一身绿衣，一张枣红脸，藏在枣树上谁也别想看着。 想必关羽不会爱惜枣树，只顾拿大竹竿一通猛打。上高中时半夜拿大竹竿偷过学校的柿子，深知在枝叶中挥动竹竿需要多大的力气。关羽如此打了五六年，练就无穷臂力。从技术特点看，挥动竹竿和挥动大刀完全相同。所以关羽选择了八十二斤的大刀。 打枣成就了关羽的武功，也造成关羽武功的严重缺陷。 关羽曾和赵云在牛头山打过一仗。这场战斗发生在一条山道上，山道两旁全是树。 “关羽奋然上马，倒提青龙刀，凤目圆睁，蚕眉直竖，直冲卧牛山。遍山树枝如波开浪裂，关公径奔一白杨树。赵云见关羽不来斗将，却入无人之境，方欲问时，关羽赤兔马快，早到树前，手起一刀，将白杨树折做两段。” 关羽的武功源自打枣。在冲锋时精神高度集中，道旁的树木钩起了本能反应，挥刀直奔树木而去，大大出了一回洋相。 关羽也因此弱点被擒，丢了性命。 关羽冲出麦城，沿一条山路逃跑，不想赤兔马被绊倒，关羽落马被马忠所擒。关羽即使落马，但功夫仍在，马忠乃无名之辈，如何擒得关羽？想马超也曾步战，杀得韩遂及手下五将血肉横飞。关羽虽疲惫，对付一个马忠理应绰绰有余。怎奈又是山路，山路两旁又是树木。关羽举刀欲战，却见两旁树木众多，一时不知该砍哪棵。犹豫半分钟，早被马忠绑定。 总结：通过分析关羽张飞的武功特点及典型战例，我们得出结论，关羽张飞的武功源自他们的职业。我们相信该结论可推广到所有三国武将。根据此结论，我们可以分析各武将的弱点，从而设计合理战术，轻松打败他们。]]></description>
			<content:encoded><![CDATA[<p>看三国最让人不解的是那些超一流武将从一登场就有超一流的武功，至于这些武功是怎么来的，罗老先生却惜墨如金，不像金庸的人物，武功都是一天天炼出来的。即使如全庸金康之流，笔下人物也还能喝点蛇血什么的，内功一下暴涨60年，总算有个交待。</p>
<p>三国武将的武功自然不是喝蛇血喝出来的，那是不是一天天炼出来的呢？武将之中，张飞关羽的早期经历写的稍微多一点，我们就以这哥俩为例作一分析。</p>
<p>张飞简历：“某姓张，名飞，字翼德。世居涿郡，颇有庄田，卖酒屠猪，专好结交天下豪杰。恰才见公看榜而叹，故此相问。”</p>
<p>关羽简历：“吾姓关，名羽，字长生，后改云长，河东解良人也。因本处势豪，倚势凌人，被吾杀了；逃难江湖，五六年矣。今闻此处招军破贼，特来应募。”</p>
<p>两位都没有提自己的武功，连“自幼习武”这句都没说。更重要的是随后的情节。刘关张决定起兵后，“云长造青龙偃月刀，又名”冷艳锯“，重八十二斤。张飞造丈八点钢矛。”你看，在这之前，两位连兵器都没有。关羽还好说，毕竟扛着八十二斤的大刀逃难有点困难。张飞就不该了，有钱有房，要是练武，不至于连一杆像样的矛都造不起。</p>
<p>可见他们平时并不练武。</p>
<p>那关羽张飞的武功到底是怎么来的呢？</p>
<p>他们的武功来自他们的职业！</p>
<p>据北京体育大学武术学院的网站，“马克思主义认为，人类的生产活动是最基本的实践活动，是决定其他一切活动的东西。武术的产生，从来就是有生产活动决定的。”</p>
<p>关羽张飞也不能有例外。</p>
<p>汉末，武术还没有系统化，不具备通过向师傅学习成为武林高手的条件。要想成为高手，一要有天生体格，二要悟性高，能从生产活动中领悟攻防技术。以此为指导，我们来分析张飞关羽的武功与职业的关系。</p>
<p>张飞的主要职业是杀猪。杀猪要用杀猪刀。和张飞的兵器不同，但技术特点一致。杀猪时不是用杀猪刀砍，而是捅。所以本质上杀猪刀不是刀，而是和矛类似。猪杀死后要去毛，去毛前要给猪充气，使皮肤绷紧。通常做法是用铁钎从后啼一直捅到腹部，然后拔出铁钎，往腹部充气。张飞没有打气筒，只能用嘴吹。铁钎就是小号的矛，所以张飞自然选矛作武器。</p>
<p>另外，长期给猪吹气，张飞练就了巨大的肺活量，才能在长板坡前一声吼，吓退曹操百万兵。</p>
<p>三国演义中没有提关羽的职业，但大家都知道，关羽在逃亡途中卖过枣。卖了五六年的枣，怎么说也是一种职业了。关羽不擅生意，买不出好价钱，但仍能维持生计，说明其进货渠道不一般。如果正常付款进货，本钱早就陪光了。关羽有案在身，不大可能去抢枣。再说，要抢也应该去抢钱。关羽只能自己去枣园打枣。枣园是地主豪强的，打他的枣就是斗地主，不用付钱，心安理得。为了少惹麻烦，关羽总是穿一身绿，见有人来，便爬到枣树上躲起来。一身绿衣，一张枣红脸，藏在枣树上谁也别想看着。</p>
<p>想必关羽不会爱惜枣树，只顾拿大竹竿一通猛打。上高中时半夜拿大竹竿偷过学校的柿子，深知在枝叶中挥动竹竿需要多大的力气。关羽如此打了五六年，练就无穷臂力。从技术特点看，挥动竹竿和挥动大刀完全相同。所以关羽选择了八十二斤的大刀。</p>
<p>打枣成就了关羽的武功，也造成关羽武功的严重缺陷。</p>
<p>关羽曾和赵云在牛头山打过一仗。这场战斗发生在一条山道上，山道两旁全是树。</p>
<p>“关羽奋然上马，倒提青龙刀，凤目圆睁，蚕眉直竖，直冲卧牛山。遍山树枝如波开浪裂，关公径奔一白杨树。赵云见关羽不来斗将，却入无人之境，方欲问时，关羽赤兔马快，早到树前，手起一刀，将白杨树折做两段。”</p>
<p>关羽的武功源自打枣。在冲锋时精神高度集中，道旁的树木钩起了本能反应，挥刀直奔树木而去，大大出了一回洋相。</p>
<p>关羽也因此弱点被擒，丢了性命。</p>
<p>关羽冲出麦城，沿一条山路逃跑，不想赤兔马被绊倒，关羽落马被马忠所擒。关羽即使落马，但功夫仍在，马忠乃无名之辈，如何擒得关羽？想马超也曾步战，杀得韩遂及手下五将血肉横飞。关羽虽疲惫，对付一个马忠理应绰绰有余。怎奈又是山路，山路两旁又是树木。关羽举刀欲战，却见两旁树木众多，一时不知该砍哪棵。犹豫半分钟，早被马忠绑定。</p>
<p>总结：通过分析关羽张飞的武功特点及典型战例，我们得出结论，关羽张飞的武功源自他们的职业。我们相信该结论可推广到所有三国武将。根据此结论，我们可以分析各武将的弱点，从而设计合理战术，轻松打败他们。 </p>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2008/03/14/28.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>交叉编译jpeg库的问题</title>
		<link>http://www.nimab.org/2008/03/11/27.html</link>
		<comments>http://www.nimab.org/2008/03/11/27.html#comments</comments>
		<pubDate>Tue, 11 Mar 2008 06:20:14 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[bash]]></category>

		<guid isPermaLink="false">http://www.nimab.org/2008/03/11/27.html</guid>
		<description><![CDATA[./configure --enable-shared --enable-static 加了 --enable-shared 或者 --enable-statics 就会报 ltconfig: cannot guess host type; you must specify one 方法是安装最新版的 libtool 然后 cp /usr/share/libtool/config.sub . cp /usr/share/libtool/config.guess . ./configure --enable-shared --enable-static make; make install]]></description>
			<content:encoded><![CDATA[<div class="hl-surround" style="height:28px;"><div class="hl-main"><pre>./configure --enable-shared --enable-static</pre></div></div>
<p>加了 --enable-shared 或者 --enable-statics 就会报</p>
<div class="hl-surround" style="height:28px;"><div class="hl-main"><pre>ltconfig: cannot guess host type; you must specify one</pre></div></div>
<p>方法是安装最新版的 <a href="http://ftp.gnu.org/gnu/libtool/">libtool</a> 然后</p>
<div class="hl-surround" ><div class="hl-main"><pre>cp /usr/share/libtool/config.sub . 
cp /usr/share/libtool/config.guess . 
./configure --enable-shared --enable-static 
make; make install</pre></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2008/03/11/27.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>洪七公生平简介</title>
		<link>http://www.nimab.org/2008/02/12/26.html</link>
		<comments>http://www.nimab.org/2008/02/12/26.html#comments</comments>
		<pubDate>Tue, 12 Feb 2008 02:18:58 +0000</pubDate>
		<dc:creator>xdanger</dc:creator>
				<category><![CDATA[8diagrams]]></category>

		<guid isPermaLink="false">http://www.nimab.org/2008/02/12/26.html</guid>
		<description><![CDATA[　　洪七公原名洪七，他不光杀了王重阳，江南5怪其实都是他杀的 　　 　　王重阳的秘密是他偷走了辟邪剑法，然后就亲自练了，他无法躲闪林朝英的纠缠，就只好以 "国将不国，何以家为" 的口号躲避她，由于练了辟邪剑法，王重阳轻功极高，再加上他爱吃素食，整天神神秘秘的，所以大家叫他 "中神通。" 　　 　　中神通有一个徒弟，一个传授了辟邪剑法的徒弟，就是洪七， 由于洪七也自宫了，所以中神通叫他 "洪七公公" 　　 　　师徒二人惺惺相惜，到也相处的融洽，直到有一天，中神通的辟邪剑法练到了东方不败的地步，他开始把洪( 练辟邪剑法的人最终会发展到两个层次，一是东方不败的类型，就是对别人有性骚扰的， 二是岳不群，林平之类型的，对别人无害) 　　 　　洪七公公迫不得己杀了中神通，碰巧给江南7怪撞见了，7怪看到辟邪剑法怪异的情景，急忙逃跑了， 而洪七公公只看到了7个人的身影，作贼心虚，就没有追赶。 　　 　　江南7怪害怕辟邪剑法，一直跑到了大漠，于是就躲了起来，他们一边训练郭靖，一边苦练功夫，时刻准备敌人来灭口，这一躲就是18年. 　　 　　中神通已死，全真教也待不下去了，洪七公公还要暗中查访那七个人，到哪里立足呢?，丐帮是个好去处，入丐帮的时候，他将名字中一个’公‘字去掉，就成了洪七公 　　 　　洪七公生性好学，每天勤学苦练，他一腔精力无处发泄，加上辟邪剑法的轻功，洪七公很快就练就了打狗棒法和降龙18掌，并且当上了丐帮帮主]]></description>
			<content:encoded><![CDATA[<p>　　洪七公原名洪七，他不光杀了王重阳，江南5怪其实都是他杀的<br />
　　<br />
　　王重阳的秘密是他偷走了辟邪剑法，然后就亲自练了，他无法躲闪林朝英的纠缠，就只好以 "国将不国，何以家为" 的口号躲避她，由于练了辟邪剑法，王重阳轻功极高，再加上他爱吃素食，整天神神秘秘的，所以大家叫他 "中神通。"<br />
　　<br />
　　中神通有一个徒弟，一个传授了辟邪剑法的徒弟，就是洪七， 由于洪七也自宫了，所以中神通叫他 "洪七公公"<br />
　　<br />
　　师徒二人惺惺相惜，到也相处的融洽，直到有一天，中神通的辟邪剑法练到了东方不败的地步，他开始把洪( 练辟邪剑法的人最终会发展到两个层次，一是东方不败的类型，就是对别人有性骚扰的， 二是岳不群，林平之类型的，对别人无害)<br />
　　<br />
　　洪七公公迫不得己杀了中神通，碰巧给江南7怪撞见了，7怪看到辟邪剑法怪异的情景，急忙逃跑了， 而洪七公公只看到了7个人的身影，作贼心虚，就没有追赶。<br />
　　<br />
　　江南7怪害怕辟邪剑法，一直跑到了大漠，于是就躲了起来，他们一边训练郭靖，一边苦练功夫，时刻准备敌人来灭口，这一躲就是18年.<br />
　　<br />
　　中神通已死，全真教也待不下去了，洪七公公还要暗中查访那七个人，到哪里立足呢?，丐帮是个好去处，入丐帮的时候，他将名字中一个’公‘字去掉，就成了洪七公<br />
　　<br />
　　洪七公生性好学，每天勤学苦练，他一腔精力无处发泄，加上辟邪剑法的轻功，洪七公很快就练就了打狗棒法和降龙18掌，并且当上了丐帮帮主</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nimab.org/2008/02/12/26.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

