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

<channel>
	<title>易水博客</title>
	<atom:link href="http://easwy.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://easwy.com/blog</link>
	<description>关注Linux, Scala, Android, Java, 开源软件和嵌入式系统</description>
	<lastBuildDate>Mon, 12 Mar 2012 02:03:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Easwy的vim配置共享：包括.vimrc及整个.vim目录</title>
		<link>http://easwy.com/blog/archives/easwy-vimrc-and-vim-settings/</link>
		<comments>http://easwy.com/blog/archives/easwy-vimrc-and-vim-settings/#comments</comments>
		<pubDate>Mon, 12 Mar 2012 02:03:30 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[开源软件]]></category>
		<category><![CDATA[文本处理]]></category>
		<category><![CDATA[Vim]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1160</guid>
		<description><![CDATA[<p>刚才有网友来信询问我的vim配置，我在很久以前已经把我的所有vim配置上传到github了，有兴趣的朋友可以在<a href="https://github.com/easwy/share/tree/master/vim/vimrc" title="Easwy的.vimrc和.vim目录" target="_blank"></a>找到我最新的.vimrc和整个的.vim目录。</p>
<p>你可以点此<a href="https://github.com/easwy/share/zipball/master" title="下载Easwy的vimrc" target="_blank">下载Easwy的vimrc</a>，如果你了解git，你也可以使用git命令下载整个版本历史：</p>

<code>git clone https://github.com/easwy/share.git</code>

<p>用这种方式，你可以随时跟踪我的最新修改，或者把你对vimrc的改变通知我。</p>
<p>Happy Vimming!</p> <a href="http://easwy.com/blog/archives/easwy-vimrc-and-vim-settings/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/add_post_copyright_url/' rel='bookmark' title='在文章末尾添加版本声明和文章的链接'>在文章末尾添加版本声明和文章的链接</a></li>
<li><a href='http://easwy.com/blog/archives/vi-tip-of-using-recording/' rel='bookmark' title='vi技巧: 宏的使用技巧'>vi技巧: 宏的使用技巧</a></li>
<li><a href='http://easwy.com/blog/archives/advanced-vim-skills-catalog/' rel='bookmark' title='vi/vim使用进阶: 目录'>vi/vim使用进阶: 目录</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>刚才有网友来信询问我的vim配置，我在很久以前已经把我的所有vim配置上传到github了，有兴趣的朋友可以在<a href="https://github.com/easwy/share/tree/master/vim/vimrc" title="Easwy的.vimrc和.vim目录" target="_blank">Easwy的Github共享</a>找到我最新的.vimrc和整个的.vim目录。</p>
<p>你可以点此<a href="https://github.com/easwy/share/zipball/master" title="下载Easwy的vimrc" target="_blank">下载Easwy的vimrc</a>，如果你了解git，你也可以使用git命令下载整个版本历史：</p>
<p><code>git clone https://github.com/easwy/share.git</code></p>
<p>用这种方式，你可以随时跟踪我的最新修改，或者把你对vimrc的改变通知我。</p>
<p>Happy Vimming!</p>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/easwy-vimrc-and-vim-settings/" target="_top">http://easwy.com/blog/archives/easwy-vimrc-and-vim-settings/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/add_post_copyright_url/' rel='bookmark' title='在文章末尾添加版本声明和文章的链接'>在文章末尾添加版本声明和文章的链接</a></li>
<li><a href='http://easwy.com/blog/archives/vi-tip-of-using-recording/' rel='bookmark' title='vi技巧: 宏的使用技巧'>vi技巧: 宏的使用技巧</a></li>
<li><a href='http://easwy.com/blog/archives/advanced-vim-skills-catalog/' rel='bookmark' title='vi/vim使用进阶: 目录'>vi/vim使用进阶: 目录</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/easwy-vimrc-and-vim-settings/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>使用Scala + sbt + sbt-android-plugin开发Android应用程序</title>
		<link>http://easwy.com/blog/archives/using-scala-sbt-for-android-development/</link>
		<comments>http://easwy.com/blog/archives/using-scala-sbt-for-android-development/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 14:09:13 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[开发编程]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[sbt]]></category>
		<category><![CDATA[scala]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1157</guid>
		<description><![CDATA[开发Android程序通常所使用的语言是Java，但Scala做为一种有希望替代Java的语言，也逐渐被越来越多的Android者所熟悉。本文简要的介绍如何使用Scala的sbt工具(Simple Build Tool)及sbt-android-plugin创建，编译，安装运行一个简单的Android程序。  <a href="http://easwy.com/blog/archives/using-scala-sbt-for-android-development/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/android-sdk-15-update-release/' rel='bookmark' title='Android SDK 1.5预览版发布'>Android SDK 1.5预览版发布</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-11-28/' rel='bookmark' title='Easwy的Twitter微博(2010-11-28)'>Easwy的Twitter微博(2010-11-28)</a></li>
<li><a href='http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/' rel='bookmark' title='在Ubuntu上编译Android Gingerbread 2.3.1'>在Ubuntu上编译Android Gingerbread 2.3.1</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>
    开发Android程序通常所使用的语言是Java，但Scala做为一种有希望替代Java的语言，也逐渐被越来越多的Android者所熟悉。本文简要的介绍如何使用<a href="http://www.scala-lang.org/" target="_top">Scala</a>的<a href="https://github.com/harrah/xsbt/wiki" target="_top">sbt工具</a>(Simple Build Tool)及<a href="https://github.com/jberkel/android-plugin" target="_top">sbt-android-plugin</a>创建，编译，安装运行一个简单的Android程序。
  </p>
<div class="orderedlist">
<ol type="1">
<li>
      <span class="bold"><strong>环境准备</strong></span></p>
<p>
        <a href="http://easwy.com/" target="_top">Easwy</a>的开发环境搭建在Ubuntu 10.04.3上，所以第一步是安装Ubuntu，具体过程略过。
      </p>
<p>
        然后需要下载Android SDK，这一步可以参考文档<a href="http://developer.android.com/sdk/index.html" target="_top">Download the Android SDK</a>完成。
      </p>
<p>
        接下来在Ubuntu里安装Sun Java JDK，如果你使用OpenJDK，可以跳过这一步。首先去掉<span class="emphasis"><em>/etc/apt/sources.list</em></span>中这两行前的注释，使能Java 6源：
      </p>
<pre class="programlisting">
$ sudo vim /etc/apt/sources.list
deb http://archive.canonical.com/ubuntu lucid partner
deb-src http://archive.canonical.com/ubuntu lucid partner </pre>
<p>
        然后安装Java 6 JDK：
      </p>
<pre class="programlisting">
$ sudo aptitude install sun-java6-jdk </pre>
</li>
<li>
      <span class="bold"><strong>安装Scala、sbt和sbt-android-plugin</strong></span></p>
<p>
        首先安装Scala。到<a href="http://www.scala-lang.org/downloads" target="_top">Scala Download Page</a>下载Scala，Easwy下载的是Scala 2.9.1的IzPack Installer，下载后执行：
      </p>
<pre class="programlisting">$ java -jar scala-2.9.1.final-installer.jar </pre>
<p>
        按提示安装即可。
      </p>
<p>
        然后安装sbt。到<a href="https://github.com/harrah/xsbt/wiki/Getting-Started-Setup" target="_top">sbt wiki</a>上下载sbt-launch.jar，然后创建一个脚本来调用它：
      </p>
<pre class="programlisting">
$ vim ~/bin/sbt
java -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M -jar `dirname $0`/sbt-launch.jar "$@"

$ chmod u+x ~/bin/sbt </pre>
<p>
      最后安装sbt-android-plugin。因为sbt-android-plugin还在开发中，在此Easwy直接checkout它的源代码，然后安装在本地：
    </p>
<pre class="programlisting">
$ git clone git://github.com/jberkel/android-plugin.git
$ cd android-plugin
$ sbt publish-local </pre>
<p>
      sbt在第一次运行时会下载它所依赖的包，耗时会久一些，此过程只需进行一次。
    </p>
</li>
<li>
      <span class="bold"><strong>自动生成Android应用程序框架</strong></span></p>
<p>
        设置好上面的环境后，可以使用sbt-android-plugin来自动生成一个简单的Android应用程序框架。插件的作者推荐使用一个名为<span class="emphasis"><em>giter8</em></span>的模板工具来生成框架。首先需要下载<span class="emphasis"><em>giter8</em></span>工具：
      </p>
<pre class="programlisting">
$ cd ~/bin
$ curl https://raw.github.com/n8han/conscript/master/setup.sh | sh
$ ~/bin/cs n8han/giter8 </pre>
<p>
        这几条命令会下载一些它们所需的包，需要一些时间。接下来就可以用giter8工具，根据指定的模板自动生成一个Android应用程序：
      </p>
<pre class="programlisting">
$ ~/bin/g8 jberkel/android-app

Template for Android apps in Scala

package [my.android.project]: com.easwy.projects.helloworld
name [My Android Project]: Hello World
main_activity [MainActivity]:
scala_version [2.9.1]:
api_level [10]:
useProguard [true]:

Applied jberkel/android-app.g8 in hello-world </pre>
<p>
        这条命令会提示你输入一些参数，然后根据你输入的参数生成一个Android应用程序的框架。
      </p>
<p>
        事实上，此命令直接找到保存在<a href="https://github.com/" target="_top">github.com</a>上的模板，然后根据模板生成Android应用程序的目录框架。在本例中所使用的模板是<a href="https://github.com/jberkel/android-app.g8/tree/master/src/main/g8" target="_top">jberkel/android-app</a>。你也可以自己创建一套模板，生成更适合自己的目录框架。
      </p>
</li>
<li>
      <span class="bold"><strong>编译、安装、运行Android程序</strong></span></p>
<p>
        由上面的模板生成的Android应用程序，其实就是一个简单的<span class="emphasis"><em>“Hello World!”</em></span>应用，你可以直接编译、安装、运行它。
      </p>
<p>
        首先进入sbt的交互模式：
      </p>
<pre class="programlisting">
$ cd hello-world
$ export ANDROID_SDK_ROOT=~/bin/android-sdk-linux_86
$ sbt</pre>
<p>
        开始编译：
      </p>
<pre class="programlisting">&gt; android:package-debug </pre>
<p>
        然后用下面的命令启动你的Android模拟器(如果你还没有模拟器，参考<a href="http://developer.android.com/guide/developing/devices/index.html" target="_top">Managing Virtual Devices</a>创建一个)：
      </p>
<pre class="programlisting">&gt; android:emulator-start api10</pre>
<p>
        上面的命令启动了名为<span class="emphasis"><em>api10</em></span>的模拟器，下面安装运行我们编译出来的Hello World程序：
      </p>
<pre class="programlisting"> &gt; android:start-emulator </pre>
<p>
        现在可以看到Hello World程序已经在api10 emulator中运行了。
      </p>
</li>
</ol>
</div>
<p>
    在后续的文章中，<a href="http://easwy.com/" target="_top">Easwy</a>会继续介绍使用Scala开发Android程序的心得。
  </p>
<p>
    更多内容，请阅读<a href="http://easwy.com/blog/" target="_top">易水博客</a>上的其它文章。
  </p>
<p><span class="bold"><strong>[ 参考文档 ]</strong></span></p>
<div class="itemizedlist">
<ul type="disc">
<li>
      <a href="http://www.scala-lang.org/" target="_top">Scala Programing Language</a>
    </li>
<li>
      <a href="https://github.com/harrah/xsbt/wiki" target="_top">sbt &#8211; Simple Build Tool for Scala</a>
    </li>
<li>
      <a href="https://github.com/jberkel/android-plugin" target="_top">sbt-android-plugin</a>
    </li>
<li>
      <a href="http://developer.android.com/sdk/installing.html" target="_top">Installing the Android SDK</a>
    </li>
</ul>
</div>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/using-scala-sbt-for-android-development/" target="_top">http://easwy.com/blog/archives/using-scala-sbt-for-android-development/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/android-sdk-15-update-release/' rel='bookmark' title='Android SDK 1.5预览版发布'>Android SDK 1.5预览版发布</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-11-28/' rel='bookmark' title='Easwy的Twitter微博(2010-11-28)'>Easwy的Twitter微博(2010-11-28)</a></li>
<li><a href='http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/' rel='bookmark' title='在Ubuntu上编译Android Gingerbread 2.3.1'>在Ubuntu上编译Android Gingerbread 2.3.1</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/using-scala-sbt-for-android-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在CentOS 5上安装Ubuntu KVM虚拟机</title>
		<link>http://easwy.com/blog/archives/centos-kvm-virtulization-ubuntu-guest/</link>
		<comments>http://easwy.com/blog/archives/centos-kvm-virtulization-ubuntu-guest/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 13:36:29 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[开源软件]]></category>
		<category><![CDATA[kvm]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1156</guid>
		<description><![CDATA[Linux下免费的虚拟化技术主要有KVM和XEN两种。KVM已经合入了Linux标准内核，也获得了诸如RedHat RHEL、Ubuntu这样的Linux发行版的支持，可以预见在未来KVM应该会成为Linux虚拟化技术的主流。只是KVM需要硬件虚拟化技术的支持，如果你的CPU不支持硬件虚拟化技术，那么只能使用XEN。

本文记录了Easwy在CentOS 5.7上安装Ubuntu KVM虚拟机的过程。  <a href="http://easwy.com/blog/archives/centos-kvm-virtulization-ubuntu-guest/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/solve-fragment-packets-loss-of-ping/' rel='bookmark' title='Linux使用笔记: 解决Xen虚拟机中VLAN接口不能ping大包的问题'>Linux使用笔记: 解决Xen虚拟机中VLAN接口不能ping大包的问题</a></li>
<li><a href='http://easwy.com/blog/archives/disable-ipv6-in-centos-and-redhat/' rel='bookmark' title='Linux使用笔记：在CentOS 5中关闭IPv6'>Linux使用笔记：在CentOS 5中关闭IPv6</a></li>
<li><a href='http://easwy.com/blog/archives/ssh-login-no-password-needed/' rel='bookmark' title='Linux使用笔记: 实现ssh不需要密码登录'>Linux使用笔记: 实现ssh不需要密码登录</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>
    Linux下免费的虚拟化技术主要有KVM和XEN两种。KVM已经合入了Linux标准内核，也获得了诸如RedHat RHEL、Ubuntu这样的Linux发行版的支持，可以预见在未来KVM应该会成为Linux虚拟化技术的主流。只是KVM需要硬件虚拟化技术的支持，如果你的CPU不支持硬件虚拟化技术，那么只能使用XEN。
  </p>
<p>
    本文记录了<a href="http://easwy.com/" target="_top">Easwy</a>在CentOS 5.7上安装Ubuntu KVM虚拟机的过程。
  </p>
<div class="orderedlist">
<ol type="1">
<li>
      <span class="bold"><strong>环境检查</strong></span></p>
<p>
        首先需要检查一下你的CPU是否支持硬件虚拟化技术(Hardware Vitualization)：
      </p>
<pre class="programlisting">egrep '(vmx|svm)' --color=always /proc/cpuinfo </pre>
<p>
        如果在你的计算机上没有任何输出，那么说明你的CPU不支持硬件虚拟化技术，也就无法使用KVM。
      </p>
<p>
        另外需要注意的是，在CentOS 5.4版本以后，只有64位的CentOS才支持KVM，具体原因不清楚，所以如果你是32位的CentOS，暂时也无法使用KVM。
      </p>
</li>
<li>
      <span class="bold"><strong>安装KVM</strong></span></p>
<p>
        检查完环境后，我们开始安装并激活KVM。
      </p>
<p>
        首先，将SELinux的配置更改为<span class="bold"><strong>Permissive</strong></span>，因为<code class="code">virt-install</code>不支持SELinux为<span class="emphasis"><em>disable</em></span>：
      </p>
<pre class="programlisting">[root@srv-easwy ~]# system-config-securitylevel </pre>
<p>
        然后安装kvm及其它虚拟化相关的软件：
      </p>
<pre class="programlisting">[root@srv-easwy ~]# yum install kvm kmod-kvm libvirt python-virtinst virt-manager</pre>
<p>
        接下来需要重启系统，在启动完成后，你应该可以看到KVM内核模块已经被加载了：
      </p>
<pre class="programlisting">
[root@srv-easwy ~]# lsmod |grep kvm
kvm_intel              85256  1
kvm                   224800  2 ksm,kvm_intel </pre>
<p>
        可以通过下面的命令看看KVM是不是真正运行了：
      </p>
<pre class="programlisting">
[root@srv-easwy ~]# virsh -c qemu:///system list
Id Name                 State
----------------------------------

[root@srv-easwy ~]# </pre>
</li>
<li>
      <span class="bold"><strong>配置网络</strong></span></p>
<p>
        现在配置一个网桥，以便虚拟机可以访问网络。首先安装所需的工具：
      </p>
<pre class="programlisting">[root@srv-easwy ~]# yum install bridge-utils </pre>
<p>
        新创建一个文件<span class="emphasis"><em>/etc/sysconfig/network-scripts/ifcfg-br0</em></span>，其内容为：
      </p>
<pre class="programlisting">
DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes </pre>
<p>
        上面的文件配置此网桥以DHCP方式获取IP地址。接下来修改原来的网卡配置<span class="emphasis"><em>/etc/sysconfig/network-scripts/ifcfg-eth0</em></span>，修改为：
      </p>
<pre class="programlisting">
DEVICE=eth0
HWADDR=B8:AC:6F:89:10:76
ONBOOT=yes
BRIDGE=br0 </pre>
<p>
        然后重启网络配置，查看一下：
      </p>
<pre class="programlisting">
[root@srv-easwy ~]# /etc/init.d/network restart
[root@srv-easwy ~]# ifconfig
br0       Link encap:Ethernet  HWaddr B8:AC:6F:89:10:76
          inet addr:172.23.5.50  Bcast:172.23.5.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3242738 errors:0 dropped:0 overruns:0 frame:0
          TX packets:702638 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1057883287 (1008.8 MiB)  TX bytes:448735998 (427.9 MiB)

eth0      Link encap:Ethernet  HWaddr B8:AC:6F:89:10:76
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3445641 errors:0 dropped:0 overruns:0 frame:93
          TX packets:670754 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1201230368 (1.1 GiB)  TX bytes:239453000 (228.3 MiB)
          Interrupt:177 Memory:f3de0000-f3df0000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:63582 errors:0 dropped:0 overruns:0 frame:0
          TX packets:63582 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:154537675 (147.3 MiB)  TX bytes:154537675 (147.3 MiB)

virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1797 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:470443 (459.4 KiB)
      </pre>
</li>
<li>
      <span class="bold"><strong>安装虚拟机</strong></span></p>
<p>
        基于磁盘逻辑卷管理(LVM)的虚拟机会拥有较好的磁盘I/O性能，所以在此处<a href="http://easwy.com/" target="_top">Easwy</a>安装了基于LVM的虚拟机。如果你对LVM并不熟悉，可以参考我的<a href="http://easwy.com/blog/archives/linux-lvm-learning-notes/" target="_top">Linux逻辑卷管理器(LVM)学习笔记</a>。
      </p>
<p>
        Easwy在安装时已经在逻辑卷组中预留了部分未用空间，所以此处直接在卷组<span class="emphasis"><em>vg0</em></span>中创建一个逻辑卷<span class="emphasis"><em>ubuntu</em></span>，并分配了332G的空间：
      </p>
<pre class="programlisting">[root@srv-easwy ~]# lvcreate -L32G -n ubuntu vg0 </pre>
<p>
        接下来使用<code class="code">virt-install</code>安装Ubuntu虚拟机，在此处直接使用Ubuntu的ISO文件做为源，将其安装到新创建的逻辑卷<span class="emphasis"><em>/dev/vg0/ubuntu</em></span>中：
      </p>
<pre class="programlisting">
[root@srv-easwy ~]# virt-install --connect qemu:///system -n ubuntu -r 1024 --vcpus=2 -f /dev/vg0/ubuntu -c ~/Download/ubuntu/ubuntu-10.04.3-desktop-amd64.iso --vnc --os-type linux --os-variant generic26 --accelerate --network=bridge:br0 --hvm --noautoconsole</pre>
<p>
        执行完此命令后，KVM虚拟机会使用Ubuntu的ISO文件启动，我们需要启动<code class="code">virt-manager</code>，连接到此虚拟机，继续完成安装过程。这和安装真正的Linux操作系统完全一样，不再赘述。
      </p>
</li>
</ol>
</div>
<p>
    现在，基本KVM的Ubuntu虚拟机就完全运行起来了。如果你对此还有疑问，欢迎留言。另外，参考文档中的链接也许对你也很有帮助。
  </p>
<p>
    更多内容，请阅读<a href="http://easwy.com/blog/" target="_top">易水博客</a>上的其它文章。
  </p>
<p><span class="bold"><strong>[ 参考文档 ]</strong></span></p>
<div class="itemizedlist">
<ul type="disc">
<li>
      <a href="http://www.howtoforge.com/virtualization-with-kvm-on-a-centos-5.2-server" target="_top">Virtualization With KVM On A CentOS 5.2 Server</a>
    </li>
</ul>
</div>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/centos-kvm-virtulization-ubuntu-guest/" target="_top">http://easwy.com/blog/archives/centos-kvm-virtulization-ubuntu-guest/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/solve-fragment-packets-loss-of-ping/' rel='bookmark' title='Linux使用笔记: 解决Xen虚拟机中VLAN接口不能ping大包的问题'>Linux使用笔记: 解决Xen虚拟机中VLAN接口不能ping大包的问题</a></li>
<li><a href='http://easwy.com/blog/archives/disable-ipv6-in-centos-and-redhat/' rel='bookmark' title='Linux使用笔记：在CentOS 5中关闭IPv6'>Linux使用笔记：在CentOS 5中关闭IPv6</a></li>
<li><a href='http://easwy.com/blog/archives/ssh-login-no-password-needed/' rel='bookmark' title='Linux使用笔记: 实现ssh不需要密码登录'>Linux使用笔记: 实现ssh不需要密码登录</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/centos-kvm-virtulization-ubuntu-guest/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linux逻辑卷管理器(LVM)学习笔记</title>
		<link>http://easwy.com/blog/archives/linux-lvm-learning-notes/</link>
		<comments>http://easwy.com/blog/archives/linux-lvm-learning-notes/#comments</comments>
		<pubDate>Tue, 14 Feb 2012 10:10:54 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[开源软件]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[lvm]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1150</guid>
		<description><![CDATA[通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM)，用户可以在系统运行时动态调整文件系统的大小，把数据从一块硬盘重定位到另一块硬盘，也可以提高I/O操作的性能，以及提供冗余保护，它的快照功能允许用户对逻辑卷进行实时的备份。

对一般用户来讲，使用最多的是动态调整文件系统大小的功能。这样，你在分区时就不必为如何设置分区的大小而烦恼，只要在硬盘中预留出部分空闲空间，然后根据系统的使用情况，动态调整分区大小。

本文总结了Easwy对于LVM的理解。  <a href="http://easwy.com/blog/archives/linux-lvm-learning-notes/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/huawei-android-mobile-phone-overview/' rel='bookmark' title='华为Android手机预计第三季度上市'>华为Android手机预计第三季度上市</a></li>
<li><a href='http://easwy.com/blog/archives/thinkpad-t400-suspend-hibernate-problem-on-linux/' rel='bookmark' title='解决Thinkpad T400在Debian Linux下不能休眠/待机的问题'>解决Thinkpad T400在Debian Linux下不能休眠/待机的问题</a></li>
<li><a href='http://easwy.com/blog/archives/linux-remote-desktop-by-vnc/' rel='bookmark' title='用VNC实现远程桌面共享(支持Windows, Linux, &#8230;)'>用VNC实现远程桌面共享(支持Windows, Linux, &#8230;)</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>
    通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM)，用户可以在系统运行时动态调整文件系统的大小，把数据从一块硬盘重定位到另一块硬盘，也可以提高I/O操作的性能，以及提供冗余保护，它的快照功能允许用户对逻辑卷进行实时的备份。
  </p>
<p>
    对一般用户来讲，使用最多的是动态调整文件系统大小的功能。这样，你在分区时就不必为如何设置分区的大小而烦恼，只要在硬盘中预留出部分空闲空间，然后根据系统的使用情况，动态调整分区大小。
  </p>
<p>
    以下内容总结了<a href="http://easwy.com/" target="_top">Easwy</a>对于LVM的理解。
  </p>
<p>
    在LVM中，主要有三个概念：
  </p>
<div class="itemizedlist">
<ul type="disc">
<li>
      <span class="bold"><strong>物理卷(Physical Volume, PV)：</strong></span> 物理卷可以是一个磁盘，也可以是磁盘中的一个分区。它为LVM提供了存储介质。
    </li>
<li>
      <span class="bold"><strong>逻辑卷组(Logical Volume Group, LVG)：</strong></span> 可以把逻辑卷组想象成一个存储池，或者是逻辑硬盘。物理卷与物理卷在硬件上可以是不连续的，但把多个物理卷加入逻辑卷组后，就可以把这个逻辑卷组看成一个存储空间连续的逻辑硬盘，在这块硬盘上，可以创建多个逻辑卷(LV)。
    </li>
<li>
      <span class="bold"><strong>逻辑卷(Logical Volume, LV)：</strong></span> 可以将卷组划分成若干个逻辑卷，相当于在逻辑硬盘上划分出几个逻辑分区，每个逻辑分区上都可以创建具体的文件系统。
    </li>
</ul>
</div>
<p>
    到这里我们可以看出，原本是直接在硬盘上创建分区，然后在分区上创建文件系统。使用了LVM后，在其中插入一个逻辑层，相当于是在一块逻辑硬盘上创建逻辑分区，然后在逻辑分区上创建文件系统。
  </p>
<p>
    新插入一个逻辑层，对单个硬盘的读写会有一定的性能损失，但其带来的好处是巨大的。首先，逻辑分区大小不再受硬盘实际大小的限制，它可以扩展到几块硬盘上；其次，逻辑分区可以很方便的做调整大小、备份等维护操作；而且，如果系统中存在多块硬盘，通过设置逻辑卷到物理卷的映射关系(采用LVM striped mapping)，可以提高I/O的读写性能，因为此时的读写是在多块硬盘上并发进行的，比对单个硬盘的读写显然要快很多。
  </p>
<p>
     下面是一个LVM使用的例子：
  </p>
<div id="attachment_1151" class="wp-caption aligncenter" style="width: 723px"><a href="http://easwy.com/blog/uploads/2012/02/vg.png"><img src="http://easwy.com/blog/uploads/2012/02/vg.png" alt="Linux下逻辑卷管理器(LVM)示例" title="Linux下逻辑卷管理器(LVM)示例" width="713" height="270" class="size-full wp-image-1151" /></a><p class="wp-caption-text">Linux下逻辑卷管理器(LVM)的一个例子</p></div>
<p>
    在图中有两块硬盘，其中硬盘1分了两个分区，<span class="emphasis"><em>/dev/sda1</em></span>和<span class="emphasis"><em>/dev/sda2</em></span>，硬盘2没有创建分区。接下来在<span class="emphasis"><em>/dev/sda2</em></span>和<span class="emphasis"><em>/dev/sdb</em></span>上创建物理卷，然后把这两个物理卷加入到逻辑卷组<span class="emphasis"><em>vg0</em></span>中，现在，逻辑卷组vg0看起来像一块很大的逻辑硬盘，然后在其中创建两个逻辑卷<span class="emphasis"><em>/dev/vg0/lv0</em></span>和<span class="emphasis"><em>/dev/vg0/lv1</em></span>。
  </p>
<p>
    最后，分别在<span class="emphasis"><em>/dev/sda1</em></span>、<span class="emphasis"><em>/dev/vg0/lv0</em></span>和<span class="emphasis"><em>/dev/vg0/lv1</em></span>上创建文件系统，并分别把它们挂载到文件系统树中。这样看上去，逻辑卷是不是很像是一个逻辑的分区？
  </p>
<p>
    在逻辑卷组vg0中，还预留有一部分空间未用，如果在使用中发现某个逻辑卷空间不够用了，可以在不停机的情况下，直接调整逻辑卷及其上的文件系统的大小。对服务器来讲，这是简单但非常有用的功能。
  </p>
<p>
    更多内容，请阅读<a href="http://easwy.com/blog/" target="_top">易水博客</a>上的其它文章。
  </p>
<p><span class="bold"><strong>[ 参考文档 ]</strong></span></p>
<div class="itemizedlist">
<ul type="disc">
<li>
      <a href="http://www.redhat.com/magazine/009jul05/features/lvm2/" target="_top">The Linux Logical Volume Manager</a>
    </li>
</ul>
</div>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/linux-lvm-learning-notes/" target="_top">http://easwy.com/blog/archives/linux-lvm-learning-notes/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/huawei-android-mobile-phone-overview/' rel='bookmark' title='华为Android手机预计第三季度上市'>华为Android手机预计第三季度上市</a></li>
<li><a href='http://easwy.com/blog/archives/thinkpad-t400-suspend-hibernate-problem-on-linux/' rel='bookmark' title='解决Thinkpad T400在Debian Linux下不能休眠/待机的问题'>解决Thinkpad T400在Debian Linux下不能休眠/待机的问题</a></li>
<li><a href='http://easwy.com/blog/archives/linux-remote-desktop-by-vnc/' rel='bookmark' title='用VNC实现远程桌面共享(支持Windows, Linux, &#8230;)'>用VNC实现远程桌面共享(支持Windows, Linux, &#8230;)</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/linux-lvm-learning-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP-PostURL 2.1.0发布</title>
		<link>http://easwy.com/blog/archives/add-post-url-2-1-0-published/</link>
		<comments>http://easwy.com/blog/archives/add-post-url-2-1-0-published/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 02:48:09 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[建站手记]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1144</guid>
		<description><![CDATA[WP-PostURL插件2.1.0正式发布，欢迎大家使用。2.x系列版本主要增加了一个新功能，允许用户针对单篇文章进行控制，决定哪篇文章显示/不显示Header及Footer文本。这一功能在转载文章会比较有用。 <a href="http://easwy.com/blog/archives/add-post-url-2-1-0-published/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/wp-posturl-release-1-1-is-published/' rel='bookmark' title='WP-PostURL 1.1发布：在文章尾部增加版本声明和站点/文章链接'>WP-PostURL 1.1发布：在文章尾部增加版本声明和站点/文章链接</a></li>
<li><a href='http://easwy.com/blog/archives/fix_short_meta_descriptions/' rel='bookmark' title='解决Google中短的元说明问题'>解决Google中短的元说明问题</a></li>
<li><a href='http://easwy.com/blog/archives/select-permalinks-structure/' rel='bookmark' title='如何设置博客的永久链接最好'>如何设置博客的永久链接最好</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>
  WP-PostURL插件2.1.0正式发布，欢迎大家使用。2.x系列版本主要增加了一个新功能，允许用户针对单篇文章进行控制，决定哪篇文章显示/不显示Header及Footer文本。这一功能在转载文章会比较有用。你在新建或编辑文章时，会看到“是否添加链接？”选项，设置此选项为“是”，则为此篇文章添加Header及Footer文本；反之，则不显示。这个选项会为你的文章增加一个名为”posturl_add_url”的自定义字段，其值是”yes”或”no”。
</p>
<p>
  对那些以前发表的文章，由于没有这个自定义字段，所以在2.1.0版本新增了一个名为“给以前发表的文章添加自定义文本”的选项。如果你选中此选项，那么所有未定义”posturl_add_url”字段的文章，都会显示Header/Footer文本。如果你不想为其中的某些文章显示Header/Footer文本，你需要手动设置一下这些文章的“是否添加链接？”选项。如果你没有选中“给以前发表的文章添加自定义文本”选项，那么没有”posturl_add_url”的自定义字段的文章，都不会显示Header/Footer，如果你想用其中的某些文章显示，也需要手动设置一下该文章的“是否添加链接？”选项。
</p>
<p>
  由于WordPress在最近的修改中，<a href="http://wpdevel.wordpress.com/2010/10/27/plugin-activation-hooks-no-longer-fire-for-updates/">升级插件时不再调用Activation Hook</a>，导致整个2.0.x版本中，“给以前发表的文章添加自定义文本”这一选项的值未设定，这也是很多人升级后发现链接显示不出来的原因。如果你遇到了这个问题，请尽快升级到最新的2.1.0版本。另外一个解决办法是，你可以先停用“添加文章链接”插件，然后再次手动激活；或者直接修改插件的配置，选中“给以前发表的文章添加自定义文本”选项(在2.0和2.0.1中，这一选项的名称为“缺省添加文章链接”)。
</p>
<p>
  如果大家还有什么新的需求，请在<a href="http://easwy.com/blog/wordpress/wp-posturl/">Add Post URL插件</a>主页上留言。如果在使用中有什么疑惑，也请留言。
</p>
<p>
  有兴趣大家可以阅读一下这两篇文章，<a href="http://www.superforever.com/html/y2011/347.html">充分发挥Add Post URL的强大功能</a>这篇文章介绍了如何用Add Post URL插件来为你的文章添加一个订阅地址，<a href="http://blog.sina.com.cn/s/blog_65a259330100ixkw.html">利用WP-PostURL插件对博客添加多语言支持</a>则巧用Add Port URL插件，利用Google的在线翻译，为文章添加多种语言的支持。
</p>
<p>
  另外，对大家帮助推广WP-PostURL插件表示感谢，希望大家喜欢这个插件。
</p>
<p>
  顺祝大家新年快乐，龙年吉祥！
</p>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/add-post-url-2-1-0-published/" target="_top">http://easwy.com/blog/archives/add-post-url-2-1-0-published/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/wp-posturl-release-1-1-is-published/' rel='bookmark' title='WP-PostURL 1.1发布：在文章尾部增加版本声明和站点/文章链接'>WP-PostURL 1.1发布：在文章尾部增加版本声明和站点/文章链接</a></li>
<li><a href='http://easwy.com/blog/archives/fix_short_meta_descriptions/' rel='bookmark' title='解决Google中短的元说明问题'>解决Google中短的元说明问题</a></li>
<li><a href='http://easwy.com/blog/archives/select-permalinks-structure/' rel='bookmark' title='如何设置博客的永久链接最好'>如何设置博客的永久链接最好</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/add-post-url-2-1-0-published/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>在Linux上使用adb访问魅族M9手机</title>
		<link>http://easwy.com/blog/archives/connect-meizu-m9-to-linux/</link>
		<comments>http://easwy.com/blog/archives/connect-meizu-m9-to-linux/#comments</comments>
		<pubDate>Wed, 26 Jan 2011 07:06:46 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[m9]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1125</guid>
		<description><![CDATA[<p>
    在windows上通过adb访问M9很简单，WinXP用户到<a class="ulink" href="http://www.meizu.com/services/M9.html" target="_top">魅族 M9 产品支持 </a>下载USB驱动，安装后就可以通过adb访问M9了。似乎Win 7能直接识别M9，不需要手动安装驱动。
  </p>
  <p>
    要在Linux上访问魅族M9手机，并不需要安装驱动，不过需要设置一下udev。以root身份增加一个文件<span class="emphasis"><em>/etc/udev/rules.d/51-android.rules</em></span>，内容如下: <a href="http://easwy.com/blog/archives/connect-meizu-m9-to-linux/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/set-file-directory-attribute-for-linux-samba/' rel='bookmark' title='Linux使用笔记: 设置Samba服务器中新建文件/目录的权限'>Linux使用笔记: 设置Samba服务器中新建文件/目录的权限</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-04-11-2/' rel='bookmark' title='Easwy的Twitter微博(2010-04-11)'>Easwy的Twitter微博(2010-04-11)</a></li>
<li><a href='http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/' rel='bookmark' title='在Ubuntu上编译Android Gingerbread 2.3.1'>在Ubuntu上编译Android Gingerbread 2.3.1</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>
    在windows上通过adb访问M9很简单，WinXP用户到<a class="ulink" href="http://www.meizu.com/services/M9.html" target="_top">魅族 M9 产品支持 </a>下载USB驱动，安装后就可以通过adb访问M9了。似乎Win 7能直接识别M9，不需要手动安装驱动。
  </p>
<p>
    要在Linux上访问魅族M9手机，并不需要安装驱动，不过需要设置一下udev。以root身份增加一个文件<span class="emphasis"><em>/etc/udev/rules.d/51-android.rules</em></span>，内容如下：
  </p>
<pre class="programlisting">
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="18d1", MODE="0666" </pre>
<p>
    这个文件需要对所有用户可读，执行一下下面的命令：
  </p>
<pre class="programlisting">
chmod a+r /etc/udev/rules.d/51-android.rules</pre>
<p>
    然后就可以通过USB线把M9手机连接到Linux，通过adb可以检测到M9：
  </p>
<pre class="programlisting">
$ platform-tools&gt; ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
M9W1B00AKAP5NU1064	device</pre>
<p>
    这种方法在Ubuntu 10.04及Centos 5.3上都可以正常工作，不过似乎是第一句在Ubuntu中生效，第二句在CentOS中生效。我比较奇怪的一点是，18d1是Google公司的USB vendor ID，为什么魅族不用自己的vendor ID呢？
  </p>
<p>
    更多文章，请访问<a class="ulink" href="http://easwy.com/blog/" target="_top">易水博客</a>。</p>
<p><span class="bold"><strong>[ 参考文档 ]</strong></span></p>
<div class="itemizedlist">
<ul class="itemizedlist" type="disc">
<li class="listitem">
      <a class="ulink" href="http://developer.android.com/guide/developing/device.html" target="_top">Developing on a Device</a>
    </li>
<li class="listitem">
      <a class="ulink" href="http://www.linux-usb.org/usb.ids" target="_top">List of USB ID&#8217;s</a>
    </li>
</ul>
</div>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/connect-meizu-m9-to-linux/" target="_top">http://easwy.com/blog/archives/connect-meizu-m9-to-linux/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/set-file-directory-attribute-for-linux-samba/' rel='bookmark' title='Linux使用笔记: 设置Samba服务器中新建文件/目录的权限'>Linux使用笔记: 设置Samba服务器中新建文件/目录的权限</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-04-11-2/' rel='bookmark' title='Easwy的Twitter微博(2010-04-11)'>Easwy的Twitter微博(2010-04-11)</a></li>
<li><a href='http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/' rel='bookmark' title='在Ubuntu上编译Android Gingerbread 2.3.1'>在Ubuntu上编译Android Gingerbread 2.3.1</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/connect-meizu-m9-to-linux/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Easwy的网摘(2010-11-18)</title>
		<link>http://easwy.com/blog/archives/bookmark-of-delicious-2010-11-18/</link>
		<comments>http://easwy.com/blog/archives/bookmark-of-delicious-2010-11-18/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 01:33:18 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[网络书签]]></category>
		<category><![CDATA[delicious]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1097</guid>
		<description><![CDATA[<p>本文是Easwy的网摘(2010-11-18)，根据<a href="http://delicious.com/easwy">Delicious</a>中的收藏自动生成。</p>
 <a href="http://easwy.com/blog/archives/bookmark-of-delicious-2010-11-18/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/' rel='bookmark' title='在Ubuntu上编译Android Gingerbread 2.3.1'>在Ubuntu上编译Android Gingerbread 2.3.1</a></li>
<li><a href='http://easwy.com/blog/archives/samsungs-first-android-handset-revealed/' rel='bookmark' title='三星发布首款Android手机'>三星发布首款Android手机</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-03-14-2/' rel='bookmark' title='Easwy的Twitter微博(2010-03-14)'>Easwy的Twitter微博(2010-03-14)</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>本文是Easwy的网摘(2010-11-18)，根据<a href="http://delicious.com/easwy">Delicious</a>中的收藏自动生成：</p>
<ul class="delicious">
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="https://wiki.ubuntu.com/Backtrace" rel="nofollow">Backtrace</a>
<p>&nbsp;&nbsp;&nbsp;里面有一些GDB的使用技巧</p>
</li>
<li  class="delicious"><a href="http://forum.xda-developers.com/showthread.php?t=619153" rel="nofollow">[Newbie Guide] adb/fastboot/bootloader/android 101</a>
<p>&nbsp;&nbsp;&nbsp;关于android中adb/fastboot/bootloader的入门贴</p>
</li>
<li  class="delicious"><a href="http://www.gotontheinter.net/content/fastboot-cheat-sheet" rel="nofollow">Fastboot Cheat Sheet</a>
<p>&nbsp;&nbsp;&nbsp;Android的Fastboot模式，包含G1的分区</p>
</li>
<li  class="delicious"><a href="http://android-dls.com/wiki/index.php?title=Fastboot" rel="nofollow">Fastboot</a>
<p>&nbsp;&nbsp;&nbsp;关于Android的Fastboot模式</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://www.cocoachina.com/bbs/read.php?tid-44021.html" rel="nofollow">新年感言9－大众与小众</a>
<p>&nbsp;&nbsp;&nbsp;一个iphone开发者的感言，值得一读</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://hi.baidu.com/yulanding/blog/item/71ccaa3d67fc71ce7d1e71d8.html" rel="nofollow">系统管理：update-alternatives</a>
<p>&nbsp;&nbsp;&nbsp;介绍如何使用Debian/Ubuntu中的update-alternative程序</p>
</li>
<li  class="delicious"><a href="http://www.webdesignerdepot.com/" rel="nofollow">Web Design Blog &#8211; Webdesigner Depot</a>
<p>&nbsp;&nbsp;&nbsp;web设计网站，有很多非常好的文章</p>
</li>
<li  class="delicious"><a href="http://www.thinkwiki.org/wiki/Category:T400" rel="nofollow">Category:T400 &#8211; ThinkWiki</a>
<p>&nbsp;&nbsp;&nbsp;Thinkwiki上关于Thinkpad T400的资源</p>
</li>
<li  class="delicious"><a href="http://www.thinkwiki.org/wiki/Maintenance#Battery_treatment" rel="nofollow">Maintenance &#8211; ThinkWiki</a>
<p>&nbsp;&nbsp;&nbsp;如何维护Thinkpad的电池</p>
</li>
<li  class="delicious"><a href="http://progit.org/book/" rel="nofollow">Pro Git &#8211; Table of Contents</a>
<p>&nbsp;&nbsp;&nbsp;一本git的书，有中文版本。使用git必读</p>
</li>
<li  class="delicious"><a href="http://www.thinkwiki.org/wiki/Tp_smapi" rel="nofollow">Tp smapi &#8211; ThinkWiki</a>
<p>&nbsp;&nbsp;&nbsp;How to manage battery of Thinkpad in Linux</p>
</li>
<li  class="delicious"><a href="http://www.androidenea.com/2009/06/android-boot-process-from-power-on.html" rel="nofollow">The Android boot process from power on</a>
<p>&nbsp;&nbsp;&nbsp;介绍android启动的过程</p>
</li>
<li  class="delicious"><a href="http://forum.xda-developers.com/showthread.php?t=736271" rel="nofollow">[Tutorial] Root Without Unlocking</a>
<p>&nbsp;&nbsp;&nbsp;介绍如何获得android的root权限，利用了漏洞</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="https://github.com/CyanogenMod" rel="nofollow">CyanogenMod&#8217;s Profile &#8211; GitHub</a>
<p>&nbsp;&nbsp;&nbsp;CyanogenMod项目代码库</p>
</li>
<li  class="delicious"><a href="http://forum.xda-developers.com/" rel="nofollow">xda-developers</a>
<p>&nbsp;&nbsp;&nbsp;xda开发者论坛</p>
</li>
<li  class="delicious"><a href="http://www.cyanogenmod.com/" rel="nofollow">CyanogenMod | Android Community Rom based on FroYo.</a>
<p>&nbsp;&nbsp;&nbsp;CyanogenMod是一个第三方的Android ROM</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://blog.csdn.net/DL88250/archive/2010/01/14/5191092.aspx" rel="nofollow">了解 NoSQL 的必读资料</a>
<p>&nbsp;&nbsp;&nbsp;该文列出了学习NoSQL技术的一些资料</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://net.tutsplus.com/tutorials/site-builds/from-psd-to-html-building-a-set-of-website-designs-step-by-step/" rel="nofollow">From PSD to HTML: Building a Set of Website Designs Step by Step</a>
<p>&nbsp;&nbsp;&nbsp;网页设计过程实例</p>
</li>
<li  class="delicious"><a href="http://24ways.org/" rel="nofollow">24 ways &#8211; web design and development articles and tutorials for advent</a>
<p>&nbsp;&nbsp;&nbsp;WEB前端设计相关的文章</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://jonasboner.com/2008/10/01/real-world-scala-introduction.html" rel="nofollow">Real-World Scala: Introduction</a>
<p>&nbsp;&nbsp;&nbsp;在实际项目中使用scala的经验总结</p>
</li>
<li  class="delicious"><a href="http://calon.weblogs.us/vim_sucha_shouce/" rel="nofollow">滯銷書 &raquo; Blog Archive &raquo; Vim 速查手册</a>
<p>&nbsp;&nbsp;&nbsp;以图形的方式组织的vim命令速查手册，vi初学者可以看看</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
<li  class="delicious"><a href="http://feeds.delicious.com/v2/rss/easwy" rel="nofollow">500 Internal Server Error</a>
<p>&nbsp;&nbsp;&nbsp;500 Internal Server Error</p>
</li>
</ul>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/bookmark-of-delicious-2010-11-18/" target="_top">http://easwy.com/blog/archives/bookmark-of-delicious-2010-11-18/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/' rel='bookmark' title='在Ubuntu上编译Android Gingerbread 2.3.1'>在Ubuntu上编译Android Gingerbread 2.3.1</a></li>
<li><a href='http://easwy.com/blog/archives/samsungs-first-android-handset-revealed/' rel='bookmark' title='三星发布首款Android手机'>三星发布首款Android手机</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-03-14-2/' rel='bookmark' title='Easwy的Twitter微博(2010-03-14)'>Easwy的Twitter微博(2010-03-14)</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/bookmark-of-delicious-2010-11-18/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Easwy的Twitter微博(2011-01-23)</title>
		<link>http://easwy.com/blog/archives/easwy-twitter-2011-01-23/</link>
		<comments>http://easwy.com/blog/archives/easwy-twitter-2011-01-23/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 01:31:07 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[网络微博]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1123</guid>
		<description><![CDATA[[m9] 拿到m9了。总体感觉不错，不过软件的使用感受要比iphone差。似乎没有充分利用触摸屏的优势，很多操作还需要按屏幕下方的菜单键，其实可以做的更简单易用的。 # [生活] m9还没到手。同事比我早预定两天，已经拿到了。他玩了两天后告诉我，&#34;m9没买错，网上说的问题都没出。&#34; 好吧，继续等m9！ # 貌似配置的有问题，同步失败&#8230;.debuging # 设置了#tw2other程序同步twitter到新浪围脖，发一条tweet测试一下 :) # 原创文章，请阅读页脚的许可方式，转载请注明：转载自易水博客 [ http://easwy.com/blog/ ] 本文链接地址: http://easwy.com/blog/archives/easwy-twitter-2011-01-23/ 文章的脚注信息由WordPress的wp-posturl插件自动生成 相关文章 Easwy的Twitter微博(2011-01-02) 在文章末尾添加版本声明和文章的链接 Easwy的Twitter微博(2010-09-05)<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/' rel='bookmark' title='Easwy的Twitter微博(2011-01-02)'>Easwy的Twitter微博(2011-01-02)</a></li>
<li><a href='http://easwy.com/blog/archives/add_post_copyright_url/' rel='bookmark' title='在文章末尾添加版本声明和文章的链接'>在文章末尾添加版本声明和文章的链接</a></li>
<li><a href='http://easwy.com/blog/archives/easwy-twitter-2010-09-05/' rel='bookmark' title='Easwy的Twitter微博(2010-09-05)'>Easwy的Twitter微博(2010-09-05)</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>[m9] 拿到m9了。总体感觉不错，不过软件的使用感受要比iphone差。似乎没有充分利用触摸屏的优势，很多操作还需要按屏幕下方的菜单键，其实可以做的更简单易用的。 <a href="http://twitter.com/Easwy/statuses/28358983341314049" class="aktt_tweet_time">#</a></li>
<li>[生活] m9还没到手。同事比我早预定两天，已经拿到了。他玩了两天后告诉我，&quot;m9没买错，网上说的问题都没出。&quot; 好吧，继续等m9！ <a href="http://twitter.com/Easwy/statuses/28287308088217600" class="aktt_tweet_time">#</a></li>
<li>貌似配置的有问题，同步失败&#8230;.debuging <a href="http://twitter.com/Easwy/statuses/23569007160328192" class="aktt_tweet_time">#</a></li>
<li>设置了#tw2other程序同步twitter到新浪围脖，发一条tweet测试一下 :) <a href="http://twitter.com/Easwy/statuses/23566704982360065" class="aktt_tweet_time">#</a></li>
</ul>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/easwy-twitter-2011-01-23/" target="_top">http://easwy.com/blog/archives/easwy-twitter-2011-01-23/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/' rel='bookmark' title='Easwy的Twitter微博(2011-01-02)'>Easwy的Twitter微博(2011-01-02)</a></li>
<li><a href='http://easwy.com/blog/archives/add_post_copyright_url/' rel='bookmark' title='在文章末尾添加版本声明和文章的链接'>在文章末尾添加版本声明和文章的链接</a></li>
<li><a href='http://easwy.com/blog/archives/easwy-twitter-2010-09-05/' rel='bookmark' title='Easwy的Twitter微博(2010-09-05)'>Easwy的Twitter微博(2010-09-05)</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/easwy-twitter-2011-01-23/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Easwy的Twitter微博(2011-01-02)</title>
		<link>http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/</link>
		<comments>http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 01:46:31 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[网络微博]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1117</guid>
		<description><![CDATA[[生活] 魅9卖的真是火爆，早上收到魅族专卖店的信息，说第一批货已经售謦 :-( 好消息是如果第一批客户在1月5日后取货的话，可以加送一块原装电池 ^_^ # [生活] 收到魅族专卖站发来的短信，说魅9于一月一日正式发布&#8230;..希望魅9能不负众望！ # [Linux] 这篇文章介绍了Debian/Ubuntu中update-alternatives的用法：http://hi.baidu.com/yulanding/blog/item/71ccaa3d67fc71ce7d1e71d8.html # [网络]太好了，xMarks不会关闭服务了，之前还在考虑到底换用哪种书签同步服务呢 # [生活] 周末看了“让子弹飞”，找到一篇好影评 http://movie.douban.com/review/4534425/ # 刚才看到一个图形化的编程语言：KODU，专门用于游戏开发，似乎是微软开发的 http://fuse.microsoft.com/project/kodu.aspx 现在编程语言的发展正在逐渐降低开发门槛、提高编程效率 # 原创文章，请阅读页脚的许可方式，转载请注明：转载自易水博客 [ http://easwy.com/blog/ ] 本文链接地址: http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/ 文章的脚注信息由WordPress的wp-posturl插件自动生成 相关文章 Easwy的Twitter微博(2011-01-23) Easwy的Twitter微博(2010-03-04) Easwy的Twitter微博(2010-03-21)<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/easwy-twitter-2011-01-23/' rel='bookmark' title='Easwy的Twitter微博(2011-01-23)'>Easwy的Twitter微博(2011-01-23)</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-03-04/' rel='bookmark' title='Easwy的Twitter微博(2010-03-04)'>Easwy的Twitter微博(2010-03-04)</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-03-21/' rel='bookmark' title='Easwy的Twitter微博(2010-03-21)'>Easwy的Twitter微博(2010-03-21)</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>[生活] 魅9卖的真是火爆，早上收到魅族专卖店的信息，说第一批货已经售謦 :-( 好消息是如果第一批客户在1月5日后取货的话，可以加送一块原装电池 ^_^ <a href="http://twitter.com/Easwy/statuses/21392448408260608" class="aktt_tweet_time">#</a></li>
<li>[生活] 收到魅族专卖站发来的短信，说魅9于一月一日正式发布&#8230;..希望魅9能不负众望！ <a href="http://twitter.com/Easwy/statuses/20418369249349632" class="aktt_tweet_time">#</a></li>
<li>[Linux] 这篇文章介绍了Debian/Ubuntu中update-alternatives的用法：http://hi.baidu.com/yulanding/blog/item/71ccaa3d67fc71ce7d1e71d8.html <a href="http://twitter.com/Easwy/statuses/20286232403648512" class="aktt_tweet_time">#</a></li>
<li>[网络]太好了，xMarks不会关闭服务了，之前还在考虑到底换用哪种书签同步服务呢 <a href="http://twitter.com/Easwy/statuses/16682234039771136" class="aktt_tweet_time">#</a></li>
<li>[生活] 周末看了“让子弹飞”，找到一篇好影评 <a href="http://movie.douban.com/review/4534425/" rel="nofollow">http://movie.douban.com/review/4534425/</a> <a href="http://twitter.com/Easwy/statuses/16678881410949120" class="aktt_tweet_time">#</a></li>
<li>刚才看到一个图形化的编程语言：KODU，专门用于游戏开发，似乎是微软开发的 <a href="http://fuse.microsoft.com/project/kodu.aspx" rel="nofollow">http://fuse.microsoft.com/project/kodu.aspx</a> 现在编程语言的发展正在逐渐降低开发门槛、提高编程效率 <a href="http://twitter.com/Easwy/statuses/10151750619111424" class="aktt_tweet_time">#</a></li>
</ul>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/" target="_top">http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/easwy-twitter-2011-01-23/' rel='bookmark' title='Easwy的Twitter微博(2011-01-23)'>Easwy的Twitter微博(2011-01-23)</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-03-04/' rel='bookmark' title='Easwy的Twitter微博(2010-03-04)'>Easwy的Twitter微博(2010-03-04)</a></li>
<li><a href='http://easwy.com/blog/archives/easwy%e7%9a%84twitter%e5%be%ae%e5%8d%9a2010-03-21/' rel='bookmark' title='Easwy的Twitter微博(2010-03-21)'>Easwy的Twitter微博(2010-03-21)</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/easwy-twitter-tweets-2011-01-02/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在Ubuntu上编译Android Gingerbread 2.3.1</title>
		<link>http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/</link>
		<comments>http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/#comments</comments>
		<pubDate>Sat, 01 Jan 2011 16:57:46 +0000</pubDate>
		<dc:creator>Easwy</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[android]]></category>

		<guid isPermaLink="false">http://easwy.com/blog/?p=1115</guid>
		<description><![CDATA[前几天下载了Android 2.3.1的源代码并在Ubuntu 10.04(32位)上编译通过。这篇文章简要记录了下载、编译的过程。

关于搭建Android开发环境的文章已经有很多，本文只简要介绍一下，做为备忘。

[ 编译前的准备 ]

这一步安装获取源代码以及编译所需要的软件，使用如下命令：

 $ sudo aptitude install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev 

另外，参考别人编译Android 2.3的经验，安装了下列软件包：

$ sudo apt-get install lib64z1-dev libc6-dev-amd64 g++-multilib lib64stdc++6 

虽然Android官方网站上讲不支持Java 6，不过我使用Java 6也可以编译通过，所以在这里Easwy安装的是Java 6... <a href="http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/using-scala-sbt-for-android-development/' rel='bookmark' title='使用Scala + sbt + sbt-android-plugin开发Android应用程序'>使用Scala + sbt + sbt-android-plugin开发Android应用程序</a></li>
<li><a href='http://easwy.com/blog/archives/samsungs-first-android-handset-revealed/' rel='bookmark' title='三星发布首款Android手机'>三星发布首款Android手机</a></li>
<li><a href='http://easwy.com/blog/archives/connect-meizu-m9-to-linux/' rel='bookmark' title='在Linux上使用adb访问魅族M9手机'>在Linux上使用adb访问魅族M9手机</a></li>
</div><div class="fixed"></div>]]></description>
			<content:encoded><![CDATA[<p>
    前几天下载了Android 2.3.1的源代码并在Ubuntu 10.04(32位)上编译通过。这篇文章简要记录了下载、编译的过程。
  </p>
<p>
    关于搭建Android开发环境的文章已经有很多，本文只简要介绍一下，做为备忘。
  </p>
<p><span class="bold"><strong>[ 编译前的准备 ]</strong></span></p>
<p>
    这一步安装获取源代码以及编译所需要的软件，使用如下命令：
  </p>
<pre class="programlisting">
 $ sudo aptitude install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev </pre>
<p>
    另外，参考别人编译Android 2.3的经验，安装了下列软件包：
  </p>
<pre class="programlisting">
$ sudo apt-get install lib64z1-dev libc6-dev-amd64 g++-multilib lib64stdc++6 </pre>
<p>
    虽然Android官方网站上讲不支持Java 6，不过我使用Java 6也可以编译通过，所以在这里<a class="ulink" href="http://easwy.com/" target="_top">Easwy</a>安装的是Java 6。首先去掉<span class="emphasis"><em>/etc/apt/sources.list</em></span>中这两行的注释，使能Java 6源：
  </p>
<pre class="programlisting">
deb http://archive.canonical.com/ubuntu lucid partner
deb-src http://archive.canonical.com/ubuntu lucid partner </pre>
<p>
    然后安装Java 6 JDK：
  </p>
<pre class="programlisting">
$ sudo aptitude install sun-java6-jdk </pre>
<p>
    接下来下载<span class="command"><strong>repo</strong></span>工具，这是Google提供的一个Python脚本，方便管理多个Git版本库：
  </p>
<pre class="programlisting">
$ cd ~
$ mkdir bin
$ curl http://android.git.kernel.org/repo &gt;~/bin/repo
$ chmod a+x ~/bin/repo </pre>
<p>
    记得把<span class="command"><strong>repo</strong></span>加到你的路径中，方便以后使用。编辑<span class="emphasis"><em>~/.bashrc</em></span>，加入下面一行：
  </p>
<pre class="programlisting">
PATH=$PATH:~/bin
export PATH </pre>
<p>
    然后用命令<span class="command"><strong>. ~/.bashrc</strong></span>，以后就可以直接使用<span class="command"><strong>repo</strong></span>命令了。
  </p>
<p>
    接下来获取<a class="ulink" href="http://easwy.com/blog/archives/tag/android/" target="_top">Android</a> 2.3.1的源代码：
  </p>
<pre class="programlisting">
$ mkdir mydroid
$ cd mydroid
$ repo init -u git://android.git.kernel.org/platform/manifest.git -b android-2.3.1_r1
$ repo sync </pre>
<p> <span class="bold"><strong>[ 编译Android ]</strong></span></p>
<p>
    接下来开始编译：
  </p>
<pre class="programlisting">
$ make -j`grep '^processor' /proc/cpuinfo | wc -l` </pre>
<p>
    上面的命令中，<span class="emphasis"><em>-j</em></span>参数告诉make启动多个并行任务进行编译，在支持多核的CPU上能加快编译速度。如果你知道你CPU是几核的，可以直接把这部分替换成<span class="emphasis"><em>-j2</em></span>(双核)。
  </p>
<p>
    我在编译的过程中遇到下面的错误：
  </p>
<div class="blockquote">
<blockquote class="blockquote">
<p>************************************************************</p>
<p>You are attempting to build on a 32-bit system.</p>
<p>Only 64-bit build environments are supported beyond froyo/2.2.</p>
<p>************************************************************ </p>
</blockquote>
</div>
<p>
    这是因为在Makefile中检测了CPU的字长。我直接把<span class="emphasis"><em>build/core/main.mk</em></span>中下面的话注释掉：
  </p>
<pre class="programlisting">
#ifneq (64,$(findstring 64,$(build_arch)))
#$(warning ************************************************************)
#$(warning You are attempting to build on a 32-bit system.)
#$(warning Only 64-bit build environments are supported beyond froyo/2.2.)
#$(warning ************************************************************)
#$(error stop)
#endif </pre>
<p>
    接下来又遇到下面的错误：
  </p>
<div class="blockquote">
<blockquote class="blockquote">
<p>Docs droiddoc: out/target/common/docs/api-stubs</p>
<p>Could not load &#8216;clearsilver-jni&#8217;</p>
<p>java.library.path = out/host/linux-x86/lib</p>
<p>make: *** [out/target/common/docs/api-stubs-timestamp] Error 45</p>
<p>make: *** Waiting for unfinished jobs&#8230;.</p>
<p>Could not load &#8216;clearsilver-jni&#8217;</p>
<p>java.library.path = out/host/linux-x86/lib</p>
<p>make: *** [out/target/common/docs/doc-comment-check-timestamp] Error 45 </p>
</blockquote>
</div>
<p>
    这是由于clearsilver在编译时如果检测到使用Java JDK 6，就使用64位编译。要避开此错误，需要修改下面四个文件：
  </p>
<div class="itemizedlist">
<ul class="itemizedlist" type="disc">
<li class="listitem">
    external/clearsilver/cgi/Android.mk
    </li>
<li class="listitem">
    external/clearsilver/java-jni/Android.mk
    </li>
<li class="listitem">
    external/clearsilver/util/Android.mk
    </li>
<li class="listitem">
    external/clearsilver/cs/Android.mk
    </li>
</ul>
</div>
<p>    把这四个Makefile中的下列语句注掉即可：</p>
<pre class="programlisting">
# This forces a 64-bit build for Java6
# Comment by Easwy
# LOCAL_CFLAGS += -m64
# LOCAL_LDFLAGS += -m64 </pre>
<p>
    然后在<span class="emphasis"><em>external/clearsilver</em></span>目录中执行一下<span class="command"><strong>make clean</strong></span>，然后回到项目根目录，继续make即可。
  </p>
<p>
    当编译完成时，生成的image文件放在<span class="emphasis"><em>out/target/product/generic</em></span>目录中。
  </p>
<p>
    更多内容，请阅读<a class="ulink" href="http://easwy.com/blog/" target="_top">易水博客</a>上的其它文章。
  </p>
<p><span class="bold"><strong>[ 参考文档 ]</strong></span></p>
<div class="itemizedlist">
<ul class="itemizedlist" type="disc">
<li class="listitem">
      <a class="ulink" href="http://blog.csdn.net/tuhuolong/archive/2010/12/16/6079661.aspx" target="_top">Android 2.3编译</a>
    </li>
<li class="listitem">
      <a class="ulink" href="http://li53262182.blog.163.com/blog/static/128393387201092010418620/" target="_top">Could not load &#8216;clearsilver-jni&#8217; java</a>
    </li>
</ul>
</div>
<div class="posturl">
<p><span class="bold"><strong>原创文章，请阅读页脚的<a href="#license">许可方式</a>，转载请注明：</strong></span>转载自<a class="link" href="http://easwy.com/blog/" target="_top">易水博客</a> [ <a class="link" href="http://easwy.com/blog/" target="_top">http://easwy.com/blog/</a> ]</p>
<p><span class="bold"><strong>本文链接地址:</strong></span> <a class="link" href="http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/" target="_top">http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/</a></p>
</div>
<p style="margin-top: 0; margin-bottom: 15px; color: #888888; font-size: 80%; font-style: italic">文章的脚注信息由WordPress的<a href="http://easwy.com/blog/wordpress/wp-posturl/" style="color: #8888FF; text-decoration: underline;">wp-posturl插件</a>自动生成</p>
<div class="fixed"></div><div id="related_posts"><h3  class="related_post_title">相关文章</h3><ul class="related_post">
<li><a href='http://easwy.com/blog/archives/using-scala-sbt-for-android-development/' rel='bookmark' title='使用Scala + sbt + sbt-android-plugin开发Android应用程序'>使用Scala + sbt + sbt-android-plugin开发Android应用程序</a></li>
<li><a href='http://easwy.com/blog/archives/samsungs-first-android-handset-revealed/' rel='bookmark' title='三星发布首款Android手机'>三星发布首款Android手机</a></li>
<li><a href='http://easwy.com/blog/archives/connect-meizu-m9-to-linux/' rel='bookmark' title='在Linux上使用adb访问魅族M9手机'>在Linux上使用adb访问魅族M9手机</a></li>
</div><div class="fixed"></div>]]></content:encoded>
			<wfw:commentRss>http://easwy.com/blog/archives/compile-android-gingerbread-2-3-1/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

