Android 手机上安装并运行 Ubuntu 12.04
- ubuntu.sh脚本的原地址变动了,导致下载不了,现在更新了网盘地址。小技巧:遇到一些下载失效的时候可以试一试p2p下载工具(如 easyMule、迅雷等)试一试,说不定有人分享过~*
————————————————————————————-
Android 是基于Linux内核的开源操作系统,主要用在移动设备上。当然同样是基于Linux内核的操作系统,现在支持的Android的智能手机理论来说都能运行基于Linux的操作系统,比如现在流行的发行版:Ubuntu、Fedora 等等。不仅如此,现在的智能移动设备的硬件也越来越强,更为能运行Linux系统提供了良好的硬件支持。今天DawnDIY就带大家来尝试一下在 Android 手机上安装 Ubuntu 12.04 操作系统。
一.效果预览
先上图,解个馋~这就是安装后的效果。
看到上面的图了吧,这就是安装最新的 Ubuntu 12.04 在 Android 智能机上的效果。同时因为 Unity 原生就是支持触屏设备的,所以操作方面还是可以的,只不过就是屏幕小了点而已~好了,下面我来介绍一下我的安装过程。
二.配置要求
- 设备需要root权限,并且安装了BusyBox
- 最小 1GHz 处理器(推荐)
- Android 系统版本 2.1 或以上
- Android 设备需要自定义的ROM固件
- SD卡至2.5GB (安装大映像的需要3.5GB)
- 设备需要支持WIFI (这个用于其他设备通过WIFI登录)
- 支持 Ext2 文件系统(大部分 Android 设备应该都支持)
我的设备
- 手机型号:Mi-One Plus
- 处理器主频:1.5GHz * 2
- SD卡:16G class 4
- 系统ROM:MIUI_v4_2.8.10
- BusyBox版本:1.20.2
三.需要的软件
- Android Terminal Emulator (终端模拟器) :用于运行 shell 脚本 Google Play
- BusyBox :用于提供 shell 命令的支持 Google Play
- Android VNC Viewer:用于 Android 设备的远程连接工具 Google Play
- Ubuntu 12.04 的映像文件:用于安装 Ubuntu 的映像文件 选择下载: Full、Small、Core
- ubuntu.sh :Ubuntu 的安装脚本 点这里下载(已失效,或用迅雷) 新地址-> 下载
- bootscript.sh:Ubuntu 的启动脚本 点这里下载
- Linux Installer:Linux 安装向导(这个支持个帮助向导,可以不需要) 点这里下载
四.开始安装
首先您的手机需要 chroot,也就是能够获得root权限去操作,相当于越狱。不懂的可以去 Google 一下“Android获取root权限”。root是前提,所以先要把这个做好,不过现在很多ROM都做的很好,比如MIUI就有很好的权限管理。
1.安装文件下载
首先就是下载必要的文件,上面讲到的需要的 Ubuntu 12.04 的映像文件,这个是在 sourceforge.net 上的一个叫 Linux-on-Android 的项目。我上面给的地址中有三个包可供下载:
其实下面就有英文的介绍,我就在这里简单介绍一下:
- full 映像包含了完整的 Ubuntu 系统,其中包括 Unity 桌面,还有很多如GIMP等常用软件,非常齐全。需要 3.5G 以上空间。
- small 映像包含了的基本的 Ubuntu 系统,其中包括 LXDE 桌面,需要 2G 以上空间。
- core 映像包含了基础的 Ubuntu 系统,不过这个没有GUI的,也就是没有桌面只有命令行。
上面下载的就是待安装的 Ubuntu 12.04 的映像文件,然后我们安装还需要安装脚本,也就是上面说的 ubuntu.sh ,还有安装后的启动脚本 bootscript.sh 。有了这些文件后我们在手机的SD卡的根目录,新建一个文件夹取名为 ubuntu ,然后把这里我们刚才下载好的文件放到这个文件夹里面,到这里 ubuntu 文件夹里就分别有 ubuntu.img、ubuntu.sh、bootcript.sh 这三个文件了。
2.安装软件
先展示一下我们需要的三个软件,如图:
首先需要的是 Terminal 这个软件,也就是一个终端,通过终端我们可以用来执行很多命令和脚本。上面我给出了Google Play的地址,这个在很多地方都有的下的,还有Android VNC Viewer也可以在 Google Play 里面找到安装。
在这里我要说一下BusyBox,它使得你可以在 Terminal 中运行很多命令,现在很多 Android 的 Rom (我用的MIUI_v4_2.8.10也是) 的终端中很多命令都不能运行,比如 cp、mv、cut 等,但是这些都是我们脚本里面需要用到的,如果不能运行这些命令而执行脚本的话,会提示 **: not found 这样的提示。所以安装 BusyBox 可以使得这些命令都能够在终端里面执行。如果你的Rom本来够强大已经包含了BusyBox的新版本,能够运行基本的shell命令的话,那也可以不用装这个。
当然安装BusyBox以及后面我们在Terminal中都需要 root 权限,如果是MIUI系统的话则可以直接在 授权管理 > ROOT权限管理 里面打开该选项,然后需要root权限的时候允许就可以了。其他的系统我没用过,不过可以直接用 一键ROOT工具 来操作。
安装BusyBox,安装好后,打开BusyBox点击 Install 开始安装,如果弹出需要ROOT权限,点下一步允许就行,如图:
3.安装 ubuntu 12.04
首先,打开 终端模拟器(Terminal) ,在光标处输入 “cd /sdcard/ubuntu”(不包括引号,注意cd后有空格)然后回车,这样就来到了刚才我们在SD卡里面新建的目录了,如图:
然后我们可以输入命令 “ls” 然后回车,我们就可以看到当前目录下的所有文件了,看一下里面是不是我们需要的三个文件,如图:
接下来我们就要开始运行 ubuntu.sh 这个安装脚本了,但在这之前我们需要使用 root 用户来运行这个脚本,在终端中使用命令 “su” 来切换至 root 用户权限,如果弹出授权信息点击下一步允许就行了,或者直接用 一键ROOT 来开启终端重复上面操作,成功后如图之前的“$”变成了“#”,这就说明已经获得Root权限了,如图:
然后运行安装脚本,输入命令 “sh ubuntu.sh”,进行安装,如图:
然后脚本为你建立了一个名字为“ubuntu”的帐号,这里提示你需要为你的帐号设置一个密码,这个密码会在以后你操作 Ubuntu 的时候一些授权应用到,比如我在这里设置密码为:“ubuntu”,这里注意的是在终端里面输入密码是不会显示出来的,你看见光标没有动静,但实际上你已经输入进去了。回车后提示再次输入密码以保证你两次密码一样,如图:
密码设置完成后,提示是否启动VNC服务和SSH服务,我们只要输入“y”然后回车,开启了这两个服务后我们才能通过远程连接来连上系统,如图:
然后提示我们输入设备屏幕的尺寸,我的屏幕是854×480的,所以我输入“852×480”(小米手机注意:小米手机是854×480的,但是后面用Android VNC 连接的时候有问题,在右边会显示一条线,所以小米手机用户最好设置成“852×480”,其他手机没有测试过,在设置的时候请注意!)。注意:这里两个数字之间的不是乘号,而是字母“xyz”的“x”,输错了不能远程连接的,如图:
如图的提示已经启动了一个新的桌面,提示是否保存你刚才的设置为默认设置,只要输入“y”即可,如图:
然后你就可以看到操作完成后光标前的字符变成了“root@localhost:~#”,有没有发现。其实到这里你已经进入了 Ubuntu 12.04 系统,已经完成安装配置并启动了 Ubuntu 12.04 系统,不信?你可以输入命令 “cat /etc/issue.net” 然后回车查看当前系统是不是Ubuntu 12.04,如图:
4.远程桌面连接
当然,光用命令行当然体验不到什么,我们这时候确实是已经启动了 Ubuntu12.04 ,现在只需要用远程连接工具来连接登录桌面就能看到完整的桌面系统了。这时候我们就要用到前面安装的 Android VNC Viewer 了。按手机的 Home 键回到手机桌面,保持终端还在后台运行。找到 Android VNC 并且打开,然后进行一些简单的配置。Nickname,为你的连接去一个名字如“ubuntu”。Password 为 “ubuntu” 。Address是ip地址,这里我们是在同一台手机上连,所以我们填写“localhost”,当然你想在别的设备上连接当前的设备那就要填写启动时提示的地址。Port 是段口号,默认 5900。还有这里比较重要的是 Color Format,这个是连接的色彩设置,建议设置成“24-bit color (4 bpp)”,要不然画质太低的话画面就惨不忍睹了。如图:
全部设置好以后,点击 Connect 就可以连接上我们本地已经在运行的 Ubuntu 12.04 系统了,如图:
使用 LibreOffice Writer ,并且支持使用手机端输入法:
使用 LibreOffice Calc:
使用 FireFox 打开 Google:
如果想要退出桌面连接,只需要点击手机的 菜单 键,然后选择 disconnect 就可以断开连接。
5.退出 Ubuntu 12.04 系统
退出 Ubuntu 系统,只需要回到刚才我们运行的终端,输入命令 “exit” 回车,等待片刻即可退出 Ubuntu 系统,再次输入 “exit” 回车 则是退出手机终端的 root 用户权限,然后再次 “exit” 回车后则是退出手机终端,这样就完全退出了,如图:
6.下次启动
下次启动的时候只需要开启 终端,然后输入 “su” 获得 root 权限,再输入 “cd /sdcard/ubuntu” 来到ubuntu文件夹下,然后在输入 “sh bootscript.sh” 运行启动脚本就可以运行启动 Ubuntu 了,需要连接桌面的话按照上面说的用 Android VNC 就可以了。
四.电脑端连接使用手机上的 Ubuntu 12.04
到这里你一定成功在手机上跑起 Ubuntu 12.04 了吧,感觉不一样吧!还没完呢!在这里因为我们在手机上的 Ubuntu 12.04 开启了 VNC 和 SSH 服务,当然在手机连上网(最好是WIFI或局域网)了以后,我们也可以用电脑去远程连接登录到手机上的 Ubuntu 12.04 ,这样的话,我们就可以通过电脑来操作手机上的 Ubuntu 了。
VNC服务是与操作系统无关的,所以不管你电脑是什么系统都可以通过VNC来连接登录到手机上的 Ubuntu。在 Windows 操作系统上可以通过 VNC 客户端 来连接。因为我电脑的系统是Linux 所以我在这里只演示 Linux 下连接登录到手机的 Ubuntu。Windows的也大同小异,所以Google一下吧。
在Linux下,使用 Remmina 远程桌面客户端 这款工具就可以连接到按照我们上面的方法启动了 Ubuntu 的手机,其中服务器地址 就是你在手机上启动 Ubuntu 的时候,提示的 VNC 地址 。配置如图:
点击连接,就可以连接登录到手机上的 Ubuntu 12.04 了,这样你就可以在电脑上操作手机上的 ubuntu 系统了,如图:
五.总结
Android 智能手机 装上了原生的 Ubuntu 12.04 ,这需要感谢 Zachary Powell 团队在 SourceForge 上提供的文件及脚本,不仅是 Ubuntu ,你也可以在 Android 手机上安装 Fedora、openSUSE、Debian、ArchLinux 等系统,这些系统的影响文件及脚本 Zachary Powell 团队在 SourceForge 上都有提供,感兴趣的朋友可以尝试一下!
说到底装上的还是原生的 Ubuntu ,但是还是挺期待 Canonical 专门为 Android 设备定制的 Ubuntu 系统,现在 Canonical 公司也已经在为 Android 设备打造专属的 Ubuntu 系统了,期待它能早日面世。相关信息可以查阅:http://www.ubuntu.com/devices/android
Android 手机上安装并运行 Ubuntu 12.04的更多相关文章
- Android 手机上安装并运行 Ubuntu 12.04(转,没实测)
设备需要root权限,并且安装了BusyBox最小 1GHz 处理器(推荐)Android 系统版本 2.1 或以上Android 设备需要自定义的ROM固件SD卡至2.5GB (安装大映像的需要3. ...
- 如何通过wifi在android手机上安装调试应用
如何通过wifi在android手机上安装调试应用 1. 首先还是要打开手机的usb调试选项,并通过usb线连接手机.2. 然后执行“adb tcpip 5555”,把adb从usb模式切换到tcpi ...
- 鸟哥的私房菜上 xpenguins 设备(ubuntu 12.04)
看了一个暑假linux,我觉得很辛苦啊,要很好地利用linux并不是的easy... 今天装了一下鸟哥课后给的xpenguins软件,就是桌面特性软件.会有非常多企鹅下落,本以为能够非常轻松的搞定.没 ...
- 如何在 Android 手机上安装 Ubuntu 13.04
在农村,一切都是相对的. 长话短说,我已经厌倦了我们在农村做的一个小小的突破. 我本该去放松,读了一大堆东西涉及到自然语言的处理.但是因为我这些天一直在修改LXC和chroot的时候,我决定将我的An ...
- 在Android手机上安装linux系统
在anroid手机中安装fedora系统.记住不只是教你安装fedora系统. 需要的备注与软件 1.一个已经root的Android手机,记住是root后的,root后的,root后的.(重要的事情 ...
- android手机上安装apk时出现解析包错误的一个解决办法
今天下午在学习安卓开发时,学习开发文档中的gridview时,在模拟器上调试程序一切正常,如下图所示: 但当将bin目录下的HelloGridView.apk拷贝到M8安卓系统后进行安装时,出现了“解 ...
- OK335xS Ubuntu 12.04.1 版本 Android 开发环境搭建
/******************************************************************************************** * OK33 ...
- [转] Ubuntu 12.04下LAMP安装配置 (Linux+Apache+Mysql+PHP)
我是一个Linux新手,想要安装一台Ubuntu 12.04版的Linux服务器,用这台服务器上的LAMP套件来运行我自己的个人网站.LAMP套件就是 “Linux+Apache+Mysql+PHP这 ...
- Ubuntu 12.04 安装搜狗输入法
安装指南 Ubuntu / Ubuntu Kylin 14.04 LTS 版本 只需双击下载的 deb 软件包,即可直接安装搜狗输入法. Ubuntu 12.04 LTS 版本 由于 Ubuntu 1 ...
随机推荐
- python-认识Socket[入门篇]
什么是socket 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链 ...
- enumerate小技巧和列表推导式
1.enumerate enumerate函数用于遍历序列中的元素以及它们的下标,这样你就可以通过index 直接定位你的数据了. 之前对list操作的时候,即想取到下表,又想取到对应值,我是这么来实 ...
- TASKKILL命令使用方法
TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] [/PID processid | /IM ima ...
- sql存储过程的简单使用
存储过程(Stored Procedure)是数据库系统中,一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它. 创建 ...
- 简单的Cookie登录
登录页前台代码 <form id="form1" action ="" method="post"> <input typ ...
- socketio 握手前中断报错
前两天折腾了下socketio,部署完发现通过nginx代理之后前端的socket无法和后端通信了,于是暴查一通,最后解决问题: location / { proxy_pass http://127. ...
- JavaSE思维导图(四)
- 20141011C#面向对象基础
什么是对象?—— 一切皆为对象.Object 生活中常说的“东西”,就是我们程序里所指的对象. 归类——找模型——抽象 类:class,对某类众多对象共同的特点进行抽象出来的模型 对象——(抽象的过程 ...
- CocoaPods 安装和使用
CocoaPods的安装 >1. 打开终端, 输入 gem sources -remove https://rubygems.org/ >2. 再输入 gem sources -a htt ...
- .Net 类型、对象、线程栈、托管堆运行时的相互关系
JIT(just in time)编译器 接下来的会讲到方法的调用,这里先讲下JIT编译器.以CLR书中的代码为例(手打...).以Main方法为例: static void Main(){ Cons ...