<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>鱼一尾的Blog</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/" />
    <link rel="self" type="application/atom+xml" href="http://acevery.blogcs.com/atom.xml" />
    <id>tag:acevery.blogcs.com,2008-11-19://6</id>
    <updated>2010-02-21T14:52:02Z</updated>
    <subtitle>记录小鱼的点点滴滴</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Open Source 4.21-zh-cn</generator>

<entry>
    <title>distcc的一点点注意</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2010/02/distcc.html" />
    <id>tag:acevery.blogcs.com,2010://6.2507</id>

    <published>2010-02-21T13:51:23Z</published>
    <updated>2010-02-21T14:52:02Z</updated>

    <summary>话说在Gentoo上用distcc来加速编译也有些时日了，但今天才比较明白研究是怎么个设置法，就把 自己觉得是关键的几个设置点勾勒勾勒。 首先，可以认为distcc的体系中有两个角色，一是把.c或.cpp发出去，等着收.o的机子，可 以认为是client；另一种是收.c或.cpp，编译为.o发出去的...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="Linux学习" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="distcc" label="distcc" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>话说在Gentoo上用distcc来加速编译也有些时日了，但今天才比较明白研究是怎么个设置法，就把
自己觉得是关键的几个设置点勾勒勾勒。
</p>
<p>
首先，可以认为distcc的体系中有两个角色，一是把.c或.cpp发出去，等着收.o的机子，可
以认为是client；另一种是收.c或.cpp，编译为.o发出去的机子，可以认为是server。无论
是client还是server都需要有相同的toolchain和distcc，就是说
binutils、gcc、libtool、glibc、distcc都要一样。当然server上可以是交叉编译用的工
具链（可以用crossdev生成）
</p>
<p>
如果说client和server都是一样架构的机子，比如都是x86，那只需在client和server上都emerge上相同
版本的binutils、gcc、libtool、glibc和distcc即可。但如果说client是i686，server是x86_64就麻烦一些了。
怎么办呢？只要在server上做一个交叉编译的工具链就可以了。这可以用crossdev来做。
</p>
<p>
在x86_64的server机上emerge crossdev后，可以用crossdev -t
i686-pc-linux-gnu来生成所需要的i686的工具链，此时在eix-update后你可以用eix -e
binutils看到会有一个cross-i686-pc-linux-gnu/binutils，同样的情况还有gcc、linux-headers、glibc，
确保这几个cross-i686-pc-linux-gnu/xx和你client机上的相应包是一样的版本。之后在server和client上都
emerge上相同版本的distcc。
</p>
<p>
然后在server机上设置一下distccd，以便能接client机发出的编译请求。主要是建立一个日志文件，设置一下/etc/conf.d/distccd，然后启动distccd后台，并加到了default的runlevel中:
</p>
<!--Box Code-->
<p><table style="margin-left:2em;border: 1px solid rgb(191, 255, 191); background-color: rgb(242, 255, 242);" cellpadding="0" cellspacing="0" width="75%">
<tbody><tr>
<td style="border-style: solid; border-color: rgb(160, 255, 160) rgb(160, 255,
160) rgb(136, 136, 136); border-width: 1px; background-color: rgb(193, 255,
193);"> <font size="-1"><b>代码：</b> 建立distccd日志文件</font>
</td></tr>
<tr>
<td>
<div class="scroll">
<pre style="padding:1em;border:1px dashed rgb(61,98,235);background-color:
rgb(255,255,255)">touch /var/log/distccd
chown distcc:daemon /var/log/distccd</pre>
</div>
</td></tr></tbody></table></p>
<!--EOF Box Code-->
<p>
chown一定要做，不然distccd会因为没有写不了日志而起不来。
</p>

<!--Box File-->
<p><table style="margin-left:2em; border: 1px solid #ffbfbf; background-color: rgb(255,242,242);" cellpadding="0" cellspacing="0" width="75%">
<tbody><tr>
<td style="border-bottom: 1px solid rgb(136,136,136); background-color:
rgb(255,175,175);"> <font size="-1"><b>文件:</b>  /etc/conf.d/distccd</font>
</td></tr>
<tr>
<td>
<div class="scroll">
<pre style="padding:1em; border:1px dashed rgb(61,98,235); background-color:
rgb(255,255,255)">DISTCCD_OPTS=""

# this is the distccd executable 
DISTCCD_EXEC="/usr/bin/distccd"

# this is where distccd will store its pid file
DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"

# set this option to run distccd with extra parameters
# Default port is 3632.  For most people the default is okay.
DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"

