点击跳转微信公众号原文链接
欢迎关注公众号,会不定时发些有趣的干货文章,以及一些记录性的技术文章!
正文开始:
一、目的:给手机装上Linux系统,充当服务器使用
二、流程:
1、手机装好相关软件
2、设置系统属性并安装
3、环境配置、网站部署(可选)
三、工具准备
1、手机要先root
(这里演示的手机是红米3S,该root过程也是一段悲伤的故事...如果还有机会给小米手机root,到时候会再做专门的详细记录)
2、装上BusyBox、LinuxDeploy、JuiceSSH软件。
BusyBox:集成了常用linux命令和工具的软件。必选
LinuxDeploy:Linux Deploy是一个在 Android上运行的 chroot容器。必选
JuiceSSH:用来进行ssh连接,电脑端可用xshell连接。可选
以上三个软件可自行下载,这里也提供下下载链接:
链接:https://pan.baidu.com/s/1BVOCZrqwsWqj5qHOqvmJJA
提取码:ex95
app图标如下图所示:
四、步骤——安装linux
接下来有一大堆东西要配置,看着多而杂,其实一步一步来就会发现特别简单。开始吧:
1、打开BusyBox,会出现下图
2、点击左上角的三条横杆,选择setting,找到language,可以设置成中文,关闭程序再进入,界面就会变成中文,如下图
3、点击左上角的三条横杆,再点击设置。这里要注意几个地方,
1)安装路径:默认/system/xbin,本教程也使用该地址,可以手动修改,但要记得改动后的地址
2)安装组件、替换组件要勾选上。调试模式可选可不选,其他的可以不用去管,如下图。
3)回到主界面,点击安装,会弹出来对话框,点击确认,等待安装,安装完成后会出现 ###END 表示安装结束,如下图。
至此,BusyBox配置结束,可退出。
4、打开Linux Deploy,点击左上角的三条横杆,再点击设置,详细的待会再说明,这里先看下这次教程的配置:
该设置详细说明:
1)前三个:屏幕常亮、锁定wifi、CPU唤醒强力建议勾选上
2)联网更新也建议勾选上
3)ENV目录,把files修改成env,也可以不改,只是方便识别
4)PATH变量要和BusyBox的安装路径一致,这里用的是/system/xbin
5)调试模式也建议选上,方便Debug
5、上一步结束后,返回,点击主界面的右下角部分进行引导设置,还是先看这次教程的配置再进行详细讲解:
该设置详细说明:
1)这里选择的是发行版linux是CentOS
2)架构:红米3S是骁龙410,支持aarch64;一般选择armhfp也没问题
3)源地址:本教程使用默认地址,当然也可以选择其他的,这里推荐两个
http://chinanet.mirrors.ustc.edu.cn/centos-altarch/
http://mirrors.aliyun.com/centos/
4)安装类型选择镜像文件,镜像大小可以设置成2000左右
5)用户名和用户密码用于ssh登录使用,建议改成容易记的
6)挂载要勾选上,并且编辑挂载列表,这里要注意不要输入错误,很容易造成安装时找不到路径,挂载列表如下图:
7)为了能够连接服务器,务必勾选启用SSH;在设置那里,端口会默认为22,这个不用去改,避免端口重复。
8)图形界面在这次教程中没有启用,看个人习惯,喜欢也可以勾选上,图形化界面的会比较占空间
6、至此,看起来繁琐的配置就到这里结束了。返回主界面,点击右上角的三个点,选择安装。等待10多分钟,如果没有提示错误的话,那么linux的安装就成功了。
文末那里会说一些安装时常见的问题,需要的可以查看,如果出现没有提到的错误,也欢迎读者来咨询或补充。
四、步骤——部署网站
说明:这一步因人而异,喜欢php或python的可以自行搭建;这里就拿Java来举例并测试linux系统;所以这里要做的是:1、搭建Java环境 2、用Tomcat部署网站
1、搭建Java环境:
1)和平常在linux系统上搭建差不多,但要注意的是jdk版本的选择,这里以jdk1.8为例。在Oracle官网上,应下载下图红框圈起来的Linux ARM版本,(网上有的说通过yum安装的也可以,这里就不再实验了)
下载和系统位数相同的版本;查看系统位数命令:getconf LONG_BIT
如果直接用国内网络下载肯定很慢,这里给下链接(其实使用正常的百度网盘也不见得有多快):
64位:
链接:https://pan.baidu.com/s/1muQjoMO4-BEJxlbgQ0BE-A
提取码:vgre
2)把文件上传到服务器后(推荐用FileZilla Client上传),执行以下命令
//1、解压
tar -zxf jdk-xxx-.tar.gz
//2、打开配置文件
vi /etc/profile
//3、修改配置文件:在最后一行加入如下配置,注意修改JAVA_HOME的路径!
export JAVA_HOME=/usr/java/jdk1.8.0_241
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
//4、使全局变量生效,注意:在chroot容器里使用该命令可能不会失效,推荐直接收到重启服务器
source /etc/profile
//5、重启成功后,查看java版本,出现版本等信息说明安装成功
java -version
至此,java环境变量配置结束,和平常的配置差别在于,jdk版本和配置生效问题。
2、搭建tomcat
本着一站到底的精神,再贴出tomcat8.5下载地址:
https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.53/bin/apache-tomcat-8.5.53.tar.gz
搭建tomcat这一步比较简单,只要解压后进入bin目录,运行./startup.sh,即可启动tomcat。
此时打开浏览器,访问 ip地址:8080 即可看到tomcat的界面
3、到这里先暂时告一段落;可能有很多人会想,这样不就是一个本地的服务器吗?没错,现在只是个本地的服务器,只能运行一些不需要挂在公网上的项目。后期会讲到,把内网映射到公网上作为个人云主机使用。
最后
说一下可能会遇到的问题
1、在用linux deploy安装linux时经常会发生“找不到文件”这样的错误;主要有两个方面:
1)Android资源的挂载问题,确保不要挂载错误;
2)手机root不完整,常见的有小米手机,就算刷了开发版并且也开启了system分区,也经常会出现各种root不完整的问题;建议解决方法:手动刷入recover,再刷入supersu,即可解决官方开发版的root权限完整问题;或者刷入其他root好的ROM包。
2、BusyBox和Linux Deploy在使用时最好都用最新版,可以减少很多问题,本次教程使用的BusyBox版本为1.31.1-46,Linux Deploy版本为:2.6.0-258。这里给出github上的源地址:
BusyBox:https://github.com/meefik/busybox
Linux Deploy:https://github.com/meefik/linuxdeploy
3、安装Linux时,有时候会出现国内的centos源反而不能安装的情况,这种情况推荐使用默认源地址,安装期间就不要再去使用,静待即可
4、关于架构的选择,可以自行百度手机的cpu,查询适合的架构;也可以参考BusyBox主界面提供的相关参数
5、关于一些文件下载缓慢问题,可直接私信,看到后可直接私发。
期间还有其他很多问题,这里就不一一贴出来了。