在农村,一切都是相对的。
长话短说,我已经厌倦了我们在农村做的一个小小的突破。
我本该去放松,读了一大堆东西涉及到自然语言的处理。但是因为我这些天一直在修改LXC和chroot的时候,我决定将我的Android手机(又叫做我的口袋服务器)升级到Ubuntu13.04.
(如果你错过了这个职位,我将使用Complete Linux Installer去运行一个服务器沙箱关掉一个旧的Xperia Arc S,尽管它对我来说这个网站运行一个实例已经足够好了——除了更多。)
从12.10版本到12.04版本做发布、升级工作详细到步骤,但是完整的Linux安装程序提供的图像都是用armel创建的,而13。04版本已经转移到专门的armhf上了——所以之后确认我的Xperia可以运行armhf的二进制文件viamultiarch(这里顺便说一下,做了一点快捷的事情),我决定重新开始创建一个新的影像。
遗憾的是有很少有关于如何执行的信息,除了一些零散的论坛帖子,所以我决定记录下这一过程。这一切都相当简单的。
首先,你需要设置QEMU和ARM二进制以及asdebootstrap支持:
1
sudo apt-get install debootstrap qemu-user-static qemu-system git \
2
gcc-arm-linux-gnueabihf binfmt-support
现在,创建文件系统本身(这是为2GB图片)和它挂载在/mnt目录中。由于我们并不需要所有的 ext3/ext4(毕竟,最终的结果将要运行的文件内),我们将使用 ext2 文件系统:
1
dd if=/dev/zero of=ubuntu.img bs=1024 count=2097152
2
mkfs.ext2 ubuntu-armhf.ext2.img
3
sudo mount -o loop ubuntu-armhf.ext2.img /mnt
接下来,使用debootstrap来部署基础环境(这里给出了主要的设置):
1
HOSTNAME=ubuntu-armhf sudo debootstrap --variant=minbase --foreign \
2
--arch armhf raring /mnt
现在在即将完成的chroot设备里部署qemu-arm-static:
1
sudo cp /usr/bin/qemu-arm-static /mnt/usr/bin/
并用它完成剩下的部署工作:
1
LANG=C sudo chroot mnt /usr/bin/qemu-arm-static -cpu cortex-a9 /bin/bash
2
./debootstrap/debootstrap --second-stage
一旦上面的工作完成了,我们需要安装apt源。(你也可以选择性的安装deb-src,不过我现在还不需要它):
1
echo "deb http://ports.ubuntu.com raring main restricted universe" > /etc/apt/sources.list
2
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 428D7C01
然后,你就可以安装一些必需的工具(我觉得这些都是必需的):
(译注:wget,vim这些当成必需可以理解,怎么golang和git-core也成必需了?)
1
apt-get update
2
apt-get install sudo apt-utils dialog less wget vim net-tools openssh-server \
3
htop tmux build-essential libevent-dev python-dev python-setuptools \
4
python-lxml sqlite3 nodejs npm golang git-core
如果你的手机电力够用,你也可以安装VNC服务(和一个迷你的X11设置):
1
apt-get install --no-install-recommends tightvncserver
你可能需要运行QEMU1,所以你应该多安装几个终端,尽管这不是Android chroot必需的:
1
cp /etc/init/tty1.conf /etc/init/ttyAMA0.conf
2
sed -i "s/tty1/ttyAMA0/" /etc/init/ttyAMA0.conf
这还没完,你还需要一个拥有sudo权限的用户1:
1
adduser ubuntu
2
usermod -aG sudo ubuntu
重启你的chroot设备:
1
exit
 
现在我们对已经完成安装的Linux做下调整,复制init.sh脚本能放到/root/init.sh,确保其可执行  3, 添加上下面这些挂载点:
sudo cp init.sh /mnt/root/init.sh 
s
sudo chmod +x /mnt/root/init.sh
s
sudo rm /mnt/usr/bin/qemu-arm-static
s
sudo mkdir /mnt/sdcard
s
sudo mkdir /dev/shm
s
sudo umount /mnt
 
 
现在复制图片到 Ubuntu图片在你SD卡上的位置,替换原来的.(如果你想保存Ubuntu的图片,压缩后大概有400MB).
我已经试着运行了 Postgres  — 关闭了TCP和UNIX套接字,这样它就不会和网络设置混淆.
事实上这比你想象的要普通的多——我曾经在一台Mac mini型号PowerPC里运行了一个仿真Intel chroot设备,并且曾经忘了做这个。
注意完整版Linux安装程序(Complete Linux Installer)脚本强调将用户添加到admin用户组,而这个组在Ubuntu上却实际不存在。
我实际上将真实使用的东西做了一些变动,因为我需要/dev/shm工作目录。而且我希望它们会把配置形成文档文件放在某个地方——我也希望客制化的文件加载可以这样生效,而不需要将它们搬到脚本里。
本文地址:http://www.oschina.net/translate/how-to-install-ubuntu-13-04-on-your-android-phone
原文地址:http://the.taoofmac.com/space/blog/2013/04/28/2330
 
 
*************************************************
使用slitaz替换ubuntu进行ROOT
发表于 2013-2-3 23:13:41
 
论坛上的一般都是用ubuntu对8850进行root操作,ubuntu光盘容量较大,一般都在700m以上,下载麻烦...
 
我发现可以用slitaz替换ubuntu进行root,而且权限设置很简单,直接鼠标操作,不用在命令行下进行,slitaz容量大小仅仅35m,比ubuntu小多了...
 
1、首先下载一个slitaz 4.0中文版:
http://slitaz-cn.googlecode.com/files/slitaz-4.0-light-cn.iso
 