# 设置一下日志文件
DISTCCD_OPTS="${DISTCCD_OPTS} --log-file /var/log/distccd"
DISTCCD_OPTS="${DISTCCD_OPTS} --log-level critical"
# 允许连接的client，以198.168.0.2和10.0.0.0/24为例，当然嘻嘻...
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 198.168.0.2"
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 10.0.0.0/24"
# server的ip
DISTCCD_OPTS="${DISTCCD_OPTS} --listen 198.168.0.3"
# set this for niceness
# Default is 15
DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"</pre>
</div>
</td></tr></tbody></table></p>
<!--EOF Box File-->
<p>
然后，启动distccd，并加到default的runlevel中:
</p>

<!--Box Code-->
<p><table style="margin-left:2em;border: 1px solid rgb(191, 255, 191); background-color: rgb(242, 255, 242);" cellpadding="0" cellspacing="0" width="75%">
<tbody><tr>
<td style="border-style: solid; border-color: rgb(160, 255, 160) rgb(160, 255,
160) rgb(136, 136, 136); border-width: 1px; background-color: rgb(193, 255,
193);"> <font size="-1"><b>代码：</b> 启动distccd</font>
</td></tr>
<tr>
<td>
<div class="scroll">
<pre style="padding:1em;border:1px dashed rgb(61,98,235);background-color:
rgb(255,255,255)">/etc/init.d/distccd start
rc-update add distccd default</pre>
</div>
</td></tr></tbody></table></p>
<!--EOF Box Code-->

<p>接着，我们需要在client上做一下设置，使得emerge时distcc出去的是i686-pc-linux-gnu-gcc这样
完整的编译器名称而不是简单的gcc。方法很简单，只需要在/usr/lib/distcc/bin下添加一个i686-pc-linux-gnu-wrapper:
</p>
<!--Box File-->
<p><table style="margin-left:2em; border: 1px solid #ffbfbf; background-color: rgb(255,242,242);" cellpadding="0" cellspacing="0" width="75%">
<tbody><tr>
<td style="border-bottom: 1px solid rgb(136,136,136); background-color:
rgb(255,175,175);"> <font size="-1"><b>文件:</b>
/usr/lib/distcc/bin/i686-pc-linux-gnu-wrapper</font>
</td></tr>
<tr>
<td>
<div class="scroll">
<pre style="padding:1em; border:1px dashed rgb(61,98,235); background-color:
rgb(255,255,255)">#!/bin/bash
exec /usr/lib/distcc/bin/i686-pc-linux-gnu-g${0:$[-2]} "$@"</pre>
</div>
</td></tr></tbody></table></p>
<!--EOF Box File-->
<p>
然后cd到/usr/lib/distcc/bin下，把gcc、g++、cc、c++等直接指向/usr/bin/distcc的链接指向我们的
i686-pc-linux-gnu-wrapper:
</p>

<!--Box Code-->
<p><table style="margin-left:2em;border: 1px solid rgb(191, 255, 191); background-color: rgb(242, 255, 242);" cellpadding="0" cellspacing="0" width="75%">
<tbody><tr>
<td style="border-style: solid; border-color: rgb(160, 255, 160) rgb(160, 255,
160) rgb(136, 136, 136); border-width: 1px; background-color: rgb(193, 255,
193);"> <font size="-1"><b>代码：</b> 指向i686-pc-linux-gnu-wrapper</font>
</td></tr>
<tr>
<td>
<div class="scroll">
<pre style="padding:1em;border:1px dashed rgb(61,98,235);background-color:
rgb(255,255,255)">cd /usr/lib/distcc/bin
ln -sf i686-pc-linux-gnu-wrapper gcc
ln -sf i686-pc-linux-gnu-wrapper g++
ln -sf i686-pc-linux-gnu-wrapper c++
ln -sf i686-pc-linux-gnu-wrapper cc</pre>
</div>
</td></tr></tbody></table></p>
<!--EOF Box Code-->
<p>
这样从client机子上distcc出去的就全部都是完整的i686-pc-linux-gnu-gcc和
i686-pc-linux-gnu-g++了。从而，在x86_64的server机上的distccd就能正确调用交叉编译
i686用的工具链而不是x86_64的工具链来编译了。
</p>
<p>
最后，在/etc/distcc/hosts中加上server，具体的设置可以man
distcc看下。其实很简单，比如我打算在本机上编译1个任务，但在server上编译3个，那么:
</p>
<!--Box File-->
<p><table style="margin-left:2em; border: 1px solid #ffbfbf; background-color: rgb(255,242,242);" cellpadding="0" cellspacing="0" width="75%">
<tbody><tr>
<td style="border-bottom: 1px solid rgb(136,136,136); background-color:
rgb(255,175,175);"> <font size="-1"><b>文件:</b>  /etc/distcc/hosts</font>
</td></tr>
<tr>
<td>
<div class="scroll">
<pre style="padding:1em; border:1px dashed rgb(61,98,235); background-color:
rgb(255,255,255)">localhost/1 192.168.0.3/3</pre>
</div>
</td></tr></tbody></table></p>
<!--EOF Box File-->
<p>
如果你有足够多的server的话，建议不让localhost作为server，因为distcc只能在server上编译而得到.o文件，configure、link等步骤在client上完成的，所以让你的client专门负责configure和link会使整个编译速度更快些。
</p>

]]>
        
    </content>
