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

<channel>
	<title>JoeCen's 小猫窝</title>
	<atom:link href="http://www.joecen.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joecen.com</link>
	<description>Target -&#62; To Do -&#62; Done</description>
	<pubDate>Mon, 27 Feb 2012 13:34:27 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>creative D80蓝牙音箱的驱动</title>
		<link>http://www.joecen.com/2012/02/27/creative_d80_bluetouth_dirver/</link>
		<comments>http://www.joecen.com/2012/02/27/creative_d80_bluetouth_dirver/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 13:34:27 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Others]]></category>

		<category><![CDATA[bluetouth]]></category>

		<category><![CDATA[creative]]></category>

		<category><![CDATA[d80]]></category>

		<category><![CDATA[dirver]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=516</guid>
		<description><![CDATA[好久没搞windows下面的东西。
这两天买了creative 的D80蓝牙音箱，发现家里windows 7 的系统自带蓝牙不能连接，创新的网站上面也没有相应的驱动下载，使用手机或者ipad等都能顺利连接。
后来使用... ]]></description>
			<content:encoded><![CDATA[<p>好久没搞windows下面的东西。<br />
这两天买了creative 的<a href="http://cn.creative.com/products/product.asp?category=4&#038;subcategory=938&#038;product=20593">D80</a>蓝牙音箱，发现家里windows 7 的系统自带蓝牙不能连接，创新的网站上面也没有相应的驱动下载，使用手机或者ipad等都能顺利连接。<br />
后来使用mac book连接，也顺利连接上了。看来一下芯片，原来是atheros的，下载安装<a href="http://www.google.com.hk/search?ix=hea&#038;sourceid=chrome&#038;ie=UTF-8&#038;q=ATHEROS%E8%93%9D%E7%89%99%E8%AE%BE%E5%A4%87%E9%A9%B1%E5%8A%A8">ATHEROS蓝牙设备驱动</a>即可。<br />
坑爹的是，这个驱动居然有170多兆。</p>
<p>PS:D80的音质不敢恭维，有米还是直接上D200好了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2012/02/27/creative_d80_bluetouth_dirver/feed/</wfw:commentRss>
		</item>
		<item>
		<title>xen error: “you need to load the kernel first”</title>
		<link>http://www.joecen.com/2012/01/11/xen-error-%e2%80%9cyou-need-to-load-the-kernel-first%e2%80%9d/</link>
		<comments>http://www.joecen.com/2012/01/11/xen-error-%e2%80%9cyou-need-to-load-the-kernel-first%e2%80%9d/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 15:42:33 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<category><![CDATA[debian]]></category>

		<category><![CDATA[grub]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=514</guid>
		<description><![CDATA[debian（lenny） 无端端换了grub2,整个grub的架构和配置都天翻地覆。 安装xen重启系统后，grub会出现下面的提示：
error: “you need to load the kernel first”
问题的原因是grub2没有load到xen真正的内核,如xen-... ]]></description>
			<content:encoded><![CDATA[<p>debian（lenny） 无端端换了grub2,整个grub的架构和配置都天翻地覆。 安装xen重启系统后，grub会出现下面的提示：</p>
<div class="hl-surround"><div class="hl-main">error: “you need to load the kernel first”</div></div>
<p>问题的原因是grub2没有load到xen真正的内核,如xen-3.2-1-amd64.gz，而是把vmlinuz-2.6.26-2-xen-amd64作为内核。<br />
网上google了一下，试了几个方法都不行，grub2的语法似乎是有点问题，也没有时间去慢慢试了，机房的同事还在守着。<br />
于是用了最简单的解决方法，使用apt安装grub Legacy 取代grub2即可。</p>
<div class="hl-surround"><div class="hl-main">apt-get grub</div></div>
<p>即可。会提示与grub-pc由冲突，同意解决方案即可:</p>
<div class="hl-surround"><div class="hl-main">grub-pc: Conflicts: grub but 0.97-47lenny2 is to be installed.<br />The following actions will resolve these dependencies:<br /><br />Remove the following packages:<br />grub-pc<br /><br />Score is 121<br /><br />Accept this solution? [Y/n/q/?] Y</div></div>
<p>安装完后运行</p>
<div class="hl-surround"><div class="hl-main">grub-install /dev/sda<br />update-grub</div></div>
<p>重启机器即可启动xen的内核。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2012/01/11/xen-error-%e2%80%9cyou-need-to-load-the-kernel-first%e2%80%9d/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ubuntu下修改照片的EXIF信息</title>
		<link>http://www.joecen.com/2011/11/26/ubuntu_modify_exif/</link>
		<comments>http://www.joecen.com/2011/11/26/ubuntu_modify_exif/#comments</comments>
		<pubDate>Sat, 26 Nov 2011 15:24:31 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Living]]></category>

		<category><![CDATA[exif]]></category>

		<category><![CDATA[photo]]></category>

		<category><![CDATA[travel]]></category>

		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=511</guid>
		<description><![CDATA[这次旅行拿了两台相机，回来后才发现，其中一台的时间慢了1个多小时，这样直接导致我将两台相机的照片放在一起的时候会出现排序混乱的情况。解决方法是必须修改照片的EXIF信息，并重新... ]]></description>
			<content:encoded><![CDATA[<p>这次旅行拿了两台相机，回来后才发现，其中一台的时间慢了1个多小时，这样直接导致我将两台相机的照片放在一起的时候会出现排序混乱的情况。解决方法是必须修改照片的EXIF信息，并重新命名照片的文件名。<br />
整理的需求如下：</p>
<div class="hl-surround"><div class="hl-main">1、需要将时间慢了的相机所照的照片进行EXIF信息修改；<br />2、使用拍摄时间定义照片的名字；</div></div>
<p>在windows下有些小软件可以做这件事情，不过我还是觉得在linux下使用脚本比较方便。<br />
ubuntu下查看和修改EXIF的命令就是exif，使用方法如下：<br />
查看EXIF信息:</p>
<div class="hl-surround"><div class="hl-main">exif filename</div></div>
<p>会看到很详细的EXIF信息，其中有两个：</p>
<div class="hl-surround"><div class="hl-main">.......<br />Date and Time (origi|2011:11:12 11:51:47<br />Date and Time (digit|2011:11:12 11:51:46<br />......</div></div>
<p>这两个应该就是拍摄时间，查看一下ids：</p>
<div class="hl-surround"><div class="hl-main">exif -i filename</div></div>
<div class="hl-surround"><div class="hl-main">......<br />0x9003|2011:11:12 11:51:47<br />0x9004|2011:11:12 11:51:46<br />......</div></div>
<p>修改方法：</p>
<div class="hl-surround"><div class="hl-main">exif -t 0x9003 --ifd=EXIF --set-value=&quot;2011:11:12 10:21:47&quot; -o new_filename org_filename</div></div>
<p>这样就可以将0x9003的值修改为设定的值。其他用法可以man。</p>
<p>写了个脚本去完成我的需求：</p>
<div class="hl-surround"><div class="hl-main">#!/bin/sh<br /><br />if [ $# -lt 1 ];then<br />	echo &quot;usag: $0 JPG_DIR&quot;<br />	exit 1<br />fi<br /><br />output_dir=&quot;modified&quot;<br />mkdir ${output_dir}<br /><br />for org_file in $(ls ${1}/*.JPG)<br />	do<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#检查原来的时间<br />	old_time=$(date -d &quot;$(exif -t 0x9003 --ifd=EXIF ${org_file} |awk -F: '/Value/{print $2&quot;-&quot;$3&quot;-&quot;$4&quot;:&quot;$5&quot;:&quot;$6}')&quot; +%s)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#计算新的时间<br />	new_time=$(date -d @$(expr ${old_time} - 5400) &quot;+%Y:%m:%d %H:%M:%S&quot;)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#新的文件名<br />	new_file=$(date -d @$(expr ${old_time} - 5400) &quot;+%Y_%m_%d_%H_%M_%S&quot;)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#输出文件名，使用Random的原因是可能有照片在同一秒拍摄<br />	output_file=&quot;${output_dir}/${new_file}_${RANDOM}.JPG&quot;<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#对照片的EXIF进行第一次修改<br />	exif -t 0x9003 --ifd=EXIF --set-value=&quot;$new_time&quot; -o ${output_file} ${org_file}<br /><br />	old_time=$(date -d &quot;$(exif -t 0x9004 --ifd=EXIF ${output_file} |awk -F: '/Value/{print $2&quot;-&quot;$3&quot;-&quot;$4&quot;:&quot;$5&quot;:&quot;$6}')&quot; +%s)<br />	new_time=$(date -d @$(expr ${old_time} - 5400) &quot;+%Y:%m:%d %H:%M:%S&quot;)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#对照片的EXIF进行第二次修改<br />	exif -t 0x9004 --ifd=EXIF --set-value=&quot;$new_time&quot; -o ${output_file} ${output_file}<br />done</div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2011/11/26/ubuntu_modify_exif/feed/</wfw:commentRss>
		</item>
		<item>
		<title>google的图片搜索出来了</title>
		<link>http://www.joecen.com/2011/07/27/google_images_search/</link>
		<comments>http://www.joecen.com/2011/07/27/google_images_search/#comments</comments>
		<pubDate>Wed, 27 Jul 2011 01:34:05 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Cat think]]></category>

		<category><![CDATA[google]]></category>

		<category><![CDATA[images]]></category>

		<category><![CDATA[tinyeye]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=509</guid>
		<description><![CDATA[后知后觉的我今天发现了google的图片搜索更新了，现在支持上传一张图片来搜索图片相关的内容。

类似的功能tineye早就在做，但是tineye的结果貌似都是图片当前网页的内容，而google的搜索结果... ]]></description>
			<content:encoded><![CDATA[<p>后知后觉的我今天发现了google的<a href="http://images.google.com">图片搜索</a>更新了，现在支持上传一张图片来搜索图片相关的内容。<br />
<img src="http://farm7.static.flickr.com/6130/5980013808_3fc781a924.jpg" alt="google-images" /><br />
类似的功能<a href="http://www.tineye.com">tineye</a>早就在做，但是tineye的结果貌似都是图片当前网页的内容，而google的搜索结果更深了一层，可以做到根据图片的相关内容来返回相应的搜索内容。比如上传的图片是某个人的图片，tineye的返回结果是嵌入了该图片的页面，而google的可以返回那个人的搜索结果。</p>
<p>这样google算不算压缩了其他小搜索引擎的生存空间呢？毕竟它每做一个新功能，其他做这些功能的小公司必死无疑呀。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2011/07/27/google_images_search/feed/</wfw:commentRss>
		</item>
		<item>
		<title>G1，继续服役</title>
		<link>http://www.joecen.com/2011/03/02/continue-g1/</link>
		<comments>http://www.joecen.com/2011/03/02/continue-g1/#comments</comments>
		<pubDate>Wed, 02 Mar 2011 09:57:16 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Living]]></category>

		<category><![CDATA[andriod]]></category>

		<category><![CDATA[g1]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=507</guid>
		<description><![CDATA[前几个月刷那个rom之后，手机非常慢，电池也用得很快，很想换手机了。
不过市面上有全键盘的andriod也只有moto的stone和desire Z 了。moto的不喜欢，键盘的感觉太涩，desire Z貌似电池和G1一样。


... ]]></description>
			<content:encoded><![CDATA[<p>前几个月刷那个rom之后，手机非常慢，电池也用得很快，很想换手机了。</p>
<p>不过市面上有全键盘的andriod也只有moto的stone和desire Z 了。moto的不喜欢，键盘的感觉太涩，desire Z貌似电池和G1一样。<br />
<img src="http://img1.cache.netease.com/catchpic/2/25/2577A2A19C680B27143A2A5BD37FBD91.jpg" alt="defy" /><br />
<img src="http://img1.cache.netease.com/catchpic/4/48/485201220E6E0E2DBE0D07291CF09E3C.jpg" alt="desire Z" /></p>
<p>那么不要全键盘吧？defy非常吸引，三防手机，分辨率不错、硬件不错、样子很讨好、重量很轻，最重要的是，它采用的是1500m的电池！相比desire HD那4.3寸屏1200m电池实在是好太多了。 最后是价格才2200-2400左右（春节后升价了！），实在是2011年初性价比最高的手机！</p>
<p><img src="http://img1.cache.netease.com/catchpic/7/72/725CE6642DA1C450A36D3823E21E89DA.jpg" alt="desire hd" /><br />
上周去香港的时候也顺便看了看，lp也非常喜欢，本来就打算等价格再降下来就入手了。不过一切都在昨天改变。</p>
<p>昨天我刷了个2.1的rom，发现G1居然变顺畅了！电池看起来也耐用了不少。我感觉天都变亮了！于是今天顺便入手了一个“烤鸭“电池，希望能再把电池的属性增强！</p>
<p>不过变快也有可能是刚刷完rom的原因吧，一切还有待观察！</p>
<p>另外希望htc争争气，整天出电池只能用半天的手机有什么意思呢？</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2011/03/02/continue-g1/feed/</wfw:commentRss>
		</item>
		<item>
		<title>2月-香港婚宴</title>
		<link>http://www.joecen.com/2011/03/02/february-merry/</link>
		<comments>http://www.joecen.com/2011/03/02/february-merry/#comments</comments>
		<pubDate>Wed, 02 Mar 2011 09:27:33 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[UNIX]]></category>

		<category><![CDATA[live]]></category>

		<category><![CDATA[Think]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=504</guid>
		<description><![CDATA[月尾到香港参加了carman&#038;ming的婚礼，很和谐幸福了一个婚礼，祝愿他们白头到老、幸福美满。
下面说说一些感想。
香港已经去过不知道多少次了，但是去饮还是第一次，这次去饮的最大感... ]]></description>
			<content:encoded><![CDATA[<p>月尾到香港参加了carman&#038;ming的婚礼，很和谐幸福了一个婚礼，祝愿他们白头到老、幸福美满。</p>
<p>下面说说一些感想。<br />
香港已经去过不知道多少次了，但是去饮还是第一次，这次去饮的最大感触是酒宴。香港的酒宴和广州很不一样（还是因为酒家的级别不同？），他们上菜真的是一个一个上的！上完一个菜，让你们自己夹几分钟，然后waiter会过来将这盆菜全部分配完，然后拿走，接着上下一道菜！</p>
<p>我想这样有几个好处：<br />
1、不会出现菜都摆不下，要叠起来的情况；<br />
2、减少了厨余的浪费（虽然最后的菜还是没有完全吃光，但是起码之前的比较贵的菜都全部吃完了）；<br />
3、保证菜都是热的！在广州的酒宴，即使是白天鹅这种5星级的酒店，似乎也不能做到这点；</p>
<p>回头想想，中国真是一个非常浪费的国家，围餐的时候这个问题尤其严重。每次酒宴过后，点的菜起码产生有一半以上变成厨余。有如此多的材料，所以才有那么多地沟油之类的东西产生吧？ </p>
<p>虽然广州的物价几乎已经超过香港，或许某些广州人已经非常有钱，但是香港还是有很多很多东西是我们比不上的，比如优质的服务，比如对待工作和人的态度。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2011/03/02/february-merry/feed/</wfw:commentRss>
		</item>
		<item>
		<title>存在的不存在感和不存在的存在感</title>
		<link>http://www.joecen.com/2011/01/28/in-and-out/</link>
		<comments>http://www.joecen.com/2011/01/28/in-and-out/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 10:32:14 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[UNIX]]></category>

		<category><![CDATA[Cat think]]></category>

		<category><![CDATA[Think]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=500</guid>
		<description><![CDATA[是的，这是我最喜欢的一句村上春树的话，其实我读村上的书就很容易掉入这句话里面，有点匪夷所思。
我看完了《1Q84》的卷三了。这的确是村上不可多得的小说，不可多得在篇幅是最长的，... ]]></description>
			<content:encoded><![CDATA[<p>是的，这是我最喜欢的一句村上春树的话，其实我读村上的书就很容易掉入这句话里面，有点匪夷所思。</p>
<p>我看完了《1Q84》的卷三了。这的确是村上不可多得的小说，不可多得在篇幅是最长的，叙述手法是最特别的。（使用的多人分别叙述的方式，也是篇幅巨大的原因吧？）</p>
<p>村上是不是也不想再码字了呢？卷三的结尾感觉很潦草，有不少在卷二、卷一留下来的疑问没有解开，比如年长的女朋友为什么会离开天吾？“丧失了”是什么意思？</p>
<p>结尾的时候青豆不知道他们究竟是回到了“1984”，还是去了既不是“1984”也不是“1Q84”的第三个世界，其实在哪里已经不重要了，重要的是他们两个终于在一起了。从卷一到卷三，他们两位主角生命的直线正一点一点的靠近，最终重合。这个既不是一个女杀手的故事，也不是一个小说家的故事，更不是一个邪教的故事，而是一个关于重逢的故事。</p>
<p>很巧合的是，看《1Q84》的这两天，连续看了两部电影，<a href="http://movie.douban.com/subject/3319755/">《flipped》</a>和<a href="http://movie.douban.com/subject/3072124/">《Mary and Max》</a>，居然都是使用分别叙述的手法来描述内容的，十分巧合。</p>
<p>ps：《flipped》非常值得看，清纯岁月的少男少女的故事和迷人的景色，令人怦然心动；<br />
      《Mary and Max》 没有想象中那么好，故事内容老土，而且不太喜欢这种丑陋性的风格。</p>
<p>pps：读完《1Q84》之后，还是不知道和《1984》是不是有关系。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2011/01/28/in-and-out/feed/</wfw:commentRss>
		</item>
		<item>
		<title>弯路</title>
		<link>http://www.joecen.com/2011/01/14/detour/</link>
		<comments>http://www.joecen.com/2011/01/14/detour/#comments</comments>
		<pubDate>Fri, 14 Jan 2011 09:43:27 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Cat think]]></category>

		<category><![CDATA[Living]]></category>

		<category><![CDATA[live]]></category>

		<category><![CDATA[Think]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=491</guid>
		<description><![CDATA[     昨天买了台高清播放器，是采用1073芯片，功能不算强大，效果不算最好，但是很便宜。只用了300多块就解决了我一直以来想要在客厅电视看视频的需求。说起来好像很好笑，在电视上看视... ]]></description>
			<content:encoded><![CDATA[<p>     昨天买了台高清播放器，是采用1073芯片，功能不算强大，效果不算最好，但是很便宜。只用了300多块就解决了我一直以来想要在客厅电视看视频的需求。说起来好像很好笑，在电视上看视频谁不会呀，也有很多方法，可是我却是走了很多的弯路。现在回想起之前的种种，我觉得自己是不是太纠结了，执着于一些不太靠谱的观念。</p>
<p>    新居入伙之时，我们买了液晶电视机。那是一个液晶电视机刚出来不久的年代，我们买的长虹的42寸液晶的价格是8999，和现在5、60寸的进口液晶差不多的价格。价格不是最大的问题，电视机的功能才是最大的问题。虽然其标榜HDTV（电视机的左上角还贴着此标签），但是却没有HDMI接口，支持的最高分辨率也只是720P和1080i的。不过现在后悔也是来不及了，毕竟也为我们服务了四年，而且电视机不算太大，1080i也凑合着可以接受。</p>
<p>    入伙之后，如何在客厅看下载的视频成为一直困扰我的问题？我的第一个选择是买了一根长长的VGA线，打算接着我的laptop看。看了一段时间后发现太麻烦，VGA线也太重，而且VGA线没有声音，还需要再连一条线到音箱，搞得客厅天罗地网，不够优雅，遂放弃。</p>
<p>    后来我放弃了wii转而买了PS3的目的也是为了能优雅的看视频，杯具的是SONY不像山寨厂商般勤奋，支持的格式不多，主流的高清格式基本都不支持，不过这不是最大的问题，最大的问题是PS3不支持外挂字幕。如果每次都要用软件将字幕压进视频里面，那不是瞎折腾吗？</p>
<p>    后来尝试用<a href="http://code.google.com/p/ps3mediaserver/">ps3mediaserver</a>来播放视频，需要用laptop连接PS3。视频解码是使用laptop的cpu，PS3基本只是网络播放流数据。由于我的AP只是54Mbit的，啊大的视频流数据量太大，只能在laptop和PS3之间接根网线。。。现在想起来发现这的确是“步子迈得最大的”方法，虽然少了根VGA线和音频线，但是却多了根网线还开两台设备。。</p>
<p>    造成如此景象的原因是我一直想凭自己的力量去搞好这件事情，而没有发觉，其实站在巨人的肩膀上是最好最快捷的方式。凭自己的力量去完成事情当然会有满足感和成就感，走了弯路或许会学到更多不一样的东西，但我觉得如果没有将成本考虑进去或许会得不偿失。避免走弯路，多利用已有的资源，这是我今年待改进的做事方式。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2011/01/14/detour/feed/</wfw:commentRss>
		</item>
		<item>
		<title>折腾手机</title>
		<link>http://www.joecen.com/2010/09/14/reinstall-my-mobile-phone-system-andriod/</link>
		<comments>http://www.joecen.com/2010/09/14/reinstall-my-mobile-phone-system-andriod/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 10:29:28 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Living]]></category>

		<category><![CDATA[g1]]></category>

		<category><![CDATA[htc]]></category>

		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=480</guid>
		<description><![CDATA[G1（HTC Dream）买了也有1年了，这期间除了开始那两个月拼命刷rom之外，后面就没有怎么动过了。这期间手机跟着我去过很多地方，包括泰国和澳洲，出色完成了任务（主要是作地图gps）。不过... ]]></description>
			<content:encoded><![CDATA[<p>G1（HTC Dream）买了也有1年了，这期间除了开始那两个月拼命刷rom之外，后面就没有怎么动过了。这期间手机跟着我去过很多地方，包括泰国和澳洲，出色完成了任务（主要是作地图gps）。不过手机也积累了很多问题，比如系统变得缓慢，比如短信的对话框总是会自己出现回车，让我很懊恼，应该是重装的时候了。</p>
<p>于是到论坛找rom（hiapk和gfan），最新的2.2的andriod是不敢想的了，作为第一台andriod手机，内存和电池太少是G1最大的缺点。那么就试试2.1，或许过了这么久新的技术会让G1也能用新的ROM吧？ 可是现实总是残酷的，刷了几个2.1的rom，G1的启动时间都是非常长，反应也很缓慢，只能放弃2.1.</p>
<p>那么试试sense吧？lp的htc magic（真G2要出来了，伪G2就叫回真名吧）从一开始就刷了hero的sense，效果到现在都还是非常不错的。于是找了个1.5的sense rom（sunny sense），然后还打了个10M的内存补丁（听说是将显存里面的内存搞到系统内存上面，linux的系统总爱这样干，参照ps3）。内存的确从90多M变到100多M了，不过用了几天，速度还是上不去，从软件出主屏的时候主屏总是要reload，切换屏幕也很多时候没有反应。</p>
<p>为了避免被手机玩，我最终还是刷了个普通的1.6 ROM（阿兴版），现在终于有点爽的感觉了。G1的配置相对于现在的系统来说还是有点力不从心了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/09/14/reinstall-my-mobile-phone-system-andriod/feed/</wfw:commentRss>
		</item>
		<item>
		<title>改来又改去</title>
		<link>http://www.joecen.com/2010/07/29/change-feed-address-again/</link>
		<comments>http://www.joecen.com/2010/07/29/change-feed-address-again/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 07:26:32 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Site Log]]></category>

		<category><![CDATA[feed]]></category>

		<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=472</guid>
		<description><![CDATA[google同天朝闹翻了以后，feedburner又被墙了。
测试了一下，用feedburner的mybrand功能，设置了feeds.joecen.com子域名作为我的feed的域名。结果是cname过去的ip也已经被封掉了。
无招，只好用回自己的fee... ]]></description>
			<content:encoded><![CDATA[<p>google同天朝闹翻了以后，<a href="http://www.feedburner.com">feedburner</a>又被墙了。</p>
<p>测试了一下，用feedburner的<a href="http://feedburner.google.com/fb/a/mybrand">mybrand</a>功能，设置了feeds.joecen.com子域名作为我的feed的域名。结果是cname过去的ip也已经被封掉了。</p>
<p>无招，只好用回自己的feed：<a href="http://www.joecen.com/feed" title="Syndicate this site using RSS"><img src="http://www.joecen.com/images/rss2.gif" border="0"></a></p>
<p>如果你是使用google reader的话，也可以继续用feedburner的域名：<br />
<a href="http://fusion.google.com/add?source=atgs&#038;feedurl=http%3A//feeds.joecen.com/joecen"><img src="http://gmodules.com/ig/images/plus_google.gif" border="0" alt="Add to Google"></a></p>
<p>折腾呀，BS gfw again~</p>
<p>类似文章：<a href="http://www.joecen.com/2010/02/23/change_feed_address/">修改了feed的地址</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/07/29/change-feed-address-again/feed/</wfw:commentRss>
		</item>
		<item>
		<title>记录一个svn诡异的错误</title>
		<link>http://www.joecen.com/2010/07/22/svn-error-operation-not-permitted/</link>
		<comments>http://www.joecen.com/2010/07/22/svn-error-operation-not-permitted/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 06:41:40 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[UNIX]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[svn]]></category>

		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=467</guid>
		<description><![CDATA[我的laptop使用ubuntu，另外上面原来自带的win7也没有删除，两个系统共享着一个fat32的分区，popo呀什么需要共享的东西都放在里面。
今天在ubutu下svn update的时候出现下面的诡异错误：
中文：svn: ... ]]></description>
			<content:encoded><![CDATA[<p>我的laptop使用ubuntu，另外上面原来自带的win7也没有删除，两个系统共享着一个fat32的分区，popo呀什么需要共享的东西都放在里面。</p>
<p>今天在ubutu下svn update的时候出现下面的诡异错误：</p>
<div class="hl-surround"><div class="hl-main">中文：<br />svn: 无法创建符号连接 “script/xxxx/xxxx.tmp”: 不允许的操作<br /><br />英文:<br />svn: Can't create symbolic link 'script/xxxx/xxxx.tmp': Operation not permitted</div></div>
<p>查找了很久，才恍然大悟：我是在fat32的分区下面进行svn操作的，而svn上面的symbolic link是在ext3分区下面创建的，fat32是不可能支持这种符号链接的。<br />
遂改在ext3分区下面重新checkout，顺利完成。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/07/22/svn-error-operation-not-permitted/feed/</wfw:commentRss>
		</item>
		<item>
		<title>使用lvm备份快照mysql数据库</title>
		<link>http://www.joecen.com/2010/06/25/lvm-snapshot-mysql-backup/</link>
		<comments>http://www.joecen.com/2010/06/25/lvm-snapshot-mysql-backup/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 06:38:00 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<category><![CDATA[backup]]></category>

		<category><![CDATA[lvm]]></category>

		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=465</guid>
		<description><![CDATA[
环境
Debian lenny 32位Dell 1950 Raid 1LVM2

安装LVM
恢常简单，内核原生支持，只需要用apt安装即可：
apt-get install lvm2

使用LVM
基本的使用方法:
建立PV
为把一个磁盘或分区作为PV，首先应使用 pvcreate ... ]]></description>
			<content:encoded><![CDATA[<li>
<em><strong>环境</strong></em></p>
<div class="hl-surround"><div class="hl-main">Debian lenny 32位<br />Dell 1950 Raid 1<br />LVM2</div></div>
</li>
<li><em><strong>安装LVM</strong></em>
<p>恢常简单，内核原生支持，只需要用apt安装即可：</p>
<div class="hl-surround"><div class="hl-main">apt-get install lvm2</div></div>
</li>
<li><em><strong>使用LVM</strong></em>
<p><strong>基本的使用方法:</strong></p>
<ol><strong>建立PV</strong></p>
<p>为把一个磁盘或分区作为PV，首先应使用 pvcreate 对其初始化，如对IDE硬盘/dev/hdb， “使用整个磁盘，</p>
<div class="hl-surround"><div class="hl-main"># pvcreate /dev/sda</div></div>
<p>这会删除sda上所有的数据，并初始化为lvm的格式</ol>
<ol><strong>建立vg（卷组）</strong></p>
<div class="hl-surround"><div class="hl-main">vgcreate test_vg /dev/sda</div></div>
<p>然后可用vgdisplay 查看／验证卷组的信息：</p>
<div class="hl-surround"><div class="hl-main"># vgdisplay</div></div>
</ol>
<ol><strong>创建lv（逻辑卷）</strong></p>
<div class="hl-surround"><div class="hl-main">lvcreate -L100G –niotest test_vg</div></div>
<p>该命令就在卷组test_vg上创建名字为iotest，大小为100G的逻辑卷，并且设备入口为/dev/test_vg /iotest（test_vg 为卷组名，iotest为逻辑卷名）。</p>
<p>然后就可以像普通的分区一样，对iotest进行初始化和挂载：</p>
<div class="hl-surround"><div class="hl-main">mkfs.ext3 /dev/test_vg/iotest<br />mount /dev/test_vg/iotest /home/mysql</div></div>
</ol>
<ol><strong>建立mysql</strong></p>
<p>直接将mysql的数据目录设置为/home/mysql即可。
</ol>
<ol><strong>snapshot的原理</strong></p>
<blockquote><p>
我们知道，LVM snapshot的原理是当一个snapshot创建的时候，仅拷贝原始卷里数据的元数据(meta-data)。<br />
创建的时候，并不会有数据的物理拷贝，因此snapshot的创建几乎是实时的，当原始卷上有写操作执行时，<br />
snapshot跟踪原始卷块的改变，这个时候原始卷上将要改变的数据在改变之前被拷贝到snapshot预留的空间里，<br />
因此这个原理的实现叫做写时复制(copy-on-write)。<br />
在写操作写入块之前，CoW讲原始数据移动到 snapshot空间里，这样就保证了所有的数据在snapshot创建时保持一致。<br />
而对于snapshot的读操作，如果是读取数据块是没有修改过的，那么会将读操作直接重定向到原始卷上，<br />
如果是要读取已经修改过的块，那么就读取拷贝到snapshot中的块。</p>
<p>这样，通常的文件I/0流程有一个改变，那就是在文件系统和设备驱动之间增加了一个cow层，变成了下面这个样子：</p>
<p>file I/0 —> filesystem — >CoW –> block I /O
</p></blockquote>
<p>（上述文字引自 http://blog.wgzhao.com/2008/06/20/LVM-snapshot-on.html）
</ol>
<ol><strong>创建snapshot的命令</strong></p>
<div class="hl-surround"><div class="hl-main">lvcreate --size 20G --snapshot --name snap /dev/newvg/iotest</div></div>
<p>上述命令为iotest创建了一个名为snap的，大小为20G的快照。</ol>
<ol><strong>使用lvm snapshot备份mysql数据库的过程</strong></p>
<div class="hl-surround"><div class="hl-main">FLUSH TABLES<br />FLUSH TABLES WITH READ LOCK<br />Create the snapshop (lvcreate -s)<br />(SHOW MASTER/SLAVE STATUS)<br />UNLOCK TABLES<br />Mount snapshot, perform backup<br />Unmount and discard the snapshot (lvremove)</div></div>
<p>简单的说，就是先把所有表锁了，然后对逻辑卷建立一个快照（1 秒左右），必要的话show master/slave status把当前的posision记录下来，然后就可以unlock 表，恢复服务了。用脚本来进行上述操作的话，只需要2、3秒即可完成。恢复服务后，可以把snapshot挂载到某个目录下，然后对其进行备份（tar+zip之类）。</p>
<p>与ibbackup相比，使用LVM备份的灵活性更高，比如可以自己选择备份的工具（gzip、7zip甚至不进行压缩直接进行远程拷贝）；做了 snapshot之后也可以不开始进行备份，比如对数据库进行了不确定的操作，这时候就可以先做个snapshot，然后进行观察，如果没有问题的话直接把snapshot删除就可以了，无需要备份。</ol>
</li>
<li>
<em><strong>MYLVMBACKUP</strong></em></p>
<p>已经有开源的工具实现LVM备份的功能,那就是MyLVMBackup 项目地址是： http://lenzg.net/mylvmbackup/</p>
<ol>
<strong>安装</strong></p>
<p>debian需要提前安装的包 包括</p>
<div class="hl-surround"><div class="hl-main">libconfig-inifiles-perl, libtimedate-perl, libdbi-perl, libdbd-mysql-perl</div></div>
<p>解压 mylvmbackup包，进入其目录，运行：</p>
<div class="hl-surround"><div class="hl-main">make install</div></div>
<p>即可完成安装其实安装的只是一个 perl写的脚本和配置文件；
</ol>
<ol>
<strong>配置</strong></p>
<p>配置文件在</p>
<div class="hl-surround"><div class="hl-main">/etc/mylvmbackup.conf</div></div>
<p>在里面配置好mysql和LVM的基本信息，比如mysql的用户、密码、端口等，LVM的vgname、lvname等；然后是备份的信息，mount在哪里、备份目录等；</p>
<p>最后是gzip 参数–best修改为–fast，当然你也可以用–best，但是备份时间会增加几倍。另外也可以选择其他的压缩工具和参数，具体查看该配置文件。
</ol>
<ol>
<strong>测试结果</strong></p>
<p>测试数据大小：26G<br />
存储引擎：innodb<br />
备份时间：</p>
<div class="hl-surround"><div class="hl-main">ibbackup&nbsp; &nbsp; &nbsp; 16分钟<br />mylvmbackup (gzip –fast) 12分钟</div></div>
<p>（ibbackup使用默认参数）</ol>
</li>
<li><em><strong>MYLVMBACKUP的问题</strong></em>
<p>从结果上看，mylvmbackup的效果比较好。<br />
不过我们不能用它来进行数据库备份，因为它却有其他的问题:</p>
<p>在我的测试环境中（Dell 1950 RAID1）LVM做了snapshot之后的写入性能非常差，甚至比没有做snapshot之前要慢5-10倍。测试数据如下：</p>
<ol>
<strong>postmark</strong></p>
<p>未做snapshot前的测试:</p>
<div class="hl-surround"><div class="hl-main">PostMark v1.51 : 8/14/01<br />pm&gt;set number 10000<br />pm&gt;set size 300000<br />pm&gt;set transactions 10000<br />pm&gt;run<br />Creating files...Done<br />Performing transactions..........Done<br />Deleting files...Done<br />Time:<br />&nbsp;&nbsp; &nbsp;157 seconds total<br />&nbsp;&nbsp; &nbsp;67 seconds of transactions (149 per second)<br /><br />Files:<br />&nbsp;&nbsp; &nbsp;14866 created (94 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Creation alone: 10000 files (113 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Mixed with transactions: 4866 files (72 per second)<br />&nbsp;&nbsp; &nbsp;4991 read (74 per second)<br />&nbsp;&nbsp; &nbsp;0 appended (0 per second)<br />&nbsp;&nbsp; &nbsp;14866 deleted (94 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Deletion alone: 9732 files (4866 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Mixed with transactions: 5134 files (76 per second)<br /><br />Data:<br />&nbsp;&nbsp; &nbsp;1428.03 megabytes read (9.10 megabytes per second)<br />&nbsp;&nbsp; &nbsp;4253.60 megabytes written (27.09 megabytes per second)</div></div>
<p>做了snapshot之后的结果</p>
<div class="hl-surround"><div class="hl-main">pm&gt;set number 10000<br />pm&gt;set size 300000<br />pm&gt;set transactions 10000<br />pm&gt;run<br />Creating files...<br />Done<br />Performing transactions..........Done<br />Deleting files...Done<br />Time:<br />&nbsp;&nbsp; &nbsp;725 seconds total<br />&nbsp;&nbsp; &nbsp;145 seconds of transactions (68 per second)<br /><br />Files:<br />&nbsp;&nbsp; &nbsp;14866 created (20 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Creation alone: 10000 files (17 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Mixed with transactions: 4866 files (33 per second)<br />&nbsp;&nbsp; &nbsp;4991 read (34 per second)<br />&nbsp;&nbsp; &nbsp;0 appended (0 per second)<br />&nbsp;&nbsp; &nbsp;14866 deleted (20 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Deletion alone: 9732 files (9732 per second)<br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Mixed with transactions: 5134 files (35 per second)<br /><br />Data:<br />&nbsp;&nbsp; &nbsp;1428.03 megabytes read (1.97 megabytes per second)<br />&nbsp;&nbsp; &nbsp;4253.60 megabytes written (5.87 megabytes per second)</div></div>
</ol>
<ol>
<strong>dd顺序写</strong></p>
<p>未做snapshot前的测试结果:</p>
<div class="hl-surround"><div class="hl-main">time dd if=/dev/zero of=file.l bs=4k count=1000000<br />1000000+0 records in<br />1000000+0 records out<br />4096000000 bytes (4.1 GB) copied, 47.5652 s, 86.1 MB/s<br /><br />real&nbsp; &nbsp; 0m47.567s<br />user&nbsp; &nbsp; 0m0.308s<br />sys&nbsp; &nbsp; 0m12.073s</div></div>
<p>做了snapshot之后的测试结果:</p>
<div class="hl-surround"><div class="hl-main">time dd if=/dev/zero of=file.l bs=4k count=1000000<br />1000000+0 records in<br />1000000+0 records out<br />4096000000 bytes (4.1 GB) copied, 722.703 s, 5.7 MB/s<br /><br />real&nbsp; &nbsp; 12m2.705s<br />user&nbsp; &nbsp; 0m0.252s<br />sys&nbsp; &nbsp; 0m14.653s</div></div>
</ol>
<p>按理说，建立snapshot之后，中间是多了一层，但是也没有双重写入，为什么性能会相差几倍甚至十几倍呢？这是我百思不得其解的。询问了一些朋友，也没有发现有这样的情况，不过其他人却是没有使用RAID1这种IO性能比较低的架构。另外在我使用EMC的存储作为磁盘来做LVM的情况下，有无 snapshot的IO性能只相差了20%左右。所以我断定，可能是因为磁盘和RAID1的性能太差导致做了LVM snapshot之后，在低性能的情况下过早出现IO的瓶颈导致的。
</li>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/06/25/lvm-snapshot-mysql-backup/feed/</wfw:commentRss>
		</item>
		<item>
		<title>firefox下使用ssl访问google的设置</title>
		<link>http://www.joecen.com/2010/05/31/firefox_ssl_google/</link>
		<comments>http://www.joecen.com/2010/05/31/firefox_ssl_google/#comments</comments>
		<pubDate>Mon, 31 May 2010 04:20:25 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Others]]></category>

		<category><![CDATA[firefox]]></category>

		<category><![CDATA[google]]></category>

		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=459</guid>
		<description><![CDATA[自从google匿了之后，search的时候经常被reset，知道google实验室推出了ssl search，不过因为懒的关系，一直都没有怎么去试用过。
今天看到张宴的blog上面的文章快速跳转到Google SSL 中文版的网址：g... ]]></description>
			<content:encoded><![CDATA[<p>自从google匿了之后，search的时候经常被reset，知道<a href="http://labs.google.cn/">google实验室</a>推出了<a href="https://www.google.com/">ssl search</a>，不过因为懒的关系，一直都没有怎么去试用过。</p>
<p>今天看到张宴的blog上面的文章<a href="http://blog.s135.com/google_ssl/">快速跳转到Google SSL 中文版的网址：ggssl.com</a>，勾起了我的兴趣。</p>
<p>下面是引用：</p>
<blockquote><p>
国内用户访问 https://www.google.com 默认情况下会跳转到谷歌香港 http://www.google.com.hk，解决方法为先点击“Google.com in English“访问 http://www.google.com/ncr （仅需要点击一次），该网址会种一个Cookie，防止跳转，再设置搜索语言为中文，再输入 https://www.google.com 即可。
</p></blockquote>
<p>的确是很不错的方法，不过我希望在firefox的搜索也默认使用ssl怎么办？<br />
我们需要修改一些地方：</p>
<p>第一是firefox 导航工具栏右侧的搜索引擎的修改</p>
<p>ubuntu下请找到 </p>
<div class="hl-surround"><div class="hl-main">/usr/lib/firefox-3.6.3/searchplugins/zh-CN/google.xml</div></div>
<p> 版本不同可能位置不一样,比较简单的方法是可以</p>
<div class="hl-surround"><div class="hl-main">locate searchplugins</div></div>
<p>搜索一下。</p>
<p>windows下面应该是这个文件（未验证）：</p>
<div class="hl-surround"><div class="hl-main">C:\Program Files\firefox\searchplugins/google.xml</div></div>
<p>然后修改里面的两段文字：</p>
<div class="hl-surround"><div class="hl-main">&lt;Url type=&quot;text/html&quot; method=&quot;GET&quot; template=&quot;http://www.google.com/search&quot;&gt;</div></div>
<p>修改为：</p>
<div class="hl-surround"><div class="hl-main">&lt;Url type=&quot;text/html&quot; method=&quot;GET&quot; template=&quot;https://www.google.com/search&quot;&gt;</div></div>
<p>将</p>
<div class="hl-surround"><div class="hl-main">&lt;SearchForm&gt;http://www.google.com/firefox&lt;/SearchForm&gt;</div></div>
<p>修改为</p>
<div class="hl-surround"><div class="hl-main">&lt;SearchForm&gt;https://www.google.com/&lt;/SearchForm&gt;</div></div>
<p>第二，修改默认的搜索引擎（在URL输入框中输入文字进行搜索的引擎），在URL输入框中输入about:config,找到 keyword.URL,修改为:</p>
<div class="hl-surround"><div class="hl-main">https://www.google.com/search?q=</div></div>
<p>重启firefox即可畅快访问google了。^O^</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/05/31/firefox_ssl_google/feed/</wfw:commentRss>
		</item>
		<item>
		<title>被跨国罚款</title>
		<link>http://www.joecen.com/2010/04/22/transnational_fine/</link>
		<comments>http://www.joecen.com/2010/04/22/transnational_fine/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 10:33:40 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[行色匆匆]]></category>

		<category><![CDATA[travel]]></category>

		<category><![CDATA[澳洲]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=456</guid>
		<description><![CDATA[近日收到一封澳洲来信，居然是交通罚款通知单千里迢迢的追来了。
原来我在刚到Hobart的那天晚上，通过哪条Tasman Hwy的跨海桥的时候被拍照了。罚款单上写着限速是70km/H，我的速度是82km/H。
... ]]></description>
			<content:encoded><![CDATA[<p>近日收到一封澳洲来信，居然是交通罚款通知单千里迢迢的追来了。<br />
原来我在刚到Hobart的那天晚上，通过哪条Tasman Hwy的跨海桥的时候被拍照了。罚款单上写着限速是70km/H，我的速度是82km/H。<br />
查了一下，澳洲的交通罚款一向是很严厉的，我的罚款金额是$110澳元，对比网上的某些人600多澳元的罚款额，感觉已经是有点幸运。<br />
另外我在澳洲的时候，由于时间很紧，所以在高速公路和某些无车的乡村公路也经常超速，不过没有被发现，现在想起来实在是有点后怕。<br />
罚款是在网上交的，澳洲这方面弄得比较人性化，不过交了钱以后就没有什么反馈，这个比较恶心。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/04/22/transnational_fine/feed/</wfw:commentRss>
		</item>
		<item>
		<title>发烧</title>
		<link>http://www.joecen.com/2010/04/08/%e5%8f%91%e7%83%a7/</link>
		<comments>http://www.joecen.com/2010/04/08/%e5%8f%91%e7%83%a7/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 09:32:55 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Living]]></category>

		<category><![CDATA[myself]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=451</guid>
		<description><![CDATA[昨天下午就觉得很不舒服，像是有点发烧的样子。由于快要羽毛球比赛了，晚上还是去与队友合练了一下，回到家就觉得不行了。一量体温，居然发烧到了39.2度! 吃了些家里的退烧药，睡了两... ]]></description>
			<content:encoded><![CDATA[<p>昨天下午就觉得很不舒服，像是有点发烧的样子。由于快要羽毛球比赛了，晚上还是去与队友合练了一下，回到家就觉得不行了。一量体温，居然发烧到了39.2度! 吃了些家里的退烧药，睡了两个小时，发现体温升到39.5度了。赶快让lp带去看以医生。打了支针，吃了药，今天才好了点，不过也不能上班了。<br />
记忆中已经没有试过发这么高的烧了，可能是在北京的时候比较辛苦，回来也没有好好休息导致 的不吧。<br />
越来越老咯，今后要注意自己的身体。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/04/08/%e5%8f%91%e7%83%a7/feed/</wfw:commentRss>
		</item>
		<item>
		<title>北京归来</title>
		<link>http://www.joecen.com/2010/04/07/leave_beijing/</link>
		<comments>http://www.joecen.com/2010/04/07/leave_beijing/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 06:25:25 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Working]]></category>

		<category><![CDATA[行色匆匆]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[sql]]></category>

		<category><![CDATA[travel]]></category>

		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=448</guid>
		<description><![CDATA[
上周去北京参加了数据库技术大会，发现北京真的很大（废话？）。
从建筑密度上讲，广州与其相比简直就是个大的城中村，密密麻麻的看不到天空。
说回这次数据库大会，几乎变成了阿里... ]]></description>
			<content:encoded><![CDATA[<p><img src="http://i979.photobucket.com/albums/ae273/joecen/blog%20photo/0d229aaf.jpg" border="0" alt="beijing"></p>
<p>上周去北京参加了<a href="http://dtcc.it168.com/">数据库技术大会</a>，发现北京真的很大（废话？）。</p>
<p>从建筑密度上讲，广州与其相比简直就是个大的城中村，密密麻麻的看不到天空。</p>
<p>说回这次数据库大会，几乎变成了阿里巴巴的讲解会，我所听的会场，除了那几个广告外，有一半是阿里集团的人。</p>
<p>新的内容和技术也不多，大家都在讲怎么去scale up、scale out，还有NOSQL、key-value等东西，加上一些自己的经验吧。</p>
<p>这次刚好遇到了清明节，于是就多留了两天，顺便去了八达岭和故宫。感想就是“大”和“多”：<br />
建筑真大，人真多！长城都堵人了！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/04/07/leave_beijing/feed/</wfw:commentRss>
		</item>
		<item>
		<title>修改了feed的地址</title>
		<link>http://www.joecen.com/2010/02/23/change_feed_address/</link>
		<comments>http://www.joecen.com/2010/02/23/change_feed_address/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 07:13:35 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Site Log]]></category>

		<category><![CDATA[feed]]></category>

		<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=444</guid>
		<description><![CDATA[
这两天和daniel讨论他的feed的问题的时候，发现我自己的blog也有部分图片不能在greader上面显示，估计是feed burner没有更新我之前修改过的图片链接而导致的。
之前一直是用feedsky来作feed burner的... ]]></description>
			<content:encoded><![CDATA[<p><img src="http://i979.photobucket.com/albums/ae273/joecen/blog%20photo/feedburner.gif" alt="feedburner" /></p>
<p>这两天和<a href="http://blog.ishutter.net/">daniel</a>讨论他的feed的问题的时候，发现我自己的blog也有部分图片不能在greader上面显示，估计是feed burner没有更新我之前<a href="http://www.joecen.com/2010/02/08/change_blog_photo_to_photobucket/">修改过</a>的图片链接而导致的。<br />
之前一直是用<a href="http://www.feedsky.com">feedsky</a>来作feed burner的，也没有留意有什么问题。今天登录feedsky的时候才发现已经不知道是用哪个帐号进行登录的了，由于feedsky是国内公司的产品，不利于我个人的博客的生存（谁知道哪天聚合的日志也会被命令过滤关键字的呀！），于是干脆搬到<a href="http://www.feedburner.com">feedburner</a>。</p>
<p>下面是我的feed的新地址，要订阅的话可以用新的地址重新订阅（blog自身的feed也已更新)。<br />
<a href="http://feeds.feedburner.com/joecen">http://feeds.feedburner.com/joecen</a></p>
<p><font color=red>UPDATE： 转用feedburner后，要在feedburner后台禁用了item link clicks统计功能，否则在google reader上面不能直接点击进入网页(feedproxy.google.com已经被墙了)。</font></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/02/23/change_feed_address/feed/</wfw:commentRss>
		</item>
		<item>
		<title>将blog的图片转移到photobucket</title>
		<link>http://www.joecen.com/2010/02/08/change_blog_photo_to_photobucket/</link>
		<comments>http://www.joecen.com/2010/02/08/change_blog_photo_to_photobucket/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 10:07:52 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[UNIX]]></category>

		<category><![CDATA[blog]]></category>

		<category><![CDATA[photo]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=432</guid>
		<description><![CDATA[
在等待了几个月后，看来picasa是已经不可能回到我们身边了。特别是现在google传说要退出中国，给了贵国政府好看的时候。
贵国的网络监管越来越严厉，看来前两年一直在积储力量。现在我们... ]]></description>
			<content:encoded><![CDATA[<p><img src="http://i.i.com.com/cnwk.1d/i/bto/20080421/photobucket_logo.png"></p>
<p>在等待了几个月后，看来<a href="http://picasaweb.google.com">picasa</a>是已经不可能回到我们身边了。特别是现在google传说要退出中国，给了贵国政府好看的时候。</p>
<p>贵国的网络监管越来越严厉，看来前两年一直在积储力量。现在我们这些蚁民都知道了，老大哥不是没有能力封杀光你们，手段还多得很呢。只是之前发生了太多的事情，又地震又开奥运，等这些都完了，社会稳定了，就给你们好看！</p>
<p>好啦，好像有点离题了，这篇blog主要是要说我将之前blog使用的，在picasa的图片转移到了<a href="http://photobucket.com/">photobucket</a>上面。也有考虑过<a href="http://www.flickr.com/">flickr</a>,不过从filckr被封的历史和当前的访问速度看，不太适合。photobucket没有flickr那么2.0、那么炫，但是单从存储图片进行外链上来说，无论是速度还是性能方面都是非常不错的。</p>
<p>至于国内的那些相册就别提了，别人有别人的商业选择，我们有我们的脚。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/02/08/change_blog_photo_to_photobucket/feed/</wfw:commentRss>
		</item>
		<item>
		<title>在google reader查看外链图片的方法</title>
		<link>http://www.joecen.com/2010/02/02/google_reader_out_link_pics/</link>
		<comments>http://www.joecen.com/2010/02/02/google_reader_out_link_pics/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 09:30:18 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Living]]></category>

		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=412</guid>
		<description><![CDATA[在google reader上面不可避免的订阅了新浪、sohu、163等大门户的blog，一直有个问题困扰我的是，这些门户没有对google reader开放图片的外链（难道google reader不重要？），导致在reader上面看到的图片... ]]></description>
			<content:encoded><![CDATA[<p>在<a href="http://www.google.com/reader/view/">google reader</a>上面不可避免的订阅了新浪、sohu、163等大门户的blog，一直有个问题困扰我的是，这些门户没有对google reader开放图片的外链（难道google reader不重要？），导致在reader上面看到的图片都是那可恶的广告图。</p>
<p>以前也做过防盗链图片的工作，这些防盗链的技术基本上就是匹配一下http header的referer字段，看看是否符合自己的规则，然后决定返回什么给客户端。</p>
<p>那么我们只要修改referer字段，就可以轻松解决不能查看外链图片的问题了。</p>
<p>是的，还是在<a href="http://www.mozillaonline.com/">firefox</a>上面有插件可以实现这个功能。它就是<a href="https://addons.mozilla.org/zh-CN/firefox/addon/10636">Mason</a>,国人开发的插件。难能可贵的是，里面已经内置了很多规则，比如sina、sohu和163的外链图片规则，根本不需要我去写就可以用了。</p>
<p>除了外链图片以外，mason还能修改其他的Content-Type，对于辅助web的管理和开发很有帮助。不过由于我没有这个需求，所有就没有一一去尝试了。</p>
<p>当然，firefox上面也有其他修改http header的插件，比如有人介绍的"refcontrol",是专门修改referer的。不过它的规则添加居然不支持正则表达式，实在是令人失望。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/02/02/google_reader_out_link_pics/feed/</wfw:commentRss>
		</item>
		<item>
		<title>在ps3上安装ubuntu 9.10 (karmic)</title>
		<link>http://www.joecen.com/2010/01/29/install_ubuntu_karmic_on_ps3/</link>
		<comments>http://www.joecen.com/2010/01/29/install_ubuntu_karmic_on_ps3/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 10:16:00 +0000</pubDate>
		<dc:creator>joecen</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Living]]></category>

		<category><![CDATA[ps3]]></category>

		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.joecen.com/?p=410</guid>
		<description><![CDATA[      原来买ps3的时候，就打算将其作为一个家庭的媒体中心。但是ps3本身的播放功能对格式和字幕的支持不好，每次看电影的时候需要自己先将字幕亚到avi文件里面，实在是麻烦。于是产生了... ]]></description>
			<content:encoded><![CDATA[<p>      原来买ps3的时候，就打算将其作为一个家庭的媒体中心。但是ps3本身的播放功能对格式和字幕的支持不好，每次看电影的时候需要自己先将字幕亚到avi文件里面，实在是麻烦。于是产生了在ps3上面安装linux进行媒体播放的念头。  之前在网上看到，其实是可以安装utunbu，但是由于并没有ps3的显卡驱动，所以其实安装了linux以后，并不能做什么事情。<br />
    ubuntu karmic出来以后，据说加入了对显卡的支持，于是我决定尝试一下。</p>
<p><strong>一、安装</strong></p>
<p>安装其实不难，就三步:<br />
   1.  Setting up your PS3 to run Linux<br />
   2. Installing your Ubuntu version of choice.<br />
   3. Setting up your PSUbuntu installation.</p>
<p>按照这个<a href="http://psubuntu.com/wiki/InstallationInstructions">链接</a>的方法来一步步做就可以了。</p>
<p>需要注意的是要下载<a href="http://cdimage.ubuntu.com/ports/releases/9.10/release/ubuntu-9.10-server-powerpc+ps3.iso">ps3版本</a>的<a href="http://cdimage.ubuntu.com/ports/releases/9.10/release/">ubuntu.</a></p>
<p><strong>二、设置和优化</strong></p>
<p><strong>1、屏幕</strong><br />
首先电视机要设置为全屏。</p>
<li>安装fbset</li>
<div class="hl-surround"><div class="hl-main">sudo apt-get install fbset</div></div>
<li>使用ctl+alt+f1切换到字符界面</li>
<li>停止X server</li>
<div class="hl-surround"><div class="hl-main">sudo /etc/init.d/gdm stop</div></div>
<li>设置屏幕输出</li>
<p>如果要设置720p的话用如下命令</p>
<div class="hl-surround"><div class="hl-main">sudo ps3-video-mode -v 131&nbsp; 等同于 ps3-video-mode -v 3 -f</div></div>
<p>1080i的话可以用</p>
<div class="hl-surround"><div class="hl-main">sudo ps3-video-mode -v 132</div></div>
<p>其余可以查help</p>
<li>使用fbset设置屏幕大小</li>
<p>命令</p>
<div class="hl-surround"><div class="hl-main">sudo fbset -a -xres 1276 -yres 716<br /><br />sudo fbset -a -xres 1272 -yres 712<br /><br />sudo fbset -a -xres 1268 -yres 708</div></div>
<p>不断调整，直到完全合适你的电视机屏幕。</p>
<p>我的宽屏电视最后的数据是：</p>
<div class="hl-surround"><div class="hl-main">sudo fbset -a -xres 1215 -yres 680</div></div>
<p>调整到上下左右都合适。</p>
<p>最后根据该数据设置虚拟位置：</p>
<div class="hl-surround"><div class="hl-main">sudo fbset -a -xres 1215 -yres 680 -vxres 1215 -vyres 680</div></div>
<li>为了重启的时候生效</li>
<p>编辑/etc/kboot.conf</p>
<div class="hl-surround"><div class="hl-main">video=ps3fb:mode:131'</div></div>
<p>然后自己制作一个启动运行的文件:</p>
<div class="hl-surround"><div class="hl-main">sudo vi /etc/init.d/fbset.sh</div></div>
<p>内容如下：</p>
<div class="hl-surround"><div class="hl-main">#!/bin/sh<br />fbset -a -xres 1215 -yres 680 -vxres 1215 -vyres 680<br />exit 0</div></div>
<p>使用"wq"保存关闭</p>
<p>赋予可执行权限：</p>
<div class="hl-surround"><div class="hl-main">sudo chmod 755 /etc/init.d/fbset.sh</div></div>
<p>最后将其链接到rc2.d中，让X启动的时候执行该脚本:</p>
<div class="hl-surround"><div class="hl-main">sudo ln -s /etc/init.d/fbset.sh /etc/rc2.d/S26fbset</div></div>
<p><strong>2、使用PS3 GPU作为SWAP</strong><br />
ps3最不好的一点就是内存太少了，只有200来兆，而GPU的显存也已经有200多兆了，那么我们可以使用GPU的显存作为内存来使用。<br />
注意，只支持2.6.28+的内核，9.04的ubuntu版本就可以。</p>
<p>使用命令：</p>
<div class="hl-surround"><div class="hl-main">sudo mkswap /dev/ps3vram<br />sudo swapon -p1 /dev/ps3vram</div></div>
<p>-p 1的意思是将其优先级调到最前面。</p>
<p>使用</p>
<div class="hl-surround"><div class="hl-main">swapon -s</div></div>
<p>查看当前swap的情况</p>
<p>Filename Type Size UsedPriority<br />
/dev/ps3da5 partition 489940 97140 -1 <-- Hard drive swap<br />
/dev/ps3vram partition 250872 12241 <-- Vram swap</p>
<p>让其开机时也生效：<br />
sudo vi /etc/modules</p>
<p>在最后一行加入 "ps3vram"， 使用"wq"保存退出。</p>
<p>sudo vi /etc/rc.local<br />
在<br />
exit 0 前面加入：</p>
<p>mkswap /dev/ps3vram<br />
swapon -p 1 /dev/ps3vram</p>
<p>即可   </p>
<p>完成后就可以正常的使用ubuntu了。<br />
不过从我的测试效果看，播放比较大的avi还是比较卡，而且有时候全屏时会有绿色的带。没找到办法解决。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joecen.com/2010/01/29/install_ubuntu_karmic_on_ps3/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

