Android 是基于Linux内核的开源操作系统,主要用在移动设备上。当然同样是基于Linux内核的操作系统,现在支持的Android的智能手机理论来说都能运行基于Linux的操作系统,比如现在流行的发行版:Ubuntu、Fedora 等等。不仅如此,现在的智能移动设备的硬件也越来越强,更为能运行Linux系统提供了良好的硬件支持。

工具/原料

 
  • Android Terminal Emulator (终端模拟器) :用于运行 shell 脚本 (可在Google Play下安装)

  • BusyBox :用于提供 shell 命令的支持  (可在Google Play下安装)

  • Ubuntu 的映像文件(可在sourceforge网站Linux-on-android项目组下载)

  • bootscript.sh:Ubuntu 的启动脚本(可在sourceforge网站Linux-on-android项目组下载)

方法/步骤

 
  1.  

    首先您的手机需要获取root权限,root是前提。没人获取root权限以下都不能完成。

    下载Ubuntu 的启动脚本bootscript.sh访问sourceforge.net网站在网站上找到一个叫 Linux-on-Android 的项目的Home目录下可以下载到

  2.  

    下载Ubuntu 的映像文件,在Linux-on-Android 的项目在其中找到Ubuntu / 12.04这里我们选择12.04 full下载最新的版本ubuntu1204-v4-full.zip.下载的文件是1.4G解压后有3G多。

    在这里简单介绍一下其他版本:

    full 映像包含了完整的 Ubuntu 系统,其中包括 Unity 桌面,还有很多如GIMP等常用软件,非常齐全。需要 3.5G 以上空间。

    small 映像包含了的基本的 Ubuntu 系统,其中包括 LXDE 桌面,需要 2G 以上空间。

    core 映像包含了基础的 Ubuntu 系统,不过这个没有GUI的,也就是没有桌面只有命令行。

  3.  

    在手机上安装Android Terminal Emulator 终端模拟器软件,可以在Google Play上搜索安装。通过终端我们可以用来执行很多命令和脚本。

  4.  

    在手机上安装BusyBox,BusyBox它可以使得你可以在 Terminal 中运行很多命令,比如 cp、mv、cut 等,如果不能运行这些命令而执行脚本的话,会提示 **: not found 这样的提示。所以安装 BusyBox 可以使得这些命令都能够在终端里面执行。可以在Google Play上搜索安装BusyBox。安装好后,打开BusyBox点击 Install 开始安装,如果弹出需要ROOT权限,点下一步允许就行.

    安装BusyBox以及后面我们在Terminal中都需要 root 权限

  5.  

    安装 ubuntu

    首先把之前下载好的bootscript.sh和ubuntu解压复制到内存卡新建ubuntu目录下,打开 终端模拟器(Terminal) ,在光标处输入 cd /sdcard/ubuntu然后回车进入到ubuntu目录了。

    然后我们可以输入命令 “ls” 然后回车,就可以看到文件了。

  6.  

    bootscript.sh脚本需要root权限来运行,在终端中使用命令 “su” 来切换至 root 用户权限,如果弹出授权信息点击下一步允许就行了,成功后如图之前的“$”变成了“#”,这就说明已经获得Root权限了.

    然后运行启动脚本sh bootscript.sh

  7.  

    然后脚本为你建立了一个名字为“ubuntu”的帐号,这里提示你需要为你的帐号设置一个密码,这个密码会在以后你操作 Ubuntu 的时候一些授权应用到,比如我在这里设置密码为:“ubuntu”,这里注意的是在终端里面输入密码是不会显示出来的,你看见光标没有动静,但实际上你已经输入进去了。回车后提示再次输入密码以保证你两次密码一样,如图:

  8.  

    密码设置完成后,提示是否启动VNC服务和SSH服务,我们只要输入“y”然后回车,开启了这两个服务后我们才能通过远程连接来连上系统,如图:

  9.  

    然后提示我们输入设备屏幕的尺寸,我的屏幕是854×480的,所以我输入“852×480”。注意:这里两个数字之间的不是乘号,而是字母“xyz”的“x”,输错了不能远程连接的,如图:

    如图的提示已经启动了一个新的桌面,提示是否保存你刚才的设置为默认设置,只要输入“y”即可

  10.  

    远程桌面连接

    远程连接工具来连接登录桌面就能看到完整的桌面系统了。这时候我们就要用到前面安装的 Android VNC Viewer 了。按手机的 Home 键回到手机桌面,保持终端还在后台运行。找到 Android VNC 并且打开,然后进行一些简单的配置。Nickname,为你的连接去一个名字如“ubuntu”。Password 为 “ubuntu” 。Address是ip地址,这里我们是在同一台手机上连,所以我们填写“localhost”,当然你想在别的设备上连接当前的设备那就要填写启动时提示的地址。Port 是段口号,默认 5900。还有这里比较重要的是 Color Format,这个是连接的色彩设置,建议设置成“24-bit color (4 bpp)”,要不然画质太低的话画面就惨不忍睹了。

    全部设置好以后,点击 Connect 就可以连接上我们本地已经在运行的 Ubuntu系统了,如图:

install ubuntu on Android mobile phone的更多相关文章

  1. 【Android 应用开发】 Ubuntu 安装 Android Studio (旧版本|仅作参考)

    . 果断换Ubuntu了, Ubuntu的截图效果不好, 不能设置阴影 ... 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article ...

  2. try or install Ubuntu on MeegoPad T01

    Ref: Install Ubuntu on Meego Pad T01 with a Live ISO Image MeegoPad T01 has recently been shown to b ...

  3. Ubuntu 配置 Android 开发 环境

    . 果断换Ubuntu了, Ubuntu的截图效果不好, 不能设置阴影 ... 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article ...

  4. 2013年Linux周刊读者投票出炉 Ubuntu、Android榜上有名

    摘要:一年一度的Linux周刊读者投票结果已经登于2013第12期.这是Linux爱好者们自己的“奥斯卡”: Linux周刊的小编们列出一系列Linux相关的“最佳项目”进行面向读者的投票.竞选项目包 ...

  5. macbook pro install ubuntu

    https://help.ubuntu.com/community/MacBookPro Determine your hardware revision To determine which ver ...

  6. 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)

    . 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...

  7. Install Ubuntu Server

    进入引导程序以后, 选择Install Ubuntu Server, 安装主菜单如下: 依次配置: 接着 https://www.youtube.com/watch?v=gqLaT01yei0

  8. install ubuntu env

    install ubuntu1, mysql serversudo apt-get install mysql-server2, ssh sudo apt-get install openssh-se ...

  9. Ubuntu中Android SDK Manager无法更新解决办法

    Ubuntu中Android SDK Manager无法更新解决办法http://hi.baidu.com/petercao2008/item/d7a64441f04668e81e19bc1a

随机推荐

  1. testbench的设计 文件读取和写入操作 源代码

    十大基本功之 testbench 1. 激励的产生 对于 testbench 而言,端口应当和被测试的 module 一一对应.端口分为 input,output 和 inout 类型产生激励信号的时 ...

  2. Xilinx官网查询各个版本软件的手册

    在Xilinx官网查询各个版本软件的手册需要点击 See All Versions

  3. 探寻main函数的“标准”写法,以及获取main函数的参数、返回值

    main函数表示法        很多同学在初学C或者C++时,都见过各种各样的main函数表示法: main(){/*...*/} void main(){/*...*/} int main(){/ ...

  4. JAVA中转义字符

    JAVA中转义字符 2010年08月11日 星期三 上午 12:22 JAVA中转义字符: 1.八进制转义序列:\ + 1到3位5数字:范围'\000'~'\377'       \0:空字符 2.U ...

  5. 【Windows】windows核心编程整理(下)

    windows核心编程整理(上) windows核心编程整理(下) 线程的堆栈 每当创建一个线程时,系统就会为线程的堆栈(每个线程有他自己的堆栈)保留一个堆栈空间区域,并将一些物理存储器提交给这个以保 ...

  6. vue2 如何操作dom

    在vue中可以通过给标签加ref属性,就可以在js中利用ref去引用它,从而操作该dom元素,以下是个例子,可以当做参考 <template> <div> <div id ...

  7. 使用typed.js实现页面上的写字功能

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. JAVA反射的使用之ResultSet的自动转换

    Hello,大家好,上篇文章我们说了下反射的基本情况和简单使用,那么本篇文章我们就使用反射写一个工具类.用来将数据库查询结果的ResultSet转换为指定类型的对象.使用反射来实现ResultSet内 ...

  9. STM32内部flash存储小数——别样的C语言技巧

    今天在进行STM32内部falsh存储的时候,发现固件库历程的函数原型是这样的: 第一个是地址,在我的STM32中是2K一页的,第二个是要写入的数据. 问题就来了,存储一个小数该怎么办呢?固件库给的是 ...

  10. Nvidia显卡安装驱动

    首先要知道需要安装哪个类型的显卡驱动,可以使用如下指令查看 sudo add-apt-repository ppa:graphics-drivers在#current那一栏中找到显卡驱动型号,使用的是 ...