</entry>

<entry>
    <title>mysql的加密连接设置</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/11/mysql.html" />
    <id>tag:acevery.blogcs.com,2009://6.2485</id>

    <published>2009-11-29T13:10:18Z</published>
    <updated>2009-11-30T13:08:52Z</updated>

    <summary> 最近有设置一下mysql的数据库，需要从远程进行数据库的操作。为了保证安全， 就用了启用了SSL的加密连接。 mysql的加密连接设置并不复杂，首先需要生成CA的密钥对和server端及客户端的 密钥对。最简单的是用openvpn源代码中带的easy-rsa目录下的脚本，ca和key的生 成及签署...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>
最近有设置一下mysql的数据库，需要从远程进行数据库的操作。为了保证安全，
就用了启用了SSL的加密连接。
</p>
<p>
mysql的加密连接设置并不复杂，首先需要生成CA的密钥对和server端及客户端的
密钥对。最简单的是用openvpn源代码中带的easy-rsa目录下的脚本，ca和key的生
成及签署可以一气呵成，具体的使用看一下openvpn的quick start，里面对各个文
件的作用也作了详细的说明，是不错的参考资料。
</p>
<p>
有了ca和公钥私钥后就可以进行mysql
server和client的设置了，当然mysql编译的时候要加ssl的支持，Gentoo上加上ssl的USE就可以了。
</p>
<p>
server的设置有三步，
<ol>
  <li>把ca.crt、server.key、server.crt复制到/etc/mysql/下</li>
  <li>在/etc/mysql/my.cnf的[mysqld]中加入如下的设置，没有[mysqld]就自己加上嘛：
  <ul>
    <li>ssl</li>
    <li>ssl-ca=/etc/mysql/ca.crt</li>
    <li>ssl-key=/etc/mysql/server.key</li>
    <li>ssl-cert=/etc/mysql/server.crt</li>
  </ul>
  </li>
  <li>然后/etc/init.d/mysql restart 重启mysql服务。用mysql -u root -p
  登入mysql console，用show variable like "%ssl%";看看ssl的设置。再用
  GRANT语句+REQURE SSL或REQUIRE X509给需要远程连接的帐户设定SSL加密的要
  求。其中REQUIRE SSL需要client连接时必须用--ssl-ca=ca.crt出具和server端
  一样的ca公钥，REQUIRE X509更严格，还需用--ssl-cert和--ssl-key指定公钥
  私钥，估计公钥要用server端的ca签署</li>
</ol>
</p>
<p>
客户端上的设置类似，但可以在/etc/mysql/my.cnf或~/.my.cnf中的[client]或[mysql]中加入:
<ul>
  <li>ssl</li>
  <li>ssl-ca=ca文件</li>
  <li>ssl-cert=客户端的公钥</li>
  <li>ssl-key=客户端的私钥</li>
</ul>
</p>
<p>
这样，当客户端在连接服务器的时候就能用SSL连接了，否则就会有 ERROR 2026 (HY000): SSL connection error 的错误啦。
</p>

]]>
        
    </content>
</entry>

<entry>
    <title>思绪纷乱</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/09/post_22.html" />
    <id>tag:acevery.blogcs.com,2009://6.2460</id>

    <published>2009-09-21T17:16:50Z</published>
    <updated>2009-09-21T17:29:53Z</updated>

    <summary>划过天际，光线的忽明忽暗忽暗。 似有似无，以何来纷然释出？ 心灵的轨迹，那宛如星光般璀灿的光芒，又如那黑色的光线，从身边无声地滑过。 梦想，展开的画卷，宁静的深夜中最静谧的部分，在远方，在眼前。 ...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>划过天际，光线的忽明忽暗忽暗。
</p>

<p>似有似无，以何来纷然释出？
</p>

<p>心灵的轨迹，那宛如星光般璀灿的光芒，又如那黑色的光线，从身边无声地滑过。
</p>