2、其次用虚拟机或者用ultraiso直接写入U盘启动电脑
 
3、进入系统后点击右下角切换到root用户,用户名和密码都是root
 
4、手机在down状态链接电脑,在程序菜单内打开pcman管理器
 
5、
用鼠标将右边的qualcomm mmc sto**都点一遍
 
6、
把root文件复制到相应的目录内,并如图设置属性,就完成了!
 

如何在 Android 手机上安装 Ubuntu 13.04的更多相关文章

  1. VMware上安装ubuntu 13.04

    作者:viczzx 出处:http://www.cnblogs.com/zixuan-zhang 欢迎转载,也请保留这段声明.谢谢! 这两天打算在Linux环境下学Python语言,想换个高点的ubu ...

  2. Android 手机上安装并运行 Ubuntu 12.04

    ubuntu.sh脚本的原地址变动了,导致下载不了,现在更新了网盘地址.小技巧:遇到一些下载失效的时候可以试一试p2p下载工具(如 easyMule.迅雷等)试一试,说不定有人分享过~* —————— ...

  3. 如何在 Android 手机上实现抓包?

    如何在 Android 手机上实现抓包? http://www.zhihu.com/question/20467503 我想知道某个应用究竟在数据提交到哪里,提交了什么.网上的教程太复杂,不想麻烦.有 ...

  4. 如何在Android手机上进行自动化测试(下)

    版权声明:允许转载,但转载必须保留原链接:请勿用作商业或者非法用途 前言 通过阅读本篇教程,你将会了解到: 如何使用Poco对Android原生应用进行测试 Poco支持直接对任何Android原生应 ...

  5. 如何通过wifi在android手机上安装调试应用

    如何通过wifi在android手机上安装调试应用 1. 首先还是要打开手机的usb调试选项,并通过usb线连接手机.2. 然后执行“adb tcpip 5555”,把adb从usb模式切换到tcpi ...

  6. 在XPS13 上安装Ubuntu 16.04

    1 准备系统安装U盘 使用常见的光盘工具软件ultraISO. (1)首先使用UltraISO打开Ubuntu-16.04.4-desktop-amd64.iso安装映像. (2)在菜单栏中,选择&q ...

  7. 安装Ubuntu 13.04后要做的六件事

    2013-05-07 09:23    最新版本的Ubuntu已经新鲜出炉:Ubuntu 13.04,代号为Raring Ringtail.作为幕后开发Ubuntu Linux的公司,Canonica ...

  8. Android 手机上安装并运行 Ubuntu 12.04(转,没实测)

    设备需要root权限,并且安装了BusyBox最小 1GHz 处理器(推荐)Android 系统版本 2.1 或以上Android 设备需要自定义的ROM固件SD卡至2.5GB (安装大映像的需要3. ...

  9. 在Android手机上安装linux系统

    在anroid手机中安装fedora系统.记住不只是教你安装fedora系统. 需要的备注与软件 1.一个已经root的Android手机,记住是root后的,root后的,root后的.(重要的事情 ...

随机推荐

  1. 常用 iOS 开源库和第三方组件

    1.通过CocoaPods安装 项目名称 项目信息 AFNetworking 网络请求组件 FMDB 本地数据库组件 SDWebImage 多个缩略图缓存组件 UICKeyChainStore 存放用 ...

  2. mp4网页播放代码,有声音无图像的解决办法~

    mp4网页播放代码,有声音无图像的解决办法~     关于网页播放mp4格式的视频,找了一些插件,这里推荐一下video.js 官方网址:http://www.videojs.com/ github ...

  3. MariaDB 10 (MySQL DB) 多主复制并实现读写分离

    ----本文大纲 简介 资源配置 拓扑图 实现过程 ==================== 一.简介 MMM 即Master-Master Replication Manager for MySQL ...

  4. ExtJS表格——行号、复选框、选择模型

    本篇的内容是为表格添加行号,和复选框,最后谈一下Ext的选择模型.内容比较简单,就直接上代码了.一. 设置行号   行号的设置主要问题在于删除某一行后需要重新计算行号  Ext.onReady(fun ...

  5. Druid如何自动根据URL自动识别DriverClass的

    Druid是根据url前缀来识别DriverClass的,这样使得配置更方便简洁. 前缀 DriverCLass 描述信息 jdbc:odps com.aliyun.odps.jdbc.OdpsDri ...

  6. MySQL在windows系统的安装

    原文:https://blog.csdn.net/wokaowokaowokao12345/article/details/76736152 MySQL在windows系统的安装 原创 2017年08 ...

  7. Redis 3.0版本启动时出现警告的解决办法

    原文:http://m.blog.csdn.net/article/details?id=50864933 Redis 3.0.7版本启动时出现警告的解决办法 发表于2016/3/12 12:52:4 ...

  8. There is no Action mapped for namespace [/] and action name [Login] associated with context path [/e

    近期学习web开发时,就遇到这个令人头疼的问题. 百度谷歌了N遍,最终在博客http://blog.csdn.net/liu578182160/article/details/17266879中找到了 ...

  9. 探索并发编程(六)------Java多线程性能优化

    大家使用多线程无非是为了提高性能,但如果多线程使用不当,不但性能提升不明显,而且会使得资源消耗更大.下面列举一下可能会造成多线程性能问题的点: 死锁 过多串行化 过多锁竞争 切换上下文 内存同步 下面 ...

  10. Win7+Qt5.6.0(64位)+msvc2015编译器 环境配置

    根据“Qt简介,Qt 5.6.0-VS2015 版本安装配置图文教程”安装第二套IDE,使用Qt官方的集成开发环境 QtCreator + 微软的WinDbg调试器(内含命令行调试器为CDB)的组合. ...