在安卓上部署服务器 – 应用程序的配置

介绍Linux Deploy、JuiceSSH、BusyBox、XShell基础配置和使用


本系列其他文章:

  1. 在安卓上部署服务器
  2. 在安卓上部署服务器 – 应用程序的配置
  3. 在安卓上部署服务器 – 解决内网穿透问题
  4. 在安卓上部署服务器 – 部署脚本和博客

相关应用下载:https://pan.baidu.com/s/1eS9qsDk

本文介绍上篇文章中提到的四个app(BusyBox、ES文件浏览器、Linux Deploy、JuiceSSH/XShell)的配置和使用。大家有更好的方式方法的话,欢迎一起讨论。

0.手机的基础配置1G RAM+8G ROM(我自己的),最低配置:512M RAM + 4.xG ROM

1.在使用Linux Depoly之前,需要获取手机root权限。并且注意安装顺序BusyBox/ES文件浏览器->Linux Deploy->JuiceSSH。将Linux Deploy的后台配置设置为无限制,许多系统优化会有类似MIUI的神隐模式。

2.BusyBox:安装完打开,BusyBox会自动进行初始化,初始化完成再安装Linux Deploy比较好。

3.Linux Deploy是一款可以在Android设备上部署Linux环境的应用,,其原理大概是在Android的Linux层跑一个chroot或者proot容器,然后再在容器中运行我们准备好的另外一个Linux系统。值得注意的是,这与我们熟知的虚拟机技术不同,新的Linux系统将和Android系统平行运行(非专业解释不要深究)。

3.1打开Linux Deploy,我们需要在侧边栏 – Setting – Language中切换语言为”中文”。切换完成后,一直按返回键退出应用再重新进入应用,这时应用的显示语言已经被我们更改为中文了。

3.2接下来,我们将使用Linux Deploy在Android设备上部署Ubuntu系统:

点击界面最右下方的”属性”按钮进入配置文件的设置界面进行如下设置(我也不知道开发者为什么会用这么一个”下载”图标作为配置文件设置界面的图标):

=>Containerization method:”chroot”

=>发行版:”Ubuntu”

=>架构:保持默认值

=>发行版版本:”yakkety”(即Ubuntu 16.10)

=>源地址:http://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/(因为默认源速度不佳,为了不下载一天一夜,我们这里使用的是清华大学的开源镜像源)

=>安装类型:这一选项的话有两种建议,”目录”和”文件”,如果对Linux不太熟悉并且/data分区剩余空间≥2g的话,建议使用”目录”的安装方式,如果对Linux比较熟悉或者/data分区剩余空间<2g的话,建议使用”文件”的安装方式。在这里,使用”目录”的安装方式。

=>安装路径:”安装路径”选择”目录”时,这个选项将定义系统安装在哪个路径中,默认路径为${ENV_DIR}/rootfs/linux,即安装在/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux目录下。”安装类型”选择”文件”时,这个选项将定义系统安装在哪个镜像文件中,默认值为”外置存储/linux.img。

=>镜像大小(MB)(安装类型”选择”文件”时可用):这个选项将定义系统所在镜像文件的大小。系统安装之前将在安装目录创建一个大小为设置的镜像大小的空文件用来存放系统文件和数据(相当于新Linux系统的总磁盘空间)。建议不要用默认值,填写2048m足够了。

=>文件系统(安装类型”选择”文件”时可用):选择”自动”就好。

=>用户名:这个选项为登录系统时的用户名,默认为”android”,可以随意更改。

=>用户密码:这个选项为Ubuntu系统中用户的密码,可以根据自己的习惯填写。

=>Privileged Users:保持默认值”root”

=>DNS服务器:可以保持默认值,也可自定义填写DNS服务器地址(如114.114.114.114等)

=>本地化:建议保持默认值POSIX,如果有其他需求,比如ssh返回结果中文化/VNC中文化时,选择”zh_CN.UTF8”

=>INIT/MOUNTS项:若有需求时可以设置,无需求可以忽略。

=>允许SSH服务器启动:打开此选项

=>SSH设置:保持默认

=>允许图形界面启动:若有需求可以设置,这里暂时不打开这个选项