<p>梦想，展开的画卷，宁静的深夜中最静谧的部分，在远方，在眼前。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>终于完成论文了</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/09/post_21.html" />
    <id>tag:acevery.blogcs.com,2009://6.2451</id>

    <published>2009-09-10T12:05:08Z</published>
    <updated>2009-09-10T12:25:05Z</updated>

    <summary>花了快4个月的时间，终于一步步把硕士论文完成了。虽然到头来觉得做得不咋 的，但总算是给自己的硕士生活划上了一个句号。 从用LaTeX的那天开始就想说用LaTeX写自己的毕业论文，到现在终于实现了， 而且是用自己东拼西凑折腾出来的XeLaTeX模板加上Adobe的opentype字体。这个模 板不单单...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>花了快4个月的时间，终于一步步把硕士论文完成了。虽然到头来觉得做得不咋
的，但总算是给自己的硕士生活划上了一个句号。
</p>
<p>从用LaTeX的那天开始就想说用LaTeX写自己的毕业论文，到现在终于实现了，
而且是用自己东拼西凑折腾出来的XeLaTeX模板加上Adobe的opentype字体。这个模
板不单单是生成A4的论文，还可以生成打印时需要的A3+(440cm x 297cm )的封面，
用于制作论文的时候一并传给打印店用。做了这个模板也算是让厦大的同仁们能与
是俱进下。回头整理一下就发布出来。
</p>
<p>从下定决心开始用心弄论文到现在，ibus-table的开发基本停止了下来。其他
诸多爱好也都暂时歇菜。现在工作也开始步入正轨了，生活也逐步好了起来，
ibus-table的开发也要逐渐恢复一下了 :) 打算每天花1个小时在ibus-table上面，
逐步完成之前想好的计划。
</p>
<p>生活也慢慢地转变了，不过还是喜欢待在办公室里写代码，仿佛是以前在实验室
的那种感觉。只是到了晚上只有自己一个人占了一整间，而不是像实验室里有一群
人各自盯着自己的屏幕罢了，倒也清静得很。
</p>
]]>
        
    </content>
</entry>

<entry>
    <title>拍了硕士服照</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/05/post_20.html" />
    <id>tag:acevery.blogcs.com,2009://6.2332</id>

    <published>2009-05-29T10:44:47Z</published>
    <updated>2009-05-29T11:03:41Z</updated>

    <summary>今天早上和大伙一起在厦大里拍了硕士服照，一堆合影加一堆非合影，呵呵。天气不错，一直到快中午的时候才出大太阳，所以还不算太热。先在化院前面拍了拍，然后是到西门，接着到校史馆前，转到嘉庚广场、圆形舞台，奔到上弦场，最后在图书馆前鸣金。 因为端午节回家了，所以早上是5:30爬起来，坐6:30的车回厦门，赶...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>今天早上和大伙一起在厦大里拍了硕士服照，一堆合影加一堆非合影，呵呵。天气不错，一直到快中午的时候才出大太阳，所以还不算太热。先在化院前面拍了拍，然后是到西门，接着到校史馆前，转到嘉庚广场、圆形舞台，奔到上弦场，最后在图书馆前鸣金。
</p>
<p>因为端午节回家了，所以早上是5:30爬起来，坐6:30的车回厦门，赶在9:00的时候到实验室的，加上一早上狂照、说话、徒步，到中午时已经非常饿了，但不忍穿着正装直奔餐厅，只能先站上厦20(从前的811)先回到公寓换了身便装出来。一看已经12点半多了，冲去公寓一期连青菜都稀缺了，稍作无语状，便改投"哆唻咪"。饭饱后赶紧把衬衫洗净了晾上。
</p>
<p>上床倒头一睡便到了下午4点了，起来把上午的诸多合照打包了传上ftp。当准备把干了的衬衫收下来时，瞄到口袋上有一不明污物，汗...... 只能把干了的衬衫抓下来再洗一次，搓了半天，终于搞定，再次挂起，然后日已西山了。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>emesene在python-2.6下发离线消息崩溃的问题</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/05/emesenepython-26.html" />
    <id>tag:acevery.blogcs.com,2009://6.2314</id>

    <published>2009-05-19T05:19:27Z</published>
    <updated>2009-05-19T05:30:59Z</updated>

    <summary>之前一直以为是emesene的问题，昨天用gdb attach上进程发现是在调用uuid模块中的uuid4()时e2fsprogs-libs中的uuid模块段错误了。这个问题在ibus-table中也出现过，当时因为已经不需要uuid了就把uuid4的代码注释掉了，也没有多注意。但这次emesene...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="Linux学习" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>之前一直以为是emesene的问题，昨天用gdb attach上进程发现是在调用uuid模块中的uuid4()时e2fsprogs-libs中的uuid模块段错误了。这个问题在ibus-table中也出现过，当时因为已经不需要uuid了就把uuid4的代码注释掉了，也没有多注意。但这次emesene需要用uuid来生成离线信息的RunID，不能没有。于是就看了一下uuid.py中生成uuid的几个办法，把用os.urandom生成UUID的那句直接port到了emesene的MsnOIM.py中，这样就不需要用uuid4了。改头换面一下，emesene就又能正常发离线消息了 :)
