Linux可以运行在智能手机上吗?
网友解答: Linux的优点不用说了吧,安全、稳定、高效,许多特定的操作必须要Linux环境才能实现,这是Windows都无法取代的地位,也许你会说Android本身即是Linux进化而
Linux的优点不用说了吧,安全、稳定、高效,许多特定的操作必须要Linux环境才能实现,这是Windows都无法取代的地位,也许你会说Android本身即是Linux进化而来的,可是最重要的一点安卓多数是arm构架系统,另外还阉割了许多的功能,哪有Ubuntu那样封的快感啊,那么啥时Android也能运行发行版的Linux呢?
sourceforge上的Linux-on-android项目给我们带来了福音,可是官方支持的设备可是少之又少,怎么才能支持你手中的设备呢,就让我们一起DIY自己的启动脚本,保证成功,开启linux之旅吧!
任意安卓设备一部
解压软件
网络(最好是WIFI)
root权限
超级终端
Busybox
至少3gb剩余空间的内存卡
手机必须要Root,没有的度娘解决。
2
首先安装 终端模拟器 软件,稍后有用,度娘一下搞定了。
步骤阅读
3
然后是Busybox,这是一款高度集成的Linux小工具集合,也很容易找到,安装好就行。
4
安装Android VNC ,用于连接远程桌面。
5
手机内核必须支持loop和ext2文件系统,实践证明ext3,ext4也是可以的。
(1)检验是否支持loop设备
打开 终端模拟器,键入命令 ls /dev/block看是否有loopN设备,N是数字。
(2)ext支持不好确定,多数安卓都支持,毕竟是Linux系统出身嘛,后续交代。
6
由于sourceforge服务器在地球的另一面的美国,所以访问速度自然是不用吐槽的啦,不过还好镜像服务器还是不少的,可以百度搜索sorceforge镜像
选择你喜欢用的系统下载下来吧。
这里要下载两个文件
(1)、镜像文件
有三个版本,完整版(Large)、精简版(smalll)、核心版(core)
可以在服务器相应文件夹下找到zip文件,大小约500MB,解压出来2GB左右。
* 注:完整版和精简版有桌面程序,核心版只有命令行界面
(2)、脚本文件
在相应Linux发行版文件夹里面找到,带script的zip文件就是了,也下载下来。
END
二、后续操作
下载镜像和脚本文件之后在/sdcard上创建一个文件夹,名字与相应的linux发行版名字相同,将下载到的zip文件解压到此处,镜像和脚本都要解压到这个文件夹。
比如笔者的Ubuntu 10.04就是在/sdcard上创建一个名为ubuntu的文件夹,然后把ubuntu.img和ubuntu.sh解压到/sdcard/ubuntu/即可。
然后就是最重要的一步修改脚本了,许多人不成功就是这里没有修改了。
先看一下脚本文件吧!所有的脚本都是差不多的欧!
如图
找到图上第三行的位置,
mount -o remount,rw /dev/block/mmcblk0p5 /system
我们看到这是挂载/system为 可写 状态,但是这里却是挂载的固定是'/dev/block/mmcblk0p5',这肿么可以??要知道安卓的硬件是遍地开花、各式各样都有,/system的所在的设备也各不相同,比如我的是在/dev/block/mmcblk0p19,以前用的是mmcblk0p12,根本不可能统一的
所以我们需要找到/system究竟对应的是那个分区。
方法:给个比较可靠的方法吧,下载一个和你的手机相对应的刷机包,打开META-INFcomgoogleandroidupdater-script文件,搜索"/dev/block"关键字,找到一条与system相关的一行,看到了这样一行
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system");
那个带/dev/block的那个就是你的system分区,用它来替换原来脚本的那一个 /dev/block/mmcblk0p5吧!
我的修改结果是
mount -o remount,rw /dev/block/platform/msm_sdcc.1/by-name/system /system
这里因人而异,不要照搬哦!
然后打开终端模拟器,测试一下
1.输入 su 并回车,获取root权限
2.输入 cd /sdcard/ubuntu 进入脚本文件所在目录,这里ubuntu替换你创建的文件夹名字
3.输入 sh ubuntu.sh ,运行ubuntu系统
到这里理论上是应该成功了
出现图一这样的情况时就要输入分辨率了,我的是1280x720,比较常用的还有800x600等
输入1280x720 ,回车
等待出现 root@localhost:/# 你的Linux已经启动成功啦
终端模拟器以经连接到ubuntu的终端了
但是没有桌面让我们怎样愉快的玩耍呀?
所以打开AndroidVNC,配置一下 参数
Nickname:随便写
Password :你的Linux名称,我的是ubuntu
Address : 因为是本机运行,所以写 localhost 或者 127.0.0.1
Port : 默认5900
Username:root
Color Format : 24-color (4bpp)
然后点击左上角Connect即可
然后就看见了我们期待已久的Ubuntu界面里
但是还有个问题,不支持中文是一个蛋疼的问题啊
所以在安卓系统上找个中文ttf(直接复制/system/fonts/DroidSansFallback.ttf也是可以的)放到/sdcard
进Linux系统后复制字体到
/usr/share/fonts/truetype/ttf-dejavu
重启就能再见到亲切的中文了!
在Linux界面下
1.音量键相当于键盘的上下箭头↑↓
2.双指可以缩放界面,双指滑动可以滚屏
3.按下菜单键-send 可以 触发特殊键 比如 ctrl + alt + delete 关机重启
4.菜单键- Input Mode 可以选择 鼠标操作方式 , 推荐选择touchPad 把触屏当触摸板用
希望可以帮到你!
网友解答:可以,没问题。不过也不是任何linux发行版都可以运行于手机上,也不是任何手机都可以运行linux。大家熟悉的黑客操作系统kali linux就提供手机安装包Kali Linux NetHunter。具体地址:https://www.kali.org/kali-linux-nethunter/
支持Nexus 5, Nexus 6, Nexus 7, Nexus 9, Nexus 10 和OnePlus One。Kali Linux NetHunter包含完整的kali工具集,支持802.11无线注入和AP模式,支持多个支持的USB无线网卡。还可以运行USB HID键盘攻击。但是……前提是您得有个支持Kali Linux NetHunter的手机。为什么其他的手机不行呢?因为没有适合其他手机的配套驱动。假如你是技术大牛,为您的爱机找到了驱动,那么接下来手机安装linux也就没有什么大问题了。
记得google上有一款软件,可以让您体验一下linux,需要root权限。叫做linux Deploy还需要安装busyBox pro,busyBox pro这一款软件集成了许多linux命令,初学者可以玩一玩,满足一下好奇心。
有兴趣的话可以看一看这个链接https://jingyan.baidu.com/article/db55b609e827504ba30a2fe7.html
如果我的回答对您有帮助,请您笑一笑,微笑面对每一天。