﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-Jarod@termainal$ tail * &gt;&gt; blog</title><link>http://www.blogjava.net/jarod/</link><description>A Developer's Notebook</description><language>zh-cn</language><lastBuildDate>Tue, 14 Apr 2026 00:49:31 GMT</lastBuildDate><pubDate>Tue, 14 Apr 2026 00:49:31 GMT</pubDate><ttl>60</ttl><item><title>squid报"File size limit exceeded (core dumped)"</title><link>http://www.blogjava.net/jarod/archive/2008/05/02/197782.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Fri, 02 May 2008 12:25:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/05/02/197782.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/197782.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/05/02/197782.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/197782.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/197782.html</trackback:ping><description><![CDATA[最近公司网站的squid离奇crash，用下面命令启动squid:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">squid&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">N&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">d&nbsp;</span><span style="color: #800000;">9</span></div>
-N: 用非守护进程方式运行<br />
-d 9: 9级输出信息（最详细）<br />
<br />
最后看到错误信息并且squid马上crash：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">File&nbsp;size&nbsp;limit&nbsp;exceeded&nbsp;(core&nbsp;dumped)</span><span style="color: #000000; font-weight: bold;">"</span></div>
<br />
同事说可能是log文件太大，后来google到一<a href="http://www.mail-archive.com/squid-users@squid-cache.org/msg44863.html">邮件列表</a>的信息确认了的确是，是log文件中的store.log超过2G时就会报这个错误。<br />
<br />
解决方法：<br />
在squid.conf中查找"TAG: cache_store_log"，在其下插入一行<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">cache_store_log&nbsp;none</span></div>
即可把store log关掉<br />
<br />
<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/197782.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-05-02 20:25 <a href="http://www.blogjava.net/jarod/archive/2008/05/02/197782.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux下挂raid1阵列</title><link>http://www.blogjava.net/jarod/archive/2008/03/25/188426.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Tue, 25 Mar 2008 02:24:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/03/25/188426.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/188426.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/03/25/188426.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/188426.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/188426.html</trackback:ping><description><![CDATA[硬件：<br />
机器上有一块硬盘通过ide连接，两块通过sata连接，hda是用来安装系统的，sda和sdb组raid1。<br />
hda: 160G<br />
sda:160G<br />
sdb:160G<br />
<br />
软件：<br />
linux下用mdadm管理软阵列设备，详见http://www.linuxmanpages.com/man8/mdadm.8.php<br />
<br />
经过以下操作，既可搭建完成：<br />
<br />
创建md设备<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">mdadm&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">create&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">dev</span><span style="color: #000000;">/</span><span style="color: #000000;">md0&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">level</span><span style="color: #000000;">=</span><span style="color: #800000;">1</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">raid</span><span style="color: #000000;">-</span><span style="color: #000000;">devices</span><span style="color: #000000;">=</span><span style="color: #800000;">2</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">dev</span><span style="color: #000000;">/</span><span style="color: #000000;">sda </span><span style="color: #000000;">/</span><span style="color: #000000;">dev</span><span style="color: #000000;">/</span><span style="color: #000000;">sdb</span></div>
<br />
查看设备状态<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">cat&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">proc</span><span style="color: #000000;">/</span><span style="color: #000000;">mdstat</span></div>
正常的话输出类似：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">Personalities&nbsp;</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;[raid1]&nbsp;<br />
md0&nbsp;</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;active&nbsp;raid1&nbsp;sdb[</span><span style="color: #800000;">1</span><span style="color: #000000;">]&nbsp;sda[</span><span style="color: #800000;">0</span><span style="color: #000000;">]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000;">156290816</span><span style="color: #000000;">&nbsp;blocks&nbsp;[</span><span style="color: #800000;">2</span><span style="color: #000000;">/</span><span style="color: #800000;">2</span><span style="color: #000000;">]&nbsp;[UU]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000;">=&gt;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.</span><span style="color: #000000;">]&nbsp;&nbsp;resync&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #800000;">9.9</span><span style="color: #000000;">%</span><span style="color: #000000;">&nbsp;(</span><span style="color: #800000;">15526336</span><span style="color: #000000;">/</span><span style="color: #800000;">156290816</span><span style="color: #000000;">)&nbsp;finish</span><span style="color: #000000;">=</span><span style="color: #800000;">74</span><span style="color: #000000;">.</span><span style="color: #000000;">9min&nbsp;speed</span><span style="color: #000000;">=</span><span style="color: #000000;">31293K</span><span style="color: #000000;">/</span><span style="color: #000000;">sec<br />
</span></div>
<br />
格式化阵列(ext3)：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">mkfs</span><span style="color: #000000;">.</span><span style="color: #000000;">ext3&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">dev</span><span style="color: #000000;">/</span><span style="color: #000000;">md0</span></div>
<br />
创建挂载点：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">mkdir</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">data</span></div>
<br />
在/etc/fstab中加入：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">/</span><span style="color: #000000;">dev</span><span style="color: #000000;">/</span><span style="color: #000000;">md0&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">data&nbsp;ext3&nbsp;defaults&nbsp;</span><span style="color: #800000;">0</span><span style="color: #000000;">&nbsp;</span><span style="color: #800000;">0</span></div>
<br />
使挂载马上生效：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">mount&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">data</span></div>
<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/188426.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-03-25 10:24 <a href="http://www.blogjava.net/jarod/archive/2008/03/25/188426.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>json-lib序列化java.sql.Date</title><link>http://www.blogjava.net/jarod/archive/2008/02/15/180021.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Fri, 15 Feb 2008 02:11:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/02/15/180021.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/180021.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/02/15/180021.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/180021.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/180021.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;java.util.HashMap;<br />
<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;net.sf.json.JSONObject;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;net.sf.json.JsonConfig;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;net.sf.json.processors.JsDateJsonBeanProcessor;<br />
<br />
</span><span style="color: #008000;">/**</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;jarod<br />
&nbsp;*<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;JsonDate&nbsp;{<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">static</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;main(String[]&nbsp;args)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;json-lib默认不支持java.sql.Date的序列化，要序列化自己的类，实现一个BeanProcessor处理即可</span><span style="color: #008000;"><br />
</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JsDateJsonBeanProcessor&nbsp;beanProcessor&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;JsDateJsonBeanProcessor();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;java.sql.Date&nbsp;d&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;java.sql.Date(System.currentTimeMillis());<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;直接序列化</span><span style="color: #008000;"><br />
</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JsonConfig&nbsp;config&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;JsonConfig();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JSONObject&nbsp;json&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;beanProcessor.processBean(d,&nbsp;config);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(json.toString());<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;序列化含java.sql.Date作为属性值的bean</span><span style="color: #008000;"><br />
</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HashMap&nbsp;m&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;HashMap();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m.put(</span><span style="color: #000000;">"</span><span style="color: #000000;">date</span><span style="color: #000000;">"</span><span style="color: #000000;">,&nbsp;d);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;config.registerJsonBeanProcessor(java.sql.Date.</span><span style="color: #0000ff;">class</span><span style="color: #000000;">,&nbsp;beanProcessor);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;json&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;JSONObject.fromObject(m,&nbsp;config);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(json.toString());<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</span></div>
<img src ="http://www.blogjava.net/jarod/aggbug/180021.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-02-15 10:11 <a href="http://www.blogjava.net/jarod/archive/2008/02/15/180021.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[输入法]在scim中使用万能五笔词库</title><link>http://www.blogjava.net/jarod/archive/2008/01/14/175216.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Mon, 14 Jan 2008 07:14:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/01/14/175216.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/175216.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/01/14/175216.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/175216.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/175216.html</trackback:ping><description><![CDATA[词库用起来比SCIM自带的五笔爽好多，而且有调频功能。<br />
使用方法见：<br />
<a href="http://forum.ubuntu.org.cn/viewtopic.php?t=99877">http://forum.ubuntu.org.cn/viewtopic.php?t=99877</a><br />
<br />
<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/175216.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-01-14 15:14 <a href="http://www.blogjava.net/jarod/archive/2008/01/14/175216.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[Emacs]打开文件</title><link>http://www.blogjava.net/jarod/archive/2008/01/14/175110.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Mon, 14 Jan 2008 03:34:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/01/14/175110.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/175110.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/01/14/175110.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/175110.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/175110.html</trackback:ping><description><![CDATA[刚学一新招：用C-x C-f打开文件时用//或~/可屏蔽此符号前的路径，省去删除当前路径的麻烦<br />
如我的C-x C-f默认是指向~/的，此时想打开/etc/apt/fstab文件，输入~//etc/apt/fstab即可<br />
如果当前路径为/var/，打开自己home目录下的aa.txt文件，输入/var/~/aa.txt<br />
<br />
<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/175110.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-01-14 11:34 <a href="http://www.blogjava.net/jarod/archive/2008/01/14/175110.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TMD-垃-圾-电-信</title><link>http://www.blogjava.net/jarod/archive/2008/01/13/174938.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Sun, 13 Jan 2008 02:16:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/01/13/174938.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/174938.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/01/13/174938.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/174938.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/174938.html</trackback:ping><description><![CDATA[最近在家上网经常打开网页白屏，一开始也不在意，后来觉得实在太烦了，查了查是怎么回事，在firefox中的error console中看到错误信息<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">Error:&nbsp;window.frames[0]&nbsp;is&nbsp;undefined<br />
Source&nbsp;File:&nbsp;http://访问的网址/<br />
Line:&nbsp;XX</span></div>
双击打开，显示了页面代码：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">html</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">head</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">head</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">iframe&nbsp;</span><span style="color: #ff0000;">src</span><span style="color: #0000ff;">="about:blank"</span><span style="color: #ff0000;">&nbsp;width</span><span style="color: #0000ff;">="0"</span><span style="color: #ff0000;">&nbsp;height</span><span style="color: #0000ff;">="0"</span><span style="color: #ff0000;">&nbsp;frameborder</span><span style="color: #0000ff;">="0"</span><span style="color: #ff0000;">&nbsp;style</span><span style="color: #0000ff;">="display:none"</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">iframe</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">language</span><span style="color: #0000ff;">="javascript"</span><span style="color: #0000ff;">&gt;</span><span style="background-color: #f5f5f5; color: #000000;"><br />
window.frames[</span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">].location&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">http://121.32.136.231/update/step1.aspx?p=</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">gzDSLXXXXXXXX|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
Math.floor((</span><span style="background-color: #f5f5f5; color: #0000ff;">new</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;Date()).getTime()</span><span style="background-color: #f5f5f5; color: #000000;">/</span><span style="background-color: #f5f5f5; color: #000000;">1000</span><span style="background-color: #f5f5f5; color: #000000;">)&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;<br />
navigator.appMinorVersion&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
screen.availHeight&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
screen.availWidth&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
screen.colorDepth&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
screen.height&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">|</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">+</span><span style="background-color: #f5f5f5; color: #000000;"><br />
screen.width;<br />
</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">body</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">html</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
</span></div>
<br />
刚看到时心理一惊，该不会是在ubuntu+firefox也中病毒了吧。。。<br />
google了一下<span style="background-color: #f5f5f5; color: #000000;">121.32.136.231，有以下发现<br />
<br />
</span>http://121.32.136.231/notice/notice.htm<br />
http://www.gomain.net/articles/about_121_32_136_231.html<br />
http://bbs.qianlong.com/redirect.php?tid=1281281<br />
<br />
终于知道了真相<br />
<br />
UPDATE:<br />
反馈到电信，回复如下：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">您好，这有可能电脑中了病毒的，建议您使用杀毒软件查杀一下</span></div>
唉，客服练的都是忽悠功啊<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/174938.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-01-13 10:16 <a href="http://www.blogjava.net/jarod/archive/2008/01/13/174938.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PSP-2000入手</title><link>http://www.blogjava.net/jarod/archive/2008/01/10/174308.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Thu, 10 Jan 2008 07:30:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/01/10/174308.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/174308.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/01/10/174308.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/174308.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/174308.html</trackback:ping><description><![CDATA[白色＋8G＋硅胶套 ＋ 送便宜保护膜 ＋ 送游戏DVD一张 ~= 2K<br />
<br />
入手几天了，无聊的时候可以玩玩小游戏。本来想着也可以看看电子书，但试了看PDF和CHM的书效果特不好。。。<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/174308.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-01-10 15:30 <a href="http://www.blogjava.net/jarod/archive/2008/01/10/174308.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一篇不错的wine配置教程</title><link>http://www.blogjava.net/jarod/archive/2008/01/07/173378.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Mon, 07 Jan 2008 08:29:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2008/01/07/173378.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/173378.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2008/01/07/173378.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/173378.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/173378.html</trackback:ping><description><![CDATA[http://gaming.gwos.org/doku.php/wine:winestuff
<img src ="http://www.blogjava.net/jarod/aggbug/173378.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2008-01-07 16:29 <a href="http://www.blogjava.net/jarod/archive/2008/01/07/173378.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Firefox tuning</title><link>http://www.blogjava.net/jarod/archive/2007/12/28/171330.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Fri, 28 Dec 2007 14:03:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/12/28/171330.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/171330.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/12/28/171330.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/171330.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/171330.html</trackback:ping><description><![CDATA[在地址栏输入about:config进入配置表，添加或修改下列相应项<br />
<br />
内存缓存：<br />
browser.cache.memory.enable=true<br />
内存缓存开关<br />
browser.cache.memory.capacity=51200<br />
内存缓存大小，单位KB；-1: (默认)根据系统可用内存动态调整；<br />
<br />
TIPS: 如果内存大可以关闭磁盘缓存，把此值设大；如果不关闭磁盘缓存，建议保留默认值<br />
<br />
<br />
磁盘缓存：<br />
browser.cache.disk.enable=false<br />
磁盘缓存大小<br />
browser.cache.disk.capacity=50000<br />
磁盘缓存大小<br />
browser.cache.disk.parent_directory=用户目录<br />
<br />
TIPS: 提升性能第二法是把内存缓存关闭，把browser.cache.disk.parent_directory指向ramdisk<br />
<br />
<br />
DNS：<br />
network.dns.disableIPv6=false<br />
TIPS: 建议设成true，关闭ipv6的dns解释，对打开网页的速度有比较明显的提高<br />
<br />
<br />
HTTP连接数：<br />
network.http.max-connections=64<br />
最大连接数<br />
network.http.max-connections-per-server=16<br />
对每个服务器的最大请求数<br />
network.http.max-persistent-connections-per-server=4<br />
对每个服务器长连接的最大数<br />
network.http.max-persistent-connections-per-proxy=4<br />
对每个代理的最大长连接数<br />
<br />
上面几个值可根据自己的机器情况配置<br />
<br />
<br />
开启Pipelining:(http://www.mozilla.org/projects/netlib/http/pipelining-faq.html)<br />
对多内容的页面比较有用<br />
network.http.pipelining=true<br />
开关pipelining<br />
network.http.proxy.pipelining=true<br />
开关代理pipelining<br />
network.http.pipelining.maxrequests=8<br />
单个网页的最大请求数有效值1-8<br />
<br />
<br />
加快页面渲染速度<br />
nglayout.initialpaint.delay=0<br />
这个值为firefox等待多少毫秒后开始渲染页面。默认值250。网速快时设成0可以加速网页渲染。网速慢的最好就不要改了。对网速物慢的，如56kbit/s拨号上网的，还应适当增大此值，不然firefox的CPU使用就会上升很快<br />
<br />
不检查插件兼容性 <br />
extensions.checkCompatibility=false<br />
对于想试3.0的朋友此项特有用。因为firefox插件的兼容性检查是基于版本号的，所以某些&#8220;不兼容&#8221;的插件不一定就是不兼容<br />
<br />
不使用页面指定的字体<br />
browser.display.use_document_fonts=false<br />
对于像我的linux系统，使用的中文字体是雅黑，但有些页面是指定使用宋体，显示的字体很难看，设这个值就可以忽视页面字体了<br />
<br />
<img src ="http://www.blogjava.net/jarod/aggbug/171330.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-12-28 22:03 <a href="http://www.blogjava.net/jarod/archive/2007/12/28/171330.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Embedded tomcat 6.0</title><link>http://www.blogjava.net/jarod/archive/2007/12/20/169030.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Thu, 20 Dec 2007 06:49:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/12/20/169030.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/169030.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/12/20/169030.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/169030.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/169030.html</trackback:ping><description><![CDATA[测试环境：<br />
tomcat-6.0.14<br />
ubuntu gusty<br />
sun-jdk-1.6<br />
<br />
多个人合作的项目里只要修改tomcat-conf.properties文件后即可使用。我这里用了slf4j做LOG，不用LOG的把相关类去掉即可。还有我是把tomcat/lib下的jar都加进classpath的。<br />
<br />
目录结构<br />
/-|projectHome<br />
&nbsp; |<br />
&nbsp; |--src<br />
&nbsp; |&nbsp;&nbsp; |--TomcatServer.java<br />
&nbsp; |&nbsp;&nbsp; |--tomcat-conf.properties<br />
&nbsp; |<br />
&nbsp; |--webapp<br />
&nbsp; |&nbsp;&nbsp; |--WEB-INF<br />
&nbsp; |&nbsp;&nbsp; |&nbsp;&nbsp; |-web.xml<br />
<br />
TomcatServer.java:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #008080;">&nbsp;1</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;java.io.File;<br />
</span><span style="color: #008080;">&nbsp;2</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;java.io.IOException;<br />
</span><span style="color: #008080;">&nbsp;3</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;java.util.Properties;<br />
</span><span style="color: #008080;">&nbsp;4</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">&nbsp;5</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.apache.catalina.Context;<br />
</span><span style="color: #008080;">&nbsp;6</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.apache.catalina.Engine;<br />
</span><span style="color: #008080;">&nbsp;7</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.apache.catalina.Host;<br />
</span><span style="color: #008080;">&nbsp;8</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.apache.catalina.LifecycleException;<br />
</span><span style="color: #008080;">&nbsp;9</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.apache.catalina.startup.Embedded;<br />
</span><span style="color: #008080;">10</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.slf4j.Logger;<br />
</span><span style="color: #008080;">11</span>&nbsp;<span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;org.slf4j.LoggerFactory;<br />
</span><span style="color: #008080;">12</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">13</span>&nbsp;<span style="color: #008000;">/**</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">14</span>&nbsp;<span style="color: #008000;">&nbsp;*&nbsp;</span><span style="color: #008000; text-decoration: underline;">http://www.blogjava.net/jarod</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">15</span>&nbsp;<span style="color: #008000;">&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;jarod<br />
</span><span style="color: #008080;">16</span>&nbsp;<span style="color: #008000;">&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #008080;">17</span>&nbsp;<span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;TomcatServer&nbsp;{<br />
</span><span style="color: #008080;">18</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">19</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">static</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">final</span><span style="color: #000000;">&nbsp;Logger&nbsp;logger&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;LoggerFactory<br />
</span><span style="color: #008080;">20</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.getLogger(TomcatServer.</span><span style="color: #0000ff;">class</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">21</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">22</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">static</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;main(String[]&nbsp;args)&nbsp;{<br />
</span><span style="color: #008080;">23</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">try</span><span style="color: #000000;">&nbsp;{<br />
</span><span style="color: #008080;">24</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;TomcatServer();<br />
</span><span style="color: #008080;">25</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">catch</span><span style="color: #000000;">&nbsp;(Throwable&nbsp;t)&nbsp;{<br />
</span><span style="color: #008080;">26</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logger.error(</span><span style="color: #000000;">""</span><span style="color: #000000;">,&nbsp;t);<br />
</span><span style="color: #008080;">27</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">28</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">29</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">30</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;Embedded&nbsp;tomcat;<br />
</span><span style="color: #008080;">31</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">32</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;tomcat主目录</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">33</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;String&nbsp;catalinaHome;<br />
</span><span style="color: #008080;">34</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">35</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;String&nbsp;projectHome;<br />
</span><span style="color: #008080;">36</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">37</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;TomcatServer()&nbsp;{<br />
</span><span style="color: #008080;">38</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;initConf();<br />
</span><span style="color: #008080;">39</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">40</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tomcat&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;Embedded();<br />
</span><span style="color: #008080;">41</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tomcat.setCatalinaHome(catalinaHome);<br />
</span><span style="color: #008080;">42</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Engine&nbsp;engine&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;tomcat.createEngine();<br />
</span><span style="color: #008080;">43</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Host&nbsp;host&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;tomcat.createHost(</span><span style="color: #000000;">"</span><span style="color: #000000;">localhost</span><span style="color: #000000;">"</span><span style="color: #000000;">,&nbsp;projectHome);<br />
</span><span style="color: #008080;">44</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;host.addChild(tomcat.createContext(</span><span style="color: #000000;">""</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">""</span><span style="color: #000000;">));<br />
</span><span style="color: #008080;">45</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Context&nbsp;context&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;tomcat.createContext(</span><span style="color: #000000;">"</span><span style="color: #000000;">/webapp1</span><span style="color: #000000;">"</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">webapp</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">46</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;当以debug模式启动时，修改可立即生效</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">47</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;context.setReloadable(</span><span style="color: #0000ff;">true</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">48</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;host.addChild(context);<br />
</span><span style="color: #008080;">49</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;engine.addChild(host);<br />
</span><span style="color: #008080;">50</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;engine.setDefaultHost(</span><span style="color: #000000;">"</span><span style="color: #000000;">localhost</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">51</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tomcat.addEngine(engine);<br />
</span><span style="color: #008080;">52</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tomcat.addConnector(tomcat.createConnector(</span><span style="color: #000000;">"0"</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">8081</span><span style="color: #000000;">,&nbsp;</span><span style="color: #0000ff;">false</span><span style="color: #000000;">));<br />
</span><span style="color: #008080;">53</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;registerShutdownHook();<br />
</span><span style="color: #008080;">54</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">try</span><span style="color: #000000;">&nbsp;{<br />
</span><span style="color: #008080;">55</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tomcat.start();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Thread.sleep(Long.MAX_VALUE);<br />
<span style="color: #008080;">56</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">catch</span><span style="color: #000000;">&nbsp;(Exception&nbsp;e)&nbsp;{<br />
</span><span style="color: #008080;">57</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">throw</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;RuntimeException(e);<br />
</span><span style="color: #008080;">58</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">59</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">60</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">61</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;initConf()&nbsp;{<br />
</span><span style="color: #008080;">62</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Properties&nbsp;properties&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;Properties();<br />
</span><span style="color: #008080;">63</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">try</span><span style="color: #000000;">&nbsp;{<br />
</span><span style="color: #008080;">64</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;properties.load(TomcatServer.</span><span style="color: #0000ff;">class</span><span style="color: #000000;"><br />
</span><span style="color: #008080;">65</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.getResourceAsStream(</span><span style="color: #000000;">"</span><span style="color: #000000;">/tomcat-conf.properties</span><span style="color: #000000;">"</span><span style="color: #000000;">));<br />
</span><span style="color: #008080;">66</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catalinaHome&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;properties.getProperty(</span><span style="color: #000000;">"</span><span style="color: #000000;">catalina.home</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">67</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">68</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;File&nbsp;f&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;File(</span><span style="color: #000000;">"</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">69</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;projectHome&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;f.getAbsolutePath();<br />
</span><span style="color: #008080;">70</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">catch</span><span style="color: #000000;">&nbsp;(IOException&nbsp;e)&nbsp;{<br />
</span><span style="color: #008080;">71</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">throw</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;RuntimeException(e);<br />
</span><span style="color: #008080;">72</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">73</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">74</span>&nbsp;<span style="color: #000000;"><br />
</span><span style="color: #008080;">75</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;registerShutdownHook()&nbsp;{<br />
</span><span style="color: #008080;">76</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Runtime.getRuntime().addShutdownHook(</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;Thread()&nbsp;{<br />
</span><span style="color: #008080;">77</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
</span><span style="color: #008080;">78</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;run()&nbsp;{<br />
</span><span style="color: #008080;">79</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">try</span><span style="color: #000000;">&nbsp;{<br />
</span><span style="color: #008080;">80</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tomcat.stop();<br />
</span><span style="color: #008080;">81</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">catch</span><span style="color: #000000;">&nbsp;(LifecycleException&nbsp;e)&nbsp;{<br />
</span><span style="color: #008080;">82</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">throw</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;RuntimeException(e);<br />
</span><span style="color: #008080;">83</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">84</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">85</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br />
</span><span style="color: #008080;">86</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080;">87</span>&nbsp;<span style="color: #000000;">}</span></div>
<br />
<br />
tomcat-conf.properties:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">catalina.home</span><span style="color: #000000;">=/</span><span style="color: #000000;">home</span><span style="color: #000000;">/</span><span style="color: #000000;">jarod</span><span style="color: #000000;">/</span><span style="color: #000000;">server</span><span style="color: #000000;">/</span><span style="color: #000000;">tomcat</span><span style="color: #000000;">/</span><span style="color: #000000;">apache</span><span style="color: #000000;">-</span><span style="color: #000000;">tomcat</span><span style="color: #000000;">-</span><span style="color: #000000;">6.0</span><span style="color: #000000;">.</span><span style="color: #000000;">14</span></div>
<br />
<br />
为什么要<span style="color: #000000;">setCatalinaHome?<br />
设了该值，tomcat启动时会在该目录加载默认的一些配置，如MIME mapping等，如果要自己手动添加配置太麻烦了，而如果不要这些配置，这个embedded tomcat用处也不大<br />
</span>
<img src ="http://www.blogjava.net/jarod/aggbug/169030.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-12-20 14:49 <a href="http://www.blogjava.net/jarod/archive/2007/12/20/169030.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[Emacs]linux下编译安装emacs23 cvs</title><link>http://www.blogjava.net/jarod/archive/2007/12/19/168662.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Wed, 19 Dec 2007 02:29:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/12/19/168662.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/168662.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/12/19/168662.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/168662.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/168662.html</trackback:ping><description><![CDATA[<span style="font-size: 10pt;">
系统: ubuntu 7.10<br />
我现在2台机上在用这个版本，一台机是gnome, 另一台机是KDE，KDE上的emacs-gtk可以直接用scim输入了，但gnome据说是某session-daemon程序的问题导致不能激活外部输入法，我现在的解决方法是开一个terminal, 在terminal下用emacs -nw启动，这样就能用外部输入法输入中文了</span><br />
<br />
<br />
<h2>Checkout源代码</h2>
<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">sudo&nbsp;apt</span><span style="color: #000000;">-</span><span style="color: #000000;">get&nbsp;install&nbsp;ssh&nbsp;cvs<br />
export&nbsp;CVS_RSH</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">ssh</span><span style="color: #800000;">"</span><span style="color: #000000;"><br />
cvs&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">z3&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">d:pserver:anonymous@cvs.sv.gnu.org:</span><span style="color: #000000;">/</span><span style="color: #000000;">cvsroot</span><span style="color: #000000;">/</span><span style="color: #000000;">emacs&nbsp;co&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">r&nbsp;emacs</span><span style="color: #000000;">-</span><span style="color: #000000;">unicode</span><span style="color: #000000;">-</span><span style="color: #000000;">2</span><span style="color: #000000;">&nbsp;emacs <br />
</span></div>
<br />
<br />
<h2>安装依赖包</h2>
<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">sudo&nbsp;apt</span><span style="color: #000000;">-</span><span style="color: #000000;">get&nbsp;install&nbsp;texinfo&nbsp;libgpmg1</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;libungif4</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;libpng12</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;libgd2</span><span style="color: #000000;">-</span><span style="color: #000000;">xpm</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;libtiff4</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;libjpeg62</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;librsvg2</span><span style="color: #000000;">-</span><span style="color: #000000;">dev&nbsp;libgtk2.0</span><span style="color: #000000;">-</span><span style="color: #000000;">dev</span></div>
注意：上面有几个图形库不是必须的；我的机器本来就装了很多开发库，所以上面的库估计也是不全的<br />
<br />
<h2>编译安装</h2>
<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">.</span><span style="color: #000000;">/</span><span style="color: #000000;">configure&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">prefix</span><span style="color: #000000;">=/</span><span style="color: #000000;">usr&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">enable</span><span style="color: #000000;">-</span><span style="color: #000000;">font</span><span style="color: #000000;">-</span><span style="color: #000000;">backend&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">with</span><span style="color: #000000;">-</span><span style="color: #000000;">gtk&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">with</span><span style="color: #000000;">-</span><span style="color: #000000;">xft&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">with</span><span style="color: #000000;">-</span><span style="color: #000000;">freetype&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;make&nbsp;bootstrap&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;make&nbsp;info&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;sudo&nbsp;make&nbsp;install</span></div>
<br />
<br />
<br />
<h2>配置</h2>
<span style="font-size: 10pt;"><br />
编辑~/.Xresources</span><br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">Xft</span><span style="color: #000000;">.</span><span style="color: #000000;">antialias</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #800000;">1</span><span style="color: #000000;"><br />
# 可以尝试把hinting关了对比效果，有些显示器上不开反而更好看<br />
Xft</span><span style="color: #000000;">.</span><span style="color: #000000;">hinting</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #800000;">1</span><span style="color: #000000;"><br />
Xft</span><span style="color: #000000;">.</span><span style="color: #000000;">hintstyle</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;hintfull&nbsp;<br />
Xft</span><span style="color: #000000;">.</span><span style="color: #000000;">rgba</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;rgb<br />
<br />
Emacs</span><span style="color: #000000;">.</span><span style="color: #000000;">FontBackend</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;xft <br />
</span>Emacs.Geometry: 100x32+4+4<br />
</div>
<span style="font-size: 10pt;">执行xrdb ~/.Xresources例配置生效</span><br />
<br />
<span style="font-size: 10pt;">
编辑~/.emacs文件</span>（最新版在我的<a target="_blank" href="http://jarod.wikidot.com/emacs-configuration">wiki</a>）<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">;;设置个人信息<br />
;;<br />
(setq&nbsp;user</span><span style="color: #000000;">-</span><span style="color: #000000;">full</span><span style="color: #000000;">-</span><span style="color: #000000;">name&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">Jarod&nbsp;Liu</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)<br />
(setq&nbsp;user</span><span style="color: #000000;">-</span><span style="color: #000000;">mail</span><span style="color: #000000;">-</span><span style="color: #000000;">address&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">liuyuanzhi(at)gmail.com</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)<br />
<br />
;;添加自定义loadpath<br />
;;<br />
(</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(fboundp&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">normal-top-level-add-subdirs-to-load-path)<br />
&nbsp;&nbsp;&nbsp;&nbsp;(let*&nbsp;((my-lisp-dir&nbsp;"/home/jarod/.myemacs/")<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(default-directory&nbsp;my-lisp-dir))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(setq&nbsp;load-path&nbsp;(cons&nbsp;my-lisp-dir&nbsp;load-path))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(normal-top-level-add-subdirs-to-load-path)))<br />
<br />
<br />
;;设置字体&nbsp;<br />
;;<br />
(set-default-font&nbsp;"Monospace-14")<br />
(set-fontset-font&nbsp;(frame-parameter&nbsp;nil&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">font)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">unicode&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">Microsoft&nbsp;YaHei</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">unicode-bmp</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">))&nbsp;<br />
(set</span><span style="color: #000000;">-</span><span style="color: #000000;">fontset</span><span style="color: #000000;">-</span><span style="color: #000000;">font&nbsp;(frame</span><span style="color: #000000;">-</span><span style="color: #000000;">parameter&nbsp;nil&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">font)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">han&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">("Microsoft&nbsp;YaHei"&nbsp;.&nbsp;"unicode-bmp"))<br />
(set-fontset-font&nbsp;(frame-parameter&nbsp;nil&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">font)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">symbol&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">Microsoft&nbsp;YaHei</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">unicode-bmp</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">))<br />
(set</span><span style="color: #000000;">-</span><span style="color: #000000;">fontset</span><span style="color: #000000;">-</span><span style="color: #000000;">font&nbsp;(frame</span><span style="color: #000000;">-</span><span style="color: #000000;">parameter&nbsp;nil&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">font)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">cjk</span><span style="color: #000000;">-</span><span style="color: #000000;">misc&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">("Microsoft&nbsp;YaHei"&nbsp;&nbsp;.&nbsp;"unicode-bmp"))<br />
(set-fontset-font&nbsp;(frame-parameter&nbsp;nil&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">font)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">bopomofo&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">Microsoft&nbsp;YaHei</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">unicode-bmp</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">))&nbsp;<br />
<br />
<br />
;;&nbsp;</span><span style="color: #0000ff;">For</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">my</span><span style="color: #000000;">&nbsp;language&nbsp;code&nbsp;setting&nbsp;(UTF</span><span style="color: #000000;">-</span><span style="color: #800000;">8</span><span style="color: #000000;">)<br />
;;<br />
(setq&nbsp;current</span><span style="color: #000000;">-</span><span style="color: #000000;">language</span><span style="color: #000000;">-</span><span style="color: #000000;">environment&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">UTF-8</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)<br />
(setq&nbsp;default</span><span style="color: #000000;">-</span><span style="color: #000000;">input</span><span style="color: #000000;">-</span><span style="color: #000000;">method&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">chinese-py</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)<br />
(setq&nbsp;locale</span><span style="color: #000000;">-</span><span style="color: #000000;">coding</span><span style="color: #000000;">-</span><span style="color: #0000ff;">system</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">utf-8)<br />
(set-terminal-coding-system&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">utf</span><span style="color: #000000;">-</span><span style="color: #800000;">8</span><span style="color: #000000;">)<br />
(set</span><span style="color: #000000;">-</span><span style="color: #000000;">keyboard</span><span style="color: #000000;">-</span><span style="color: #000000;">coding</span><span style="color: #000000;">-</span><span style="color: #0000ff;">system</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">utf-8)<br />
(set-selection-coding-system&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">utf</span><span style="color: #000000;">-</span><span style="color: #800000;">8</span><span style="color: #000000;">)<br />
(prefer</span><span style="color: #000000;">-</span><span style="color: #000000;">coding</span><span style="color: #000000;">-</span><span style="color: #0000ff;">system</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">utf-8)<br />
<br />
<br />
;;启动服务器(for&nbsp;emacsclient)<br />
;;<br />
(server-start)<br />
<br />
<br />
;;自定义按键<br />
;;<br />
(global-set-key&nbsp;[f1]&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">shell);F1进入Shell&nbsp;<br />
;(global</span><span style="color: #000000;">-</span><span style="color: #000000;">set</span><span style="color: #000000;">-</span><span style="color: #000000;">key&nbsp;(kbd&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">C-SPC</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">nil);用win+space为set-mark键，留出ctrl+space热键作为输入法<br />
;(global-set-key&nbsp;(kbd&nbsp;"S-SPC")&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">set</span><span style="color: #000000;">-</span><span style="color: #000000;">mark</span><span style="color: #000000;">-</span><span style="color: #000000;">command)<br />
<br />
<br />
;;使用习惯配制<br />
;;<br />
(setq&nbsp;default</span><span style="color: #000000;">-</span><span style="color: #000000;">major</span><span style="color: #000000;">-</span><span style="color: #000000;">mode&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">text-mode);一打开就起用&nbsp;text&nbsp;模式。<br />
(global-font-lock-mode&nbsp;t);语法高亮<br />
(auto-image-file-mode&nbsp;t);打开图片显示功能<br />
(fset&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">yes</span><span style="color: #000000;">-</span><span style="color: #000000;">or</span><span style="color: #000000;">-</span><span style="color: #0000ff;">no</span><span style="color: #000000;">-</span><span style="color: #000000;">p&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">y-or-n-p);以&nbsp;y/n代表&nbsp;yes/no<br />
(setq&nbsp;default-fill-column&nbsp;80);默认显示&nbsp;xx列就换行<br />
(column-number-mode&nbsp;t);显示列号<br />
(show-paren-mode&nbsp;t);显示括号匹配<br />
(setq&nbsp;show-paren-style&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">parentheses);括号匹配时显示另外一边的括号，而不是跳到另一个括号<br />
;(display</span><span style="color: #000000;">-</span><span style="color: #0000ff;">time</span><span style="color: #000000;">-</span><span style="color: #000000;">mode&nbsp;</span><span style="color: #800000;">1</span><span style="color: #000000;">);显示时间，格式如下<br />
;(setq&nbsp;display</span><span style="color: #000000;">-</span><span style="color: #0000ff;">time</span><span style="color: #000000;">-</span><span style="color: #000000;">24hr</span><span style="color: #000000;">-</span><span style="color: #0000ff;">format</span><span style="color: #000000;">&nbsp;t)<br />
;(setq&nbsp;display</span><span style="color: #000000;">-</span><span style="color: #0000ff;">time</span><span style="color: #000000;">-</span><span style="color: #000000;">day</span><span style="color: #000000;">-</span><span style="color: #000000;">and</span><span style="color: #000000;">-</span><span style="color: #000000;">date&nbsp;t)<br />
(tool</span><span style="color: #000000;">-</span><span style="color: #000000;">bar</span><span style="color: #000000;">-</span><span style="color: #000000;">mode&nbsp;nil);去掉工具栏<br />
(scroll</span><span style="color: #000000;">-</span><span style="color: #000000;">bar</span><span style="color: #000000;">-</span><span style="color: #000000;">mode&nbsp;nil);去掉滚动条，可以使用鼠标滚轮<br />
(setq&nbsp;scroll</span><span style="color: #000000;">-</span><span style="color: #000000;">margin&nbsp;</span><span style="color: #800000;">3</span><span style="color: #000000;">&nbsp;scroll</span><span style="color: #000000;">-</span><span style="color: #000000;">conservatively&nbsp;</span><span style="color: #800000;">10000</span><span style="color: #000000;">);防止页面滚动时跳动，&nbsp;scroll</span><span style="color: #000000;">-</span><span style="color: #000000;">margin&nbsp;</span><span style="color: #800000;">3</span><span style="color: #000000;">&nbsp;可以在靠近屏幕边沿3行时就开始滚动<br />
(mouse</span><span style="color: #000000;">-</span><span style="color: #000000;">avoidance</span><span style="color: #000000;">-</span><span style="color: #000000;">mode&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">animate);光标靠近鼠标指针时，让鼠标指针自动让开<br />
(setq&nbsp;mouse-yank-at-point&nbsp;t);支持中键粘贴<br />
(transient-mark-mode&nbsp;t);高亮显示要拷贝的区域<br />
(setq&nbsp;x-select-enable-clipboard&nbsp;t);支持emacs和外部程序的粘贴<br />
(setq&nbsp;interprogram-paste-function&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">x</span><span style="color: #000000;">-</span><span style="color: #000000;">cut</span><span style="color: #000000;">-</span><span style="color: #000000;">buffer</span><span style="color: #000000;">-</span><span style="color: #000000;">or</span><span style="color: #000000;">-</span><span style="color: #000000;">selection</span><span style="color: #000000;">-</span><span style="color: #000000;">value)&nbsp;;<br />
(setq&nbsp;frame</span><span style="color: #000000;">-</span><span style="color: #000000;">title</span><span style="color: #000000;">-</span><span style="color: #0000ff;">format</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">%b</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);在标题栏提示buffer名<br />
(setq</span><span style="color: #000000;">-</span><span style="color: #000000;">default&nbsp;make</span><span style="color: #000000;">-</span><span style="color: #000000;">backup</span><span style="color: #000000;">-</span><span style="color: #000000;">files&nbsp;nil);不要生成临时文件<br />
(setq&nbsp;visible</span><span style="color: #000000;">-</span><span style="color: #000000;">bell&nbsp;t);关闭烦人的出错时的提示声<br />
(setq&nbsp;inhibit</span><span style="color: #000000;">-</span><span style="color: #000000;">startup</span><span style="color: #000000;">-</span><span style="color: #000000;">message&nbsp;t);关闭起动时的那个&#8220;开机画面&#8221;<br />
(setq&nbsp;</span><span style="color: #0000ff;">kill</span><span style="color: #000000;">-</span><span style="color: #000000;">ring</span><span style="color: #000000;">-</span><span style="color: #000000;">max&nbsp;</span><span style="color: #800000;">64</span><span style="color: #000000;">);undo&nbsp;number<br />
;;&nbsp;缩进<br />
(setq&nbsp;default</span><span style="color: #000000;">-</span><span style="color: #000000;">tab</span><span style="color: #000000;">-</span><span style="color: #000000;">width&nbsp;</span><span style="color: #800000;">4</span><span style="color: #000000;">);;&nbsp;&nbsp;&nbsp;&nbsp;设置tab为4个空格的宽度<br />
(setq&nbsp;tab</span><span style="color: #000000;">-</span><span style="color: #000000;">width&nbsp;</span><span style="color: #800000;">4</span><span style="color: #000000;">)<br />
(global</span><span style="color: #000000;">-</span><span style="color: #000000;">set</span><span style="color: #000000;">-</span><span style="color: #000000;">key&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">\C-m</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">newline-and-indent)<br />
(global-set-key&nbsp;"\C-j"&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">newline);;&nbsp;交换这两个按键。因为大多数情况下，回车后是要缩进的。<br />
<br />
;;&nbsp;mode&nbsp;alist<br />
(mapcar<br />
&nbsp;(function&nbsp;(lambda&nbsp;(setting)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(setq&nbsp;auto</span><span style="color: #000000;">-</span><span style="color: #000000;">mode</span><span style="color: #000000;">-</span><span style="color: #000000;">alist<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(cons&nbsp;setting&nbsp;auto</span><span style="color: #000000;">-</span><span style="color: #000000;">mode</span><span style="color: #000000;">-</span><span style="color: #000000;">alist))))<br />
&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">(("\\.xml$".&nbsp;&nbsp;sgml-mode)<br />
&nbsp;&nbsp;&nbsp;("\\\.bash"&nbsp;.&nbsp;sh-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.rdf$".&nbsp;&nbsp;sgml-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.session"&nbsp;.&nbsp;emacs-lisp-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.l$"&nbsp;.&nbsp;c-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.css$"&nbsp;.&nbsp;css-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.cfm$"&nbsp;.&nbsp;html-mode)<br />
&nbsp;&nbsp;&nbsp;("gnus"&nbsp;.&nbsp;emacs-lisp-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.idl$"&nbsp;.&nbsp;idl-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.rb$"&nbsp;.&nbsp;ruby-mode)<br />
&nbsp;&nbsp;&nbsp;("\\.rhtml$"&nbsp;.&nbsp;html-mode)))<br />
<br />
<br />
<br />
<br />
;;&nbsp;tabbar<br />
;;<br />
(require&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">tabbar)&nbsp;;&nbsp;http</span><span style="color: #000000;">://</span><span style="color: #000000;">liuyuanzhi</span><span style="color: #000000;">.</span><span style="color: #000000;">googlepages</span><span style="color: #000000;">.</span><span style="color: #000000;">com</span><span style="color: #000000;">/</span><span style="color: #000000;">tabbar</span><span style="color: #000000;">.</span><span style="color: #000000;">el<br />
(tabbar</span><span style="color: #000000;">-</span><span style="color: #000000;">mode)<br />
;(global</span><span style="color: #000000;">-</span><span style="color: #000000;">set</span><span style="color: #000000;">-</span><span style="color: #000000;">key&nbsp;(kbd&nbsp;</span><span style="color: #000000; font-weight: bold;">""</span><span style="color: #000000;">)&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">tabbar-backward-group)<br />
;(global-set-key&nbsp;(kbd&nbsp;"")&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">tabbar</span><span style="color: #000000;">-</span><span style="color: #000000;">forward</span><span style="color: #000000;">-</span><span style="color: #000000;">group)<br />
(global</span><span style="color: #000000;">-</span><span style="color: #000000;">set</span><span style="color: #000000;">-</span><span style="color: #000000;">key&nbsp;(kbd&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">C-`</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">tabbar-backward)&nbsp;;切换TAB的快捷键<br />
(global-set-key&nbsp;(kbd&nbsp;"C-&lt;tab&gt;")&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">tabbar</span><span style="color: #000000;">-</span><span style="color: #000000;">forward)<br />
;(set</span><span style="color: #000000;">-</span><span style="color: #000000;">face</span><span style="color: #000000;">-</span><span style="color: #000000;">attribute&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">tabbar-default-face&nbsp;nil&nbsp;:family&nbsp;"Tahoma")&nbsp;;设置tabbar字体<br />
<br />
<br />
;;&nbsp;color-theme&nbsp;<br />
;;<br />
(require&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">color</span><span style="color: #000000;">-</span><span style="color: #000000;">theme)&nbsp;;http</span><span style="color: #000000;">://</span><span style="color: #000000;">liuyuanzhi</span><span style="color: #000000;">.</span><span style="color: #000000;">googlepages</span><span style="color: #000000;">.</span><span style="color: #000000;">com</span><span style="color: #000000;">/</span><span style="color: #000000;">color</span><span style="color: #000000;">-</span><span style="color: #000000;">theme</span><span style="color: #000000;">.</span><span style="color: #000000;">el<br />
(color</span><span style="color: #000000;">-</span><span style="color: #000000;">theme</span><span style="color: #000000;">-</span><span style="color: #000000;">gnome2)<br />
<br />
<br />
;;&nbsp;ruby&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
;;&nbsp;based&nbsp;on&nbsp;http</span><span style="color: #000000;">://</span><span style="color: #000000;">www</span><span style="color: #000000;">.</span><span style="color: #000000;">rubygarden</span><span style="color: #000000;">.</span><span style="color: #000000;">org</span><span style="color: #000000;">/</span><span style="color: #000000;">Ruby</span><span style="color: #000000;">/</span><span style="color: #000000;">page</span><span style="color: #000000;">/</span><span style="color: #000000;">show</span><span style="color: #000000;">/</span><span style="color: #000000;">InstallingEmacsExtensions&nbsp;&nbsp;<br />
;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
(</span><span style="color: #0000ff;">require</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">ruby-mode)&nbsp;;安装ubuntu中的ruby-elisp包<br />
(autoload&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">ruby</span><span style="color: #000000;">-</span><span style="color: #000000;">mode&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">ruby-mode</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">Ruby&nbsp;editing&nbsp;mode.</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">&nbsp;t)<br />
(modify</span><span style="color: #000000;">-</span><span style="color: #000000;">coding</span><span style="color: #000000;">-</span><span style="color: #0000ff;">system</span><span style="color: #000000;">-</span><span style="color: #000000;">alist&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">file&nbsp;"\\.rb$"&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">utf</span><span style="color: #000000;">-</span><span style="color: #800000;">8</span><span style="color: #000000;">)<br />
(modify</span><span style="color: #000000;">-</span><span style="color: #000000;">coding</span><span style="color: #000000;">-</span><span style="color: #0000ff;">system</span><span style="color: #000000;">-</span><span style="color: #000000;">alist&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">file&nbsp;"\\.rhtml$"&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">utf</span><span style="color: #000000;">-</span><span style="color: #800000;">8</span><span style="color: #000000;">)<br />
<br />
<br />
(autoload&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">run-ruby&nbsp;"inf-ruby"<br />
&nbsp;&nbsp;"Run&nbsp;an&nbsp;inferior&nbsp;Ruby&nbsp;process")<br />
(autoload&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">inf</span><span style="color: #000000;">-</span><span style="color: #000000;">ruby</span><span style="color: #000000;">-</span><span style="color: #0000ff;">keys</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">inf-ruby</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;"><br />
&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">Set&nbsp;local&nbsp;key&nbsp;defs&nbsp;for&nbsp;inf-ruby&nbsp;in&nbsp;ruby-mode</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)<br />
(add</span><span style="color: #000000;">-</span><span style="color: #000000;">hook&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">ruby-mode-hook<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">(lambda&nbsp;()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(inf</span><span style="color: #000000;">-</span><span style="color: #000000;">ruby</span><span style="color: #000000;">-</span><span style="color: #0000ff;">keys</span><span style="color: #000000;">)))<br />
;;&nbsp;</span><span style="color: #0000ff;">If</span><span style="color: #000000;">&nbsp;you&nbsp;have&nbsp;Emacs&nbsp;</span><span style="color: #800000;">19</span><span style="color: #000000;">.</span><span style="color: #000000;">2x&nbsp;or&nbsp;older</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">use</span><span style="color: #000000;">&nbsp;rubydb2x&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
(autoload&nbsp;</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">rubydb&nbsp;"rubydb3x"&nbsp;"Ruby&nbsp;debugger"&nbsp;t)</span></div>
<br />
配置文件都是从网上直接copy来的，把一些不用的注释了<br />
<img src ="http://www.blogjava.net/jarod/aggbug/168662.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-12-19 10:29 <a href="http://www.blogjava.net/jarod/archive/2007/12/19/168662.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《iBATIS in Action》</title><link>http://www.blogjava.net/jarod/archive/2007/10/28/156464.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Sun, 28 Oct 2007 04:34:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/10/28/156464.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/156464.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/10/28/156464.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/156464.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/156464.html</trackback:ping><description><![CDATA[<img alt="" src="http://www.manning.com/begin/begin_cover150.jpg" height="188" width="150" /><br />
由于iBATIS方面的书本来就不多（这是我除了官方文档外找到的唯一一本），使这本书无疑是学习iBATIS不二的选择。而这本书本身也是不错的，囊括了几乎所有的iBATIS的知识点。很适合作为iBATIS的入门和参考书籍。<br />
我读这本书的时候并没接触过iBATIS相关的知识，但凭借本身的编程经验，看这本书也不必细看，也是匆匆看完，然后在实际使用中遇到问题再参考此书，比官方的文档好多了。
<img src ="http://www.blogjava.net/jarod/aggbug/156464.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-10-28 12:34 <a href="http://www.blogjava.net/jarod/archive/2007/10/28/156464.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读书《MySQL Phrasebook》</title><link>http://www.blogjava.net/jarod/archive/2007/10/28/156462.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Sun, 28 Oct 2007 04:25:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/10/28/156462.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/156462.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/10/28/156462.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/156462.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/156462.html</trackback:ping><description><![CDATA[<img alt="" src="http://ec1.images-amazon.com/images/I/51E92-oqyML._AA240_.jpg" height="240" width="240" />昨天由于有点时间，就想找本书看看。在手头上找了本最薄的书－《MySQL Phrasebook - Essential Code and Commands》。最近因工作需要，刚从Hibernate转到iBatis。这个转变感觉自己离OO远了一点，而离DO(DB-oriented)却近了一点，现在要对数据库级的细节要更加了解了。<br />
看标题"Phrasebook"感觉就像时下不少的&#8220;XXX高手箴言&#8221;之类的书，没翻之前还抱着希望是一些经验总结的精华集。当看完整本书，发现大部分篇幅都是讲SQL语法和MySQL的一些基础指令。也有一点cookbook的味道，讲述解决某一类问题时的方案。还有一些安全小tips是不错的。还有一章讲MYSQL对各语言的接口的，我是直接跳过了。<br />
刚翻完的时候其实我想骂，&#8220;什么烂phrasebook，要学这些基础语法指令我不如去看MYSQL的官方教程&#8221;，但想到它的副标是&#8220;Essential Code and Commands&#8221;。。。算了<br />
总的来说，这本书对于MYSQL的新手还是有点用的，可以让你了解有些什么要注意的，有些什么小技巧之类的。但对大部分用过MySQL一段时间的人来说，这本书是不值得买的。<br />
<br />
书虽然是不怎么好，但在其中学到了一些新东西：<br />
DELAY_KEY_WRITE<br />
作用：减少MyISAM表更新索引的次数<br />
用法：ALTER TABLE table_name DELAY_KEY_WRITE = 1;<br />
<br />
LIKE中的'_'<br />
作用：匹配一个字符（我以前只知道%）<br />
<br />
&lt;=&gt;<br />
作用："NULL安全&#8221;的不等，正常的!=遇到NULL时不会返回0（false),1(true)，而是返回NULL，用&lt;=&gt;就会得到你想要的结果了<br />
<br />
启动选项--safe-updates<br />
作用：不执行无WHERE子句的DELETE和UPDATE语句
<img src ="http://www.blogjava.net/jarod/aggbug/156462.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-10-28 12:25 <a href="http://www.blogjava.net/jarod/archive/2007/10/28/156462.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>汇编的笔记</title><link>http://www.blogjava.net/jarod/archive/2007/10/27/156373.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Sat, 27 Oct 2007 09:36:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/10/27/156373.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/156373.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/10/27/156373.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/156373.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/156373.html</trackback:ping><description><![CDATA[<h1>Registers</h1>
<br />
<div><br />
<h2>General-purpose registers</h2>
<br />
Register Description<br />
EAX Accumulator for operands and results data<br />
EBX Pointer to data in the data memory segment<br />
ECX Counter for string and loop operations<br />
EDX I/O pointer<br />
EDI Data pointer for destination of string operations<br />
ESI Data pointer for source of string operations<br />
ESP Stack pointer<br />
EBP Stack data pointer<br />
</div>
<br />
<div><br />
<h2>Segment registers</h2>
<br />
Segment Register Description<br />
CS Code segment<br />
DS Data segment<br />
SS Stack segment<br />
ES Extra segment pointer<br />
FS Extra segment pointer<br />
GS Extra segment pointer<br />
</div>
<br />
<div><br />
<h2>Instruction pointer register</h2>
<br />
EIP keeps track of the next instruction code to execute<br />
</div>
<br />
<div><br />
<h2>Control registers</h2>
<br />
Control Register Description<br />
CR0 System flags that control the operating mode and states of the processor<br />
CR1 Not currently used<br />
CR2 Memory page fault information<br />
CR3 Memory page directory information<br />
CR4 Flags that enable processor features and indicate feature capabilities of the processor<br />
</div>
<br />
<br />
<br />
<br />
<h1>Sections</h1>
<br />
<div><br />
<h2>.section .data</h2>
<br />
section for variables declaration<br />
<br />
Directive Data Type<br />
.ascii Text string<br />
.asciz Null-terminated text string<br />
.byte Byte value<br />
.double Double-precision floating-point number<br />
.float Single-precision floating-point number<br />
.int 32-bit integer number<br />
.long 32-bit integer number (same as .int)<br />
.octa 16-byte integer number<br />
.quad 8-byte integer number<br />
.short 16-bit integer number<br />
.single Single-precision floating-point number (same as .float)<br />
<br />
.equ static variables<br />
</div>
<br />
<div><br />
<h2>.section .rodata</h2>
<br />
section for constants declaration<br />
</div>
<br />
<div><br />
<h2>.section .bss</h2>
<br />
buffers<br />
<br />
Directive Description<br />
.comm Declares a common memory area for data that is not initialized<br />
.lcomm Declares a local common memory area for data that is not initialized<br />
</div>
<br />
<br />
<h2>.section .text</h2>
<br />
assembly codes<br />
<br />
Directive Description<br />
.global _start entry point
<img src ="http://www.blogjava.net/jarod/aggbug/156373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-10-27 17:36 <a href="http://www.blogjava.net/jarod/archive/2007/10/27/156373.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux下Subversion服务架设</title><link>http://www.blogjava.net/jarod/archive/2007/10/27/156372.html</link><dc:creator>Jarod</dc:creator><author>Jarod</author><pubDate>Sat, 27 Oct 2007 09:32:00 GMT</pubDate><guid>http://www.blogjava.net/jarod/archive/2007/10/27/156372.html</guid><wfw:comment>http://www.blogjava.net/jarod/comments/156372.html</wfw:comment><comments>http://www.blogjava.net/jarod/archive/2007/10/27/156372.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/jarod/comments/commentRss/156372.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jarod/services/trackbacks/156372.html</trackback:ping><description><![CDATA[<h3>一、工具准备</h3>
<br />
Apache Web服务器：<a href="http://government-grants.org/mirrors/apache.org/httpd/httpd-2.2.4.tar.bz2">httpd-2.2.4.tar.bz2</a><br />
Subversion源码包及依赖包：<a href="http://subversion.tigris.org/downloads/subversion-1.4.3.tar.bz2">subversion-1.4.3.tar.bz2</a>,<a href="http://subversion.tigris.org/downloads/subversion-deps-1.4.3.tar.bz2">subversion-deps-1.4.3.tar.bz2</a><br />
(下面假设apache和svn源码都解压到了/home/tmp下)<br />
<br />
<h3>二、安装Apache</h3>
<br />
Apache的安装就根平时安装Apache没什么两样，都记得要打开dav模块和动态模块选项。安装安装命令如下：<br />
<blockquote>tar xfj httpd-2.2.4.tar.bz2<br />
cd httpd-2.2.4<br />
./buildconf<br />
./configure --enable-dav --enable-so<br />
make<br />
make install<br />
</blockquote><br />
<br />
<h3>三、安装Subversion</h3>
<br />
SVN的安装一定要注意：<br />
<ul><br />
    <li>SVN
    依赖的APR版本要正确。如果Apache为2.0.x，对应的APR版本应为0.9.x；Apache为2.2.x，对应的APR版本应为1.2.x。
    由于subversion-deps包里的APR是0.9.x的，因此编译svn时要删除从deps里解压出来的apr,
    apr-util，改而使用apache 2.2里提供的。</li>
    <br />
    <li>如果apache不是安装在默认路径，configure必須加上--with-apxs选项,如：./configure --with-apxs=/home/apache2/bin/apxs</li>
    <br />
</ul>
<br />
安装命令如下：<br />
<blockquote><br />
tar xfj subversion-1.4.3.tar.bz2<br />
tar xfj subversion-deps-1.4.3.tar.bz2<br />
# subversion-deps的文件也会解压到subversion-1.4.3目录中<br />
cd subversion-1.4.3<br />
rm -rf apr<br />
rm -rf apr-util<br />
ln -s /home/tmp/httpd-2.2.4/srclib/apr apr<br />
ln -s /home/tmp/httpd-2.2.4/srclib/apr-util apr-util<br />
./configure &amp;&amp;amp;amp; make &amp;&amp; make install<br />
</blockquote><br />
安
装完成后，查看是否存在文件$APACHE_HOME/modules/mod_dav_svn.so（默认
/usr/local/apache2/modules/mod_dav_svn.so)。另外，如果该机器上以前是装过旧版本的SVN，要把
"/usr/local/lib/libsvn*"文件都删除。<br />
<br />
<h3>四、在apache中配置svn</h3>
<br />
创建SVN库：<br />
<blockquote>cd /home/svn<br />
svnadmin create repo1</blockquote><br />
<br />
在Apache
的配置文件httpd.conf中加入以下代码，Apache中就可以配置好一个虚拟主机svn.mydomain.net，并把该域名下的根路径配置给
Subversion。通过AuthzSVNAccessFile和AuthUserFile指令分别配置SVN用户的用户名和密码文件。<br />
<blockquote>&lt;virtualhost *:80&gt;<br />
DocumentRoot /home/svn/htdocs<br />
&lt;directory&gt;<br />
Options Includes<br />
AllowOverride All<br />
Order allow,deny<br />
Allow from all<br />
&lt;/directory&gt;<br />
<br />
&lt;location /&gt;<br />
DAV svn<br />
SVNParentPath /home/svn/svnroot<br />
AuthzSVNAccessFile /home/svn/svnroot/conf/accessfile<br />
Require valid-user<br />
AuthType Basic<br />
AuthName "Subversion System"<br />
AuthUserFile /home/svn/svnroot/conf/passwdfile<br />
&lt;/location&gt;<br />
<br />
ServerName svn.mydomain.net<br />
DirectoryIndex index.html<br />
&lt;/virtualhost&gt;<br />
</blockquote><br />
<br />
<br />
创建文件/home/svn/svnroot/conf/accessfile：<br />
<blockquote><br />
[groups]<br />
user = jarod<br />
anonymous = guest<br />
[/]<br />
* = r<br />
@user = rw<br />
@anonymous = r<br />
</blockquote><br />
<br />
再用htpasswd命令创建/home/svn/svnroot/conf/passwdfile文件：<br />
<blockquote><br />
htpasswd -c /home/svn/svnroot/conf/passwdfile jarod<enter><br />
# 这时会提示输入密码<br />
</enter></blockquote><br />
<br />
最后把/home/svn目录的拥有者设为启动apache服务的用户，apache-2.2默认会由daemon用户启动：<br />
<blockquote>chown daemon.daemon -R /home/svn<br />
chmod 777 /home/svn -R</blockquote><br />
<br />
大功告成，通过浏览器或SVN客户端测试http://svn.mydomain.net/repo1
<img src ="http://www.blogjava.net/jarod/aggbug/156372.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jarod/" target="_blank">Jarod</a> 2007-10-27 17:32 <a href="http://www.blogjava.net/jarod/archive/2007/10/27/156372.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>