</p>
<p>已经在emesene的trac上提交了patch，gentoo-china-overlay中已经应用了补丁了 :)
</p>]]>
        
    </content>
</entry>

<entry>
    <title>把movable type的blog同步上校内的方法</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/05/movable_typeblog.html" />
    <id>tag:acevery.blogcs.com,2009://6.2313</id>

    <published>2009-05-19T02:25:49Z</published>
    <updated>2009-05-19T02:50:53Z</updated>

    <summary><![CDATA[movable默认的feed输出是用atom，而校内只认rss，所以我们需要先生成rss.xml，这样校内才能同步地导入。在movable上，你需要先在索引模板中新增一个RSS Feed，内容如下： &lt;$mt:HTTPContentType type="application/rss+xml"...]]></summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>movable默认的feed输出是用atom，而校内只认rss，所以我们需要先生成rss.xml，这样校内才能同步地导入。在movable上，你需要先在索引模板中新增一个RSS Feed，内容如下：
</p>
<!--Box Code-->
<p>
<div >
<pre style="padding:1em;border:1px dashed rgb(61,98,235);background-color: rgb(255,255,255);  overflow-x:scroll;overflow:-moz-scrollbars-horizontal !important;">&lt;$mt:HTTPContentType type="application/rss+xml"$&gt;&lt;?xml version="1.0" encoding="&lt;$mt:PublishCharset$&gt;"?&gt;
&lt;rss version="2.0"&gt;
    &lt;channel&gt;
        &lt;title&gt;&lt;$mt:BlogName remove_html="1" encode_xml="1"$&gt;&lt;/title&gt;
        &lt;link&gt;&lt;$mt:BlogURL$&gt;&lt;/link&gt;
        &lt;description&gt;&lt;$mt:BlogDescription remove_html="1" encode_xml="1"$&gt;&lt;/description&gt;
        &lt;language&gt;&lt;$mt:BlogLanguage ietf="1"$&gt;&lt;/language&gt;
        &lt;copyright&gt;Copyright &lt;$mt:Date format="%Y"$&gt;&lt;/copyright&gt;
        &lt;lastBuildDate&gt;&lt;mt:Entries lastn="1"&gt;&lt;$mt:EntryDate format_name="rfc822"$&gt;&lt;/mt:Entries&gt;&lt;/lastBuildDate&gt;
        &lt;generator&gt;http://www.sixapart.com/movabletype/&lt;/generator&gt;
        &lt;docs&gt;http://www.rssboard.org/rss-specification&lt;/docs&gt;
&lt;mt:Entries lastn="15"&gt;
        &lt;item&gt;
            &lt;title&gt;&lt;$mt:EntryTitle remove_html="1" encode_xml="1"$&gt;&lt;/title&gt;
            &lt;description&gt;&lt;$mt:EntryBody encode_xml="1"$&gt;&lt;/description&gt;
            &lt;link&gt;&lt;$mt:EntryPermalink encode_xml="1"$&gt;&lt;/link&gt;
            &lt;guid&gt;&lt;$mt:EntryPermalink encode_xml="1"$&gt;&lt;/guid&gt;
    &lt;mt:EntryCategories&gt;
                &lt;category domain="http://www.sixapart.com/ns/types#category"&gt;&lt;$mt:CategoryLabel remove_html="1" encode_xml="1"$&gt;&lt;/category&gt;
    &lt;/mt:EntryCategories&gt;
    &lt;mt:EntryTags&gt;
                &lt;category domain="http://www.sixapart.com/ns/types#tag"&gt;&lt;$mt:TagName remove_html="1" encode_xml="1"$&gt;&lt;/category&gt;
    &lt;/mt:EntryTags&gt;
            &lt;pubDate&gt;&lt;$mt:EntryDate format_name="rfc822"$&gt;&lt;/pubDate&gt;
        &lt;/item&gt;
&lt;/mt:Entries&gt;
    &lt;/channel&gt;