3.3设置完成后,按返回键返回到应用主界面,按下菜单键,选择”安装”开始Linux系统的安装,安装过程中需要一直保持网络连接(建议在WIFI下安装,大概需要几百兆流量)。

当看到终端输出”>>>deploy”时,代表安装已开始

开始和完成中间约二十分钟,使用默认源三十分钟以上。

当看到终端输出”<<<deploy”时,代表安装已完成

点击主界面下方的”启动”按钮可以启动新安装的系统,点击”停止”可以停止系统。

至此,系统部署部分描述完毕。

 

4. JuiceSSH配置和使用。部署完毕后,我们需要用到JuiceSSH之类的SSH工具来登录系统(这里以JuiceSSH为例)。

点击连接->认证,新建一个认证:

=>昵称:随便填写,用于标识认证,这里填写“用于标识认证”

=>用户名:填写Linux Deploy上你填写过的用户名,这里是Zkeeer

=>密码:填写Linux Deploy上你填写过的密码,这里是password

点击右上角

 

进入新建连接界面:

=>昵称:可随意填写,用以标识SSH链接,这里填写“用于标识连接”

=>类型:SSH

=>地址:填写Linux Deploy应用标题栏中那个,这里是127.0.0.1

点击右上角√

在”连接列表”中点击刚刚新建的这个项目连接到我们刚刚部署好的系统,连接成功后界面如下:

因为我们是通过普通用户android登陆系统的,接下来我们需要设置超级用户(root)的密码并且以超级用户的身份登陆系统,在终端中键入:sudo passwd root

终端将会提示用户输入root用户的密码并且再次输入一次以确认(输入密码时密码将不可见,连*都不会显示)。

设置完毕后,在终端键入命令su并输入刚刚设置好的root用户密码即可切换到root用户。

 

5.使用Xshell(PC)登录:下载并安装Xshell后,文件->新建。

=>名称、协议、主机、端口号都跟juicessh配置一样


6.使用ES文件浏览器进行文件的管理:

=>如果你是通过目录方式部署的Linux系统,那么你可以直接使用ES访问/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux来管理新系统中的文件

=>如果你是通过文件方式部署的Linux系统,管理文件等操作就得依靠SFTP或者SSH了。SFTP具体配置见参考文章。

 

参考文章:Linux Deploy:在Android上部署Linux

0 0 投票数
文章评分
订阅评论
提醒
guest
26 评论
内联反馈
查看所有评论
r

为毛我一直卡在连接中

onCreate

ip要填写Linux Deploy标题中间的那个,不一定是127.0.0.1,我下的Linux Deploy是在应用宝上找到的,默认没有开启ssh配置,选中之后再配置,会去安装ssh,安装完成之后再重启显示ssh done这时候就可以连接了

张冠雨

Linux Deploy标题中间的那个是一个ipv6的地址JuiceSSH提示无效地址怎么解决

mrChen

usyBox/ES安装之后报错提示

bovins

安装时出现 The container is already mounted怎么办

DUSK

安装之后显示failed getting release file http://
我已经尝试了很多地址了还是不行!怎么办~~

DUSK

谢谢~~我换成了16.04就能下载了。但是手机上sunny显示服务器返回数据不对 ,电脑上却可以连接上。纳闷~~~

IdeaPloter

LinuxDeploy点安装只有
>>>Deploy
<<<Deploy
怎么办?点启动、配置这些就告诉我缺少“目标路径”,每个发行版和安装类型都不行,空间足够,装在本机储存和外置SD卡都出错。
怎么办??

kkgj

为啥我这个,ssh..done了但是在设置连接的收linux主机还是连不上啊,还有那个linuxdeploy是不是用的linux[…]省略号里面的ip呢

chz yang

我装centos7 的时候,ssh总是启动失败,有什么解决方法吗?

chz yang

换成ubuntu就没问题了

崔庆浩
Yuan Xuezhi

好厉害啊!码上,今晚回家就试试!

御风

安装centos的话登陆,juicessh要填什么用户名和密码?

叮当猫

怎么配置web服务器环境呀大神

Fury

关于镜像源的问题:
下面这个地址没问题,我刚刚重装过一遍:
http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/
注意:不要采用https