<?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>Soul Of Free Loop &#187; LapDock</title>
	<atom:link href="https://zohead.com/archives/tag/lapdock/feed" rel="self" type="application/rss+xml" />
	<link>https://zohead.com</link>
	<description>Uranus Zhou&#039;s Blog</description>
	<lastBuildDate>Sat, 19 Jul 2025 15:42:46 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.8</generator>
	<item>
		<title>使用DisplayLink显卡组装Android Superbook</title>
		<link>https://zohead.com/archives/displaylink_superbook/</link>
		<comments>https://zohead.com/archives/displaylink_superbook/#comments</comments>
		<pubDate>Tue, 26 Jul 2016 16:31:39 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[Andromium]]></category>
		<category><![CDATA[DisplayLink]]></category>
		<category><![CDATA[Kickstarter]]></category>
		<category><![CDATA[LapDock]]></category>
		<category><![CDATA[Motorola]]></category>
		<category><![CDATA[OTG]]></category>
		<category><![CDATA[Superbook]]></category>
		<category><![CDATA[USB]]></category>
		<category><![CDATA[Zenfone 2]]></category>
		<category><![CDATA[显卡]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1257</guid>
		<description><![CDATA[关于 Superbook 前几天在 Kickstarter 上看到一个挺有意思的 Superbook 众筹项目，其主要目的是以 99 美元的价格实现 Android 手机插上数据线连接 Superbook 就能变身笔记本，该项目由 Andromium 团队推出，截至我写此文章的时候该项目已经筹集到 80 多万美元，感兴趣的朋友可以看看其 Kickstarter 项目主页： http://getsuperbook.com/ 初看该项目介绍，发现还是比较类似 Motorola 前几年推出的 LapDock 笔记本扩展坞装备的，只是 LapDock 是专门给 Motorola ME865 等手机设计 [&#8230;]]]></description>
				<content:encoded><![CDATA[<h2 id="关于-superbook">关于 Superbook</h2>
<p>前几天在 Kickstarter 上看到一个挺有意思的 Superbook 众筹项目，其主要目的是以 99 美元的价格实现 Android 手机插上数据线连接 Superbook 就能变身笔记本，该项目由 Andromium 团队推出，截至我写此文章的时候该项目已经筹集到 80 多万美元，感兴趣的朋友可以看看其 Kickstarter 项目主页：</p>
<p><a href="http://getsuperbook.com/">http://getsuperbook.com/</a></p>
<p>初看该项目介绍，发现还是比较类似 Motorola 前几年推出的 LapDock 笔记本扩展坞装备的，只是 LapDock 是专门给 Motorola ME865 等手机设计的，其它设备如果想要使用 LapDock 必须支持 USB Host/OTG 以及 HDMI 输出功能而且需要准备各种转换线。</p>
<p>Superbook 主要特性包括：</p>
<ul>
<li>可支持所有包含 USB OTG 功能的 Android 手机；</li>
<li>11.6 寸 1366x768 的 IPS 屏幕；</li>
<li>10 个小时的续航支持，连接上手机后可以为手机充电；</li>
<li>也可以支持树莓派、MiniPC 等类型的设备；</li>
<li>在自带了键盘和多点触控触摸板的基础上也有扩展的 USB 接口方便用户使用；</li>
<li>与手机共享数据，这点和 LapDock、华硕 PadFone 底座类似。</li>
</ul>
<p>Android 手机连接 Superbook 之后，Superbook 上运行的是 <strong>Andromium OS</strong> 界面，<strong>Andromium OS</strong> 也是支持多窗口运行 Android App 的，其界面和 <a href="http://www.jide.com/remixos-for-pc">Remix OS</a> 还是有点相似的。</p>
<p>在稍微看了 Superbook 的技术细节之后，我发现其不需要手机支持 HDMI 或者 MHL 等视频输出功能，而是基于 DisplayLink 提供的 Android 显示输出功能实现的，具体可以参考 <a href="http://www.displaylink.com/downloads/android">DisplayLink for Android</a> 的介绍页面。</p>
<p>这样看起来 Superbook 和 LapDock 的最大区别就是 Superbook 在笔记本扩展坞自身的 USB Hub 上额外集成了一块 DisplayLink 的 USB 显卡以支持 Android 手机的 USB 显卡视频输出功能。这样不仅可以兼容更多种类的 Android 手机，而且只需要一根 USB 数据线也能让用户使用起来更简单。</p>
<p>刚好我手头上还有一块之前捣鼓 Ubuntu for Android 时购买的 DisplayLink USB 2.0 接口的显卡，应该就可以配合闲置的 Motorola LapDock 以及支持 USB OTG 功能的华硕 Zenfone2 手机（刚好不支持 HDMI 或 MHL 视频输出功能）来自己组装一个简陋版本的 Superbook 咯。</p>
<h2 id="手机-lapdock-组装-superbook">手机 + LapDock 组装 Superbook</h2>
<p>如果读者也有兴趣自己组装一台 Superbook 试试看，首先需要确认你的手机支持 USB OTG 功能，还需要一块 DisplayLink 的 USB 显卡，如果能外接 USB 或者蓝牙的键盘或者鼠标的话操作也会更方便，另外如果显示设备不是 LapDock 的话那最好还需要一个带电源的 USB Hub 给显卡供电（LapDock 直接带键盘鼠标并支持供电就不用考虑这些了）。</p>
<p>首先手机上需要安装 <a href="https://play.google.com/store/apps/details?id=com.displaylink.presenter">DisplayLink Presenter</a> App，可以通过 Google Play 商店直接安装，安装之后无需做任何设置，只要手机接上了 DisplayLink 显卡或者扩展坞该 App 就会自动开始工作，该 App 界面中的说明：</p>
<div style="width: 370px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737370806/displaylink_presenter.jpg" width="360" height="640" alt="DisplayLink Presenter" /><p class="wp-caption-text">DisplayLink Presenter</p></div>
<p>接着就可以把手机和 USB 显卡以及 LapDock 连接起来了，还请忽略图中各种凌乱的转接头和连接线 ^_^：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442947/superbook_lapdock.jpg" width="640" height="360" alt="LapDock 连接" /><p class="wp-caption-text">LapDock 连接</p></div>
<p>Zenfone2 手机直接连 LapDock 的 Micro-USB 接口，DisplayLink USB 显卡插在 LapDock 的扩展 USB 接口上（见上图圈出的地方），并通过 HDMI 线与 LapDock 的 Micro-HDMI 接口相连，这样打开 LapDock 盖子的时候，LapDock 就能同时给手机和 USB 显卡供电。</p>
<p>此时我们可以先确认下 USB 显卡设备是否已经找到，在终端中运行 <code>busybox lsusb</code> 命令（Android 需要 busybox 支持）可以看到手机中所有的 USB 设备，下面的截图是插上 USB 显卡之前和之后的输出信息对比：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442947/superbook_usb_dev.jpg" width="640" height="314" alt="DisplayLink USB 显卡设备" /><p class="wp-caption-text">DisplayLink USB 显卡设备</p></div>
<p>上面命令输出中设备 ID 为 <code>17e9:03c1</code> 的 USB 设备就是 DisplayLink USB 显卡了。</p>
<p>一切正常的话，这时应该就能在 LapDock 屏幕上看到手机屏幕的镜像了，通过 LapDock 的键盘和鼠标还能更方便的进行输入操作，应该可以初步达到 Superbook 的效果咯。这个是我在 LapDock 上运行 Android Chrome 浏览器的效果，屏幕大了看起来更方便：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442950/superbook_web.jpg" width="640" height="360" alt="LapDock Superbook 浏览网页" /><p class="wp-caption-text">LapDock Superbook 浏览网页</p></div>
<p>还可以用来玩手机游戏，不过游戏最好是支持横屏的，能支持鼠标（触摸板）和键盘控制的话效果更好。当然如果你玩的游戏能支持 USB 或者蓝牙手柄，那玩起来就更加 happy 一些咯：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442946/superbook_game.jpg" width="640" height="378" alt="LapDock Superbook 玩游戏" /><p class="wp-caption-text">LapDock Superbook 玩游戏</p></div>
<p>当然到这一步还只是通过 DisplayLink 显卡实现了简单的手机屏幕镜像的功能，如果你需要实现和未来 Superbook 类似的体验，可以安装 Google Play 商店中的 <strong>Andromium OS</strong> App 了，链接如下：</p>
<p><a href="https://play.google.com/store/apps/details?id=com.andromium.os">https://play.google.com/store/apps/details?id=com.andromium.os</a></p>
<p><strong>Andromium OS</strong> App 说明中虽然说的是目前支持手机连接兼容的 Dock 扩展坞，不过像我这样直接使用 DisplayLink USB 显卡也是可以的哦。</p>
<p>具体连接和操作步骤可以参考 Andromium 论坛中的<a href="http://andromiumos.freeforums.net/thread/5/setting-andromium-samsung-phone-dock">介绍帖子</a>，其实和上面的连接方法是基本一样的，只是将 DisplayLink Presenter App 换成了 Andromium OS，而且使用方式上还是有一些需要注意的限制。</p>
<h2 id="后记">后记</h2>
<p>虽然本文只是写了下最简单的使用 LapDock 搭配 DisplayLink 显卡组装一个简陋版 Superbook 的方法，但从 Superbook 的 Kickstarter 项目在 38 个小时内筹集到 50 万美元的速度来看，Superbook 还算是比较引人关注的。</p>
<p>官方也说明了筹款额达到 100 万美元之后会考虑增加 1080p 屏幕的版本（额外增加 30 美元），如果 129 美元的 1080p 版本的 Superbook 能够正常生产出来而且比较稳定的话，我应该会考虑入手的，至少使用上还是比 LapDock 这种要方便很多的。另外毕竟现在 Android 手机的硬件配置已经比较强悍了，这样我一直比较期望的 Linux on Android 效果在稍做修改之后应该也能在 Superbook 上发挥出来了。</p>
<p>总之还是希望 Andromium 的 Superbook 项目能够顺利完成的哦，最后祝大家在这个火热的季节还能玩的开心。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/displaylink_superbook/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>在XOLO X900上实现Ubuntu for Android</title>
		<link>https://zohead.com/archives/ubuntu-for-xolo-x900/</link>
		<comments>https://zohead.com/archives/ubuntu-for-xolo-x900/#comments</comments>
		<pubDate>Sun, 06 Jan 2013 19:19:49 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[12.04]]></category>
		<category><![CDATA[Atom]]></category>
		<category><![CDATA[DisplayLink]]></category>
		<category><![CDATA[HDMI]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[LapDock]]></category>
		<category><![CDATA[Lava]]></category>
		<category><![CDATA[Motorola]]></category>
		<category><![CDATA[OTG]]></category>
		<category><![CDATA[Ubuntu for Android]]></category>
		<category><![CDATA[udlfb]]></category>
		<category><![CDATA[USB]]></category>
		<category><![CDATA[X11]]></category>
		<category><![CDATA[x86]]></category>
		<category><![CDATA[X900]]></category>
		<category><![CDATA[XOLO]]></category>
		<category><![CDATA[Xorg]]></category>
		<category><![CDATA[显卡]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=378</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/ubuntu-for-xolo-x900/ 由于 Lava XOLO X900 使用的 Intel Atom Z2460 这一 x86 的 CPU，我们就可以做一些改动，让其实现初步的 Ubuntu for Android 效果，而且运行的是 x86 版本的 Ubuntu，相对于 ARM 版本（不能运行私有软件，没有源代码的话啥都干不了）来说实用性要好很多的。 先看看实际的效果图： 现在我在这个 Android 手机里的 Ubuntu 上已经开始正常运行 Skype、Ubuntu One、sopcast  [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/ubuntu-for-xolo-x900/" target="_blank">https://zohead.com/archives/ubuntu-for-xolo-x900/</a></p>
<p>由于 Lava XOLO X900 使用的 Intel Atom Z2460 这一 x86 的 CPU，我们就可以做一些改动，让其实现初步的 Ubuntu for Android 效果，而且运行的是 x86 版本的 Ubuntu，相对于 ARM 版本（不能运行私有软件，没有源代码的话啥都干不了）来说实用性要好很多的。</p>
<p>先看看实际的效果图：</p>
<p><a href="http://zohead.com/wp-content/uploads/ubuntu-android-x900.jpg" target="_blank"><img class="alignnone" title="Ubuntu for Android on XOLO X900" src="http://zohead.com/wp-content/uploads/ubuntu-android-x900.jpg" alt="Ubuntu for Android on XOLO X900" width="690" height="523" /></a></p>
<p>现在我在这个 Android 手机里的 Ubuntu 上已经开始正常运行 Skype、Ubuntu One、sopcast 等应用，而且 Ubuntu 和 Android 系统是共存同时运行的，Ubuntu 是运行在外部屏幕上的，对 Android 完全没有影响，不需要 VNC 登录之类的。</p>
<p>Canonical 公司提出的 Ubuntu for Android 请参考这里：</p>
<p><a href="http://www.ubuntu.com/devices/android" target="_blank">http://www.ubuntu.com/devices/android</a></p>
<p>这里提到的 Canonical 的 Ubuntu for Android 的要求有：</p>
<ul>
<li>双核手机，内存最少 512MB；</li>
<li>支持 secondary frame buffer；</li>
<li>支持 USB OTG</li>
</ul>
<p>对于 XOLO X900 来说，第二点要求 secondary frame buffer 暂时无法满足，因为官方的 kernel 只注册了 <strong>/dev/graphics/fb0</strong> 一个 frame buffer 设备。但由于支持 USB OTG，我们这里暂时用支持 Linux frame buffer 的外置 USB 显卡来实现。</p>
<p>需要的设备及配件：</p>
<ul>
<li>Motorola LapDock 100（做显示器及键盘鼠标输入，同时接 USB 外置显卡，你完全可以用自己的显示器）</li>
<li>DisplayLink USB 显卡</li>
<li>USB OTG 线</li>
<li>HDMI 线</li>
</ul>
<p><strong><span style="color: #0000ff;">1、准备 x86 Ubuntu 环境：</span></strong></p>
<p>由于 XOLO X900 只有 16GB 的 ROM 空间，为了速度和扩展考虑，最好可以将 Ubuntu 安装在隐藏未启用的 microSD 插槽上，最好使用 Class 10 的 microSD，这样不会对 Ubuntu 的性能造成影响。</p>
<p>你可以参考这个视频（只有 Youtube 哈）查看如果启用隐藏的 microSD 插槽：</p>
<p><a href="http://www.youtube.com/watch?v=6-FkK7Htohs" target="_blank">http://www.youtube.com/watch?v=6-FkK7Htohs</a></p>
<p>下面是找一个合适的 Ubuntu 系统，如果你有时间的话，完全可以用 VMware 安装一个虚拟机到 SD 卡上。如果你像我一样不想浪费时间安装，可以到网上下载现成的 VMware vmdk 映像并直接拷贝到 SD 卡上。</p>
<p>我选择的是下面这个 Lubuntu 12.04 系统，因为使用 LXDE 桌面，速度比较快，这个网站也有完整的 Unity 桌面环境的 Ubuntu 12.04 系统哦：</p>
<p><a href="http://www.trendsigma.net/vmware/lubuntu1204.html" target="_blank">http://www.trendsigma.net/vmware/lubuntu1204.html</a></p>
<p>你可能需要另一个 Linux 虚拟机来将 Lubuntu 映像里的所有文件拷贝到 SD 卡里（最好能对 SD 卡进行分区，我是建立了一个 ext4 的分区）。</p>
<p><strong><span style="color: #0000ff;">2、准备需要的 DisplayLink USB 显卡驱动：</span></strong></p>
<p>由于 XOLO X900 官方 kernel 对 frame buffer 支持并不完整（缺少 defio 等支持），官方 3.0.8 kernel 源代码里的 DisplayLink USB 显卡驱动 udlfb 无法正常编译。</p>
<p>我基于下面的 udlfb 项目的 0.4 版本修改了一个新的可直接用于 XOLO X900 官方 kernel 的 udlfb 驱动（默认代码加载之后无法正常显示图像）：</p>
<p><a href="http://git.plugable.com/gitphp/index.php?p=udlfb" target="_blank">http://git.plugable.com/gitphp/index.php?p=udlfb</a></p>
<p>我修改过的 udlfb 0.4 驱动的下载地址：</p>
<p><a href="http://miseal.googlecode.com/files/udlfb-v0.4.tar.bz2" target="_blank">http://miseal.googlecode.com/files/udlfb-v0.4.tar.bz2</a></p>
<p>相对默认 0.4 版本的主要改进为：</p>
<ul>
<li>解决在 Linux 3.0.8 中无法正常编译的问题；</li>
<li>解决 kzalloc 分配内存失败的问题，以 vmalloc 替代；</li>
<li>增加卸载驱动时的释放内存处理；</li>
<li>自动根据 EDID 判断显示器分辨率，默认使用 EDID 得到的分辨率；</li>
<li>如果 EDID 无法得到合适的分辨率，使用默认 1280x1024 分辨率；</li>
<li>增加模块参数，加载模块时可以指定初始分辨率</li>
</ul>
<p>编译方法请参考之前写的编译 XOLO X900 自定义 kernel 的文章：</p>
<p><a href="https://zohead.com/archives/xolo-x900-kernel/" target="_blank">https://zohead.com/archives/xolo-x900-kernel/</a></p>
<p>如果你想直接用我编译好的，请访问此链接下载：</p>
<p><a href="http://miseal.googlecode.com/files/x900-kernel-config-modules.7z" target="_blank">http://miseal.googlecode.com/files/x900-kernel-config-modules.7z</a></p>
<p>编译好的 <strong>udlfb.ko</strong> 在解压缩出来的 <strong>modules</strong> 目录中，建议将 <strong>modules</strong> 目录拷贝到 <strong>/system/lib</strong> 目录中。</p>
<p><strong><span style="color: #0000ff;">3、测试 udlfb 驱动是否可用：</span></strong></p>
<p>通过外置带电源的 USB HUB 接上 DisplayLink USB 显卡（Motorola Lapdock 就是一个带电源的 USB HUB 哈），并将显卡接到外置显示器上，root 过之后，在 shell 中运行 <strong>su</strong> 然后运行：</p>
<p><strong>insmod /system/lib/modules/udlfb.ko</strong></p>
<p>如果一切正常的话，驱动将自动判断你的显示器分辨率，并在显示器中显示绿屏。</p>
<p>然后运行下面的命令检查 frame buffer 设备是否正常，一般应有正常的设备节点信息输出：</p>
<p><strong>ls -l /dev/graphics/fb1</strong></p>
<p>如果你的显示器不支持 EDID 或者默认的 1280x1024 分辨率不支持，也可以加载驱动时手工指定分辨率，例如：</p>
<p><strong>insmod /system/lib/modules/udlfb.ko init_xres=1024 init_yres=768</strong></p>
<p>上面的命令即将初始分辨率设置为 1024x768。</p>
<p><strong><span style="color: #0000ff;">4、屏蔽 Android 本身对 USB 键盘鼠标的支持：</span></strong></p>
<p>由于 XOLO X900 默认支持 USB OTG，通过 OTG 接上 USB 键盘鼠标之后，可以直接对 Android 进行操作，而且任何对键盘和鼠标的操作都会解锁手机，这对于我们运行 Ubuntu for Android 是毫无益处的，而且会导致重复的 input event 发到 Android 界面上。因此我们需要屏蔽 Android 本身对 USB 输入设备的支持。</p>
<p>首先接上 USB 键盘和鼠标（通过 USB HUB），并确定是哪个 input 设备，同样在 root 中 su 运行：</p>
<p><strong>ls /dev/input/event*</strong></p>
<p>你会看到很多个 event 设备，一一用下面的命令（把 X 换为具体的设备名）确定到底哪个是你所插上的 USB 键盘和鼠标，cat 之后在键盘上敲键或者移动鼠标，正确的设备将会有输出：</p>
<p><strong>cat /dev/input/eventX</strong></p>
<p>假设确定好鼠标和键盘分别为：<strong>/dev/input/event10</strong> 和 <strong>/dev/input/event11</strong>。</p>
<p>然后运行 <strong>dmesg</strong> 确定 USB 键盘和鼠标的设备名，你可以看到类似这样的输出：</p>
<pre class="brush: bash; title: ; notranslate">
usb 1-1: new high speed USB device number 2 using penwell_otg
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 7 ports detected
usb 1-1.1: new full speed USB device number 3 using penwell_otg
input: Motorola Mobility Motorola HD Dock as /devices/pci0000:00/0000:00:02.3/usb1/1-1/1-1.1/1-1.1:1.0/input/input11
generic-usb 0003:22B8:0938.0003: input,hidraw0: USB HID v1.01 Keyboard [Motorola Mobility Motorola HD Dock] on usb-0000:00:02.3-1.1/input0
usb 1-1.3: new low speed USB device number 4 using penwell_otg
input: BTC USB Cordless Mouse as /devices/pci0000:00/0000:00:02.3/usb1/1-1/1-1.3/1-1.3:1.0/input/input12
generic-usb 0003:1241:0003.0004: input,hidraw1: USB HID v1.10 Keyboard [BTC USB Cordless Mouse] on usb-0000:00:02.3-1.3/input0
input: BTC USB Cordless Mouse as /devices/pci0000:00/0000:00:02.3/usb1/1-1/1-1.3/1-1.3:1.1/input/input13
generic-usb 0003:1241:0003.0005: input,hidraw2: USB HID v1.10 Mouse [BTC USB Cordless Mouse] on usb-0000:00:02.3-1.3/input1
usb 1-1.6: new high speed USB device number 5 using penwell_otg
</pre>
<p>上面的 <strong>Motorola Mobility Motorola HD Dock</strong> 和 <strong>BTC USB Cordless Mouse</strong> 即为 USB 键盘和鼠标设备的设备名，记下这些。</p>
<p>编译 <strong>/system/etc/excluded-input-devices.xml</strong> 配置文件，将上面的 USB 键盘和鼠标设备名加入进来，然后重启手机，在 USB 输入设备上的操作就不会影响 Android 系统。</p>
<p>例如我的配置文件内容如下：</p>
<pre class="brush: xml; title: ; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;devices&gt;
&lt;device name=&quot;Unipoint HID&quot;/&gt;
&lt;device name=&quot;RMI4 Unipoint&quot;/&gt;
&lt;device name=&quot;Motorola Mobility Motorola HD Dock&quot;/&gt;
&lt;device name=&quot;BTC USB Cordless Mouse&quot;/&gt;
&lt;/devices&gt;
</pre>
<p><strong><span style="color: #0000ff;">5、在 Android 中切换到 Ubuntu 环境：</span></strong></p>
<p>首先 su 运行 shell 创建一个目录作为 Ubuntu 分区的挂载点（这里假设为 /system/sd）：</p>
<p><strong>mount -o remount,rw /dev/block/mmcblk0p2 /system</strong><br />
<strong> busybox mkdir -m 777 /system/sd</strong><br />
<strong> mount -o remount,ro /dev/block/mmcblk0p2 /system</strong></p>
<p>你可以使用我写好的这个切换到 Ubuntu 的脚本 <strong>startubuntu</strong>（我这里是挂载了 SD 卡第一个 ext4 分区，请根据需要自行修改）：</p>
<p><a href="http://pastebin.com/raw.php?i=9r21dR7L" target="_blank">http://pastebin.com/raw.php?i=9r21dR7L</a></p>
<p>我在脚本中将 Android 中的 /mnt/sdcard 目录挂载到了 Ubuntu 里的 /sdcard 目录，Android 系统的 /system 目录挂载到了 /android/system 目录，这样可以很方便的在 Ubuntu 中访问 Android 系统中的数据。</p>
<p><strong><span style="color: #0000ff;">6、准备运行 X 的环境：</span></strong></p>
<p>假设你已经切换到 Ubuntu，首先安装 DisplayLink 的 X 驱动：</p>
<p><strong>apt-get install xserver-xorg-video-displaylink</strong></p>
<p>然后安装输入模块：</p>
<p><strong>apt-get install xserver-xorg-input-evdev</strong></p>
<p>安装成功之后，修改 <strong>/etc/X11/xorg.conf</strong> X11 配置文件（Ubuntu 12.04 中没有这个配置文件，需要在 <strong>/usr/share/X11/xorg.conf.d</strong> 目录中自己增加新的配置文件，我的为：<strong>52-displaylink.conf</strong>），内容为下面的链接：</p>
<p><a href="http://pastebin.com/raw.php?i=WjcfFWc2" target="_blank">http://pastebin.com/raw.php?i=WjcfFWc2</a></p>
<p>注意请将其中的 input 设备和分辨率改为自己需要的。</p>
<p><strong><span style="color: #0000ff;">7、运行 X - 最终的 Ubuntu for Android：</span></strong></p>
<p>产生 X 的初始配置文件 <strong>/root/.xinitrc</strong>：</p>
<p><strong>#!/bin/sh</strong><br />
<strong> xrandr -o 0</strong><br />
<strong> startlubuntu</strong></p>
<p>第二行的 <strong>xrandr</strong> 命令是专门为 DisplayLink udlfb 驱动修改的，没有这个的话可能会导致 X 环境中的菜单项不能正确显示。第三行的 <strong>startlubuntu</strong> 你可以替换成你需要的 X 命令（例如：xinit lxsession）。</p>
<p>然后运行 <strong>startx</strong> 就可以启动 X 桌面环境了。</p>
<p>某些情况下如果这样运行 startx 还是有问题，可以在 <strong>startx</strong> 时增加参数：</p>
<p><strong>startx -- :0 vt1</strong></p>
<p>如果这样可以的话表示 X 使用的 VT 不正确，这时你可能需要将 <strong>/etc/X11/xinit/xserverrc</strong> 改为下面这样以强制指定 X 使用的 VT：</p>
<p><strong>#!/bin/sh</strong><br />
<strong> exec /usr/bin/X -nolisten tcp vt1 "$@"</strong></p>
<p>8、总结：</p>
<p>这样实现的 Ubuntu for Android 实际还是有一些不足的：</p>
<ul>
<li>必须要有外置的 USB 显卡太不方便，而且热插拔 USB 显卡会导致 X server 直接挂掉，最好的解决方案是启用 HDMI frame buffer；</li>
<li>暂时没有声音输出，可能可以用 USB 声卡，或者将声音输出至手机（能想象的到的丑陋）；</li>
<li>不支持通过 USB HUB 进行充电，应该是要修改 kernel 才能支持</li>
</ul>
<p>本文的内容均为我根据实际使用所写，没有考虑到通用的情况，其中有任何问题欢迎提出指正哦 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/ubuntu-for-xolo-x900/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
	</channel>
</rss>