&lt;/rss&gt;
</pre>
</div>
</p>
<p>
模板的参数中有一个输出文件，填上rss.xml，好了之后保存并发布。
</p>
<p>然后在索引模板中的Index页面中找到name="html_head"的那个标签，在rsd条目下加上一条</p>
<!--Box Code-->
<p>
<div >
<pre style="padding:1em;border:1px dashed rgb(61,98,235);background-color: rgb(255,255,255);  overflow-x:scroll;overflow:-moz-scrollbars-horizontal !important;">&lt;link rel="alternate" type="application/atom+xml" title="Atom" href="&lt;$mt:Link template="RSS Feed"$&gt;" /&gt;
</pre>
</div></p>
<p>这条是照猫画虎，起什么作用偶就不知道了。
</p>
<p>我自己是有在重建全站后再到校内的日志页面中的站外博客的导入，在输入框中填入xxx.xxx.xxx/rss.xml 再选择确定。不过我觉得可能不需要重建全站这步 :) 现在校内就能找到你blog上的rss.xml了，它就会把近期的日志列出来让你选择导入了 :D
</p>]]>
        
    </content>
</entry>

<entry>
    <title>开始把blog上的新内容用RSS同步上校内了</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/05/blogrss.html" />
    <id>tag:acevery.blogcs.com,2009://6.2308</id>

    <published>2009-05-17T03:11:08Z</published>
    <updated>2009-05-17T03:13:58Z</updated>

    <summary>现在开始用校内了，但在两边同时写比较麻烦，于是想到用RSS把blog上更新的内容直接贴到校内上，于是就弄了一下，基本可以满足要求，以后就可以让校内的同学容易地看到我更新的blog文章了 :) ...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>现在开始用校内了，但在两边同时写比较麻烦，于是想到用RSS把blog上更新的内容直接贴到校内上，于是就弄了一下，基本可以满足要求，以后就可以让校内的同学容易地看到我更新的blog文章了 :)
</p>]]>
        
    </content>
</entry>

<entry>
    <title>cups-1.3.10的打印机问题</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/04/cups-1310.html" />
    <id>tag:acevery.blogcs.com,2009://6.2281</id>

    <published>2009-04-23T05:43:41Z</published>
    <updated>2009-04-23T05:48:02Z</updated>

    <summary>前天cups从1.3.9升级到了1.3.10，但问题也来了，打印不了了。后在在bugs.gentoo.org上知道是因为1.3.10默认是不解析域名的，导致/etc/cups/client.conf中的ServerName localhost 无效。最好的解决办法是把localhost修改为 /va...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="Linux学习" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>前天cups从1.3.9升级到了1.3.10，但问题也来了，打印不了了。后在在bugs.gentoo.org上知道是因为1.3.10默认是不解析域名的，导致/etc/cups/client.conf中的ServerName localhost 无效。最好的解决办法是把localhost修改为 /var/run/cups/cups.sock ， 然后重启cupsd和要打印的程序（比如evince）就OK了。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>一个HSV到HTML RGB的颜色脚本</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/04/hsvhtml_rgb.html" />
    <id>tag:acevery.blogcs.com,2009://6.2272</id>

    <published>2009-04-13T02:55:45Z</published>
    <updated>2009-04-13T03:41:57Z</updated>

    <summary>地球人都知道，用HSV模型定义渐近的颜色最方便，但画图时matplotlib需要用rgb或html的颜色格式。先汗了一下，然后发现没有像range一样方便的函数生成html格式的颜色list，于是只能自己写一个。因为python的中有colorsys模块，用它就可以把HSV格式转成RGB，RGB到h...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>地球人都知道，用HSV模型定义渐近的颜色最方便，但画图时matplotlib需要用rgb或html的颜色格式。先汗了一下，然后发现没有像range一样方便的函数生成html格式的颜色list，于是只能自己写一个。因为python的中有colorsys模块，用它就可以把HSV格式转成RGB，RGB到html格式就非常easy了。因为起始和结束的颜色都从gcolor的色盘上找，所以色调H的定义域为[0,360]，饱和度S的定义域为[0,100]，明暗值V的定义域为[0,100]。而我们在定义渐近色的时候有两种需要，可能是沿色盘上的逆时针方向，由红->绿->蓝，也可能是想用顺时针方向，从红->蓝->绿，所以加了个clock_wise的参数，默认是False。
</p>
<!--Box Code-->
<p>
<div >
<pre style="padding:1em;border:1px dashed rgb(61,98,235);background-color: rgb(255,255,255);  overflow-x:scroll;overflow:-moz-scrollbars-horizontal !important;">
#!/usr/bin/python
# encoding: utf8
# filename: color_range.py
import colorsys

def hsv_to_html_range (color_start, color_end, numbers, clock_wise=False):
    ''' Like range(), to generate HTML RGB colors from start and end color
    in HSV. The Hue domain is (0,360), the Saturation domain is (0,100),
    the Value domain is (0,100). 
    The return is a list like ['#000000','#FFFFFF'].
    '''
    # here the color is (x,x,x), we need to get the interlaces of them.
    color_start = [color_start[0]/360.0, color_start[1]/100.0,
            color_start[2]/100.0]
    color_end = [color_end[0]/360.0, color_end[1]/100.0,
            color_end[2]/100.0]
    if clock_wise:
        color_end[0] +=1
    hsv = []
    # we could not use hsv = [[]] * numbers, because we use .append
    # below, which exactually append to a same [].
    for i in xrange(numbers):
        hsv.append([])
    for i in xrange(3): 
        inter = (color_end[i] - color_start[i] ) / (numbers - 1)
        for j in xrange(numbers):
            hsv[j].append(color_start[i] + j*inter)
    # now we convert the hsv to rgb
    #print hsv
    rgb = map (lambda x: colorsys.hsv_to_rgb (x[0],x[1],x[2]) , hsv) 
    html_rgb = map (lambda x: "#%02X%02X%02X" % tuple( map(lambda y:
        int(round(255*y)), x)), rgb)
    return html_rgb[:]
</pre>
</div>
</p>

]]>
        
    </content>
</entry>

<entry>
    <title>厦大的芙蓉湖</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/04/post_19.html" />
    <id>tag:acevery.blogcs.com,2009://6.2270</id>

    <published>2009-04-11T13:27:28Z</published>
    <updated>2009-04-11T14:00:13Z</updated>

    <summary>最近突然总想在芙蓉湖边上晃晃。看着湖边的景色，心里既有一种平静，又有一种起伏。看着边上初露端倪的国际会议中心，看着波纹轻摇的湖面，看着碧绿碧绿的树啊草的，看着树下、花坛中各色的花朵。吹吹迎面而来的风，然后放空。看着对岸上的湖石，大一时第一天早上在湖边晨读的记忆仿佛是在昨天。还记得当时穿过草地的时候还...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="母校" label="母校" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>最近突然总想在芙蓉湖边上晃晃。看着湖边的景色，心里既有一种平静，又有一种起伏。看着边上初露端倪的国际会议中心，看着波纹轻摇的湖面，看着碧绿碧绿的树啊草的，看着树下、花坛中各色的花朵。吹吹迎面而来的风，然后放空。看着对岸上的湖石，大一时第一天早上在湖边晨读的记忆仿佛是在昨天。还记得当时穿过草地的时候还沾了两脚的露水。
</p>
<p>天色渐暗，嘉庚广场的灯从背后穿过我周围的空气投到了湖面上，粼粼的波光恣意地荡漾，不远处有若即若离的话语声。回头看着沉浸在黄色灯光中的嘉庚广场，几年前和小邱跳台阶，和猫及其他人疯狂刷街的情形渐渐浮现，都不知道现在穿上powerslide还能飚多快。
</p>
<p>时间过得真快，转眼已经在厦大待了7年了。有朋友问我不会审美疲劳吗？我说不会。其实，如果你只到过厦大，你可能会觉得一切都是自然而然。当你到过其他大学或毕业离开它的时候，你就会真正理解，为什么厦大的校友会那么喜欢在校庆的时候回来捐钱。因为厦大的美，在校友的心中已经全然不仅仅是景色的美了。
</p>
<p>在那个凤凰花开的路口，有我们永远停留过的一个港口。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>哈哈，盲审没有抽到</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/04/post_18.html" />
    <id>tag:acevery.blogcs.com,2009://6.2266</id>

    <published>2009-04-10T07:26:56Z</published>
    <updated>2009-04-10T07:33:36Z</updated>

    <summary>下午全系抽毕业论文盲审，我们专业14人抽4个。于是抱着必死的决心去了，幸运的是轮到我前面一个同学的时候，她把最后一个签抽出来了，呼，松了一口气。 到下一个专业的时候，形势完全逆转，最后两根签留给了最后两个抽的同学。看到这样的情形，真是感叹实在是概率问题的说。 ...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>下午全系抽毕业论文盲审，我们专业14人抽4个。于是抱着必死的决心去了，幸运的是轮到我前面一个同学的时候，她把最后一个签抽出来了，呼，松了一口气。
</p>
<p>到下一个专业的时候，形势完全逆转，最后两根签留给了最后两个抽的同学。看到这样的情形，真是感叹实在是概率问题的说。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>music，music我中毒了</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/03/music.html" />
    <id>tag:acevery.blogcs.com,2009://6.2248</id>

    <published>2009-03-26T08:39:16Z</published>
    <updated>2009-03-26T08:59:46Z</updated>

    <summary>在换了外置的声卡和干净的三相电源后，我发现自己完全不想把ER4从耳道里拿出来了。音乐的感觉太好了，弦乐的华丽、钢琴的清澈、Pop的活力......一切的一切，丝丝入扣，仿佛一个无所不能的乐队在任何你需要的时候为你低吟轻唱，为你激情无限。当每一个音符在你耳中回响的时候，你可以感到它们是那么的真实，好像...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>在换了外置的声卡和干净的三相电源后，我发现自己完全不想把ER4从耳道里拿出来了。音乐的感觉太好了，弦乐的华丽、钢琴的清澈、Pop的活力......一切的一切，丝丝入扣，仿佛一个无所不能的乐队在任何你需要的时候为你低吟轻唱，为你激情无限。当每一个音符在你耳中回响的时候，你可以感到它们是那么的真实，好像你可以用手去轻轻地触摸到它们一般。环绕在你的周围的已经是无数的思绪和人类情感的绽放，每一分细节都是那么清楚不含糊，但又是那么的不可分离。从这一刻起我突然笑了，我中毒了。突然间我明白，生活中再也不能没有音乐了。
</p>
]]>
        
    </content>
</entry>

<entry>
    <title>笔记本的电源一定要尽量用三相的</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/03/post_17.html" />
    <id>tag:acevery.blogcs.com,2009://6.2246</id>

    <published>2009-03-24T07:01:49Z</published>
    <updated>2009-03-26T05:30:28Z</updated>

    <summary>电源对音响噪声的影响早以为发烧友们认识。但我之前对本本的电源还是有信心的，直到用上创新的Audigy2 ZS Notebook后才发现二相电源的噪声还是比较明显的，可以听见本底的电源哼哼声。有一个易行的消除办法，就是接上通的网线，网线就会起到接地的效果，从而去掉电源的哼哼声。为啥呢？因为地(GRD)...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>电源对音响噪声的影响早以为发烧友们认识。但我之前对本本的电源还是有信心的，直到用上创新的Audigy2 ZS Notebook后才发现二相电源的噪声还是比较明显的，可以听见本底的电源哼哼声。有一个易行的消除办法，就是接上通的网线，网线就会起到接地的效果，从而去掉电源的哼哼声。为啥呢？因为地(GRD)在电路中是连在一起的，我就不信你的ISP提供商的机柜敢不接地。当然最直接的办法就是用三相的电源，并让它接地。
</p>
<p>前天在淘宝上买了一个原装的IBM 16v 4.5A的短螺纹AC适配器，然后把用P7010的AC适配器上的接口移花接木了一下，就OK了。效果那是相当的明显。大家以后买本本的时候一定要尽量选三相的AC电源，电源不干净就别指望HiFi了。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>淘宝对linux下firefox的支持还是非常差(不会了)</title>
    <link rel="alternate" type="text/html" href="http://acevery.blogcs.com/2009/03/linuxfirefox.html" />
    <id>tag:acevery.blogcs.com,2009://6.2243</id>

    <published>2009-03-22T16:37:42Z</published>
    <updated>2009-03-25T12:17:54Z</updated>

    <summary>现在只能买，而且买完要确认付款还是必须用ie，firefox中看不到支持的按钮..... 想在淘宝上卖自己闲置的包包，结果东西在firefox中都发布不出去，还是得切到virtualbox下用ie发，淘宝啊淘宝，你怎么还是这么不方便呢! 注：后来在druggo帮我确定在他的机子上firefox用淘宝...</summary>
    <author>
        <name>acevery</name>
        
    </author>
    
        <category term="杂记" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="zh-cn" xml:base="http://acevery.blogcs.com/">
        <![CDATA[<p>现在只能买，而且买完要确认付款还是必须用ie，firefox中看不到支持的按钮.....
</p>
<p>想在淘宝上卖自己闲置的包包，结果东西在firefox中都发布不出去，还是得切到virtualbox下用ie发，淘宝啊淘宝，你怎么还是这么不方便呢!</p>
<p>注：后来在druggo帮我确定在他的机子上firefox用淘宝是完全OK了，我就怀疑是我firefox的插件设置有问题，于是运用binary search找到是adblock plus引起的。进一步排查，发现是ChinaList中的一条过滤规则导致的，就是"http://*.htm$script"。于是在adblock的白名单中加上了"@@http://*.taobao.com/*.htm$script"就可以收藏商铺和宝贝了，不过还没有测试确认收货能不能用，估计也没有问题了，下次有买东西的时候再试了 :)
</p>]]>
        
    </content>
</entry>

</feed>
