linux命令deploy_利用LinuxDeploy在安卓手机上运行Linux系统

对于玩服务器的机佬们来说Linux就是神一样的存在,不过对于新手来说就没那么顺手了。我刚刚接触服务器和Linux时一窍不通,在电脑上装了一个Linux虚拟机也不会玩。在准备搞网站时由于买不起服务器,就想着用手机跑Linux然后通过内网穿透来建站,于是,年少无知的我在一个大神的文章的指导下用LinuxDeploy在手机上成功运行了Ubuntu。几个月过去了,我对服务器和Linux的应用熟练多了,现在又重新拾起这个软件,给大家讲一讲配置的过程和我的一些看法。

注意!!!本软件需要root和完整的Linux命令(也就是需要用BusyBoxPro来安装其他命令)

一、安装BusyBoxPro

下载豌豆荚搜索BusyBoxPro,安装这个来扩展linux命令集,需要root,如果是小米的话需要解锁system分区。打开BusyBoxPro,授予root权限

二、用LinuxDeploy开始安装linux

1、安装LinuxDeploy并授予root权限

下载豌豆荚搜索LinuxDeploy(豌豆荚商店的版本可能不是最新的,最新版下载地址请看作者项目下载页面https://github.com/meefik/linuxdeploy/releases),安装后打开软件,授予root权限后会自动配置环境。软件界面截图如下:

2、添加配置文件并设置属性

点击软件的左上角,在出现的菜单栏里点配置文件,再点➕创建新的配置文件,名称随意。创建完之后选中新建后的配置文件

建议都创建一个新的配置文件,这样出错的时候删除配置文件和系统就行了

选中新的配置文件后回到软件主界面,点右下角的属性设置按钮,这才是重点。

Containerization method  //默认的就行

chroot

发行版    //根据自己的需要选择

CentOS

架构(Architecture)

这个我建议根据自己的手机CPU的架构来选择,不知道的可以在软件的主界面点右上角的按钮,选择状态

[17:11:48] >>> status

[17:11:49] Device: MI 6

[17:11:49] Android: 7.1.1

[17:11:49] Architecture: aarch64           //这个就是架构

[17:11:49] Kern el: 4.4.21-perf-g6a9ee37d-06151-g05a843

Select CodeCopy

还有就是如果选择Ubuntu时架构里没有这个aarch64,CPU是64位的就选择arm64,32位的就是arm,正常情况下是这样的,毕竟还有一些x86的CPU。

发行版版本(Distribution suit):根据需要选择

源地址Source path :选择了发行版后会自动填写为官方的源,可以换成其他源(国内源地址https://diannaobos.com/post/835.html),也可以换成文件地址,用本地镜像或者Repository下载的系统包来安装。

安装类型:通常选择文件和目录两种方式。其中文件是创建一个img文件来当做系统的磁盘,目录的话是在这个软件的操作系统环境下创建一个目录直接存放系统文件。我建议如果不是建站的话选择文件,要存储东西或者建网站并且手机/date目录存储空间够的话可以选择目录。不过,就我安装了这么多次之后总结出来一条:选择目录出现错误的次数比选择文件的要多的多。出现错误最多的就是ssh没安装好。

安装路径:如果选择的是文件,那么这一项默认的是$EXTERNA

L_STORAGE:/linux.img,也就是/sdcard/linux.img。它是你的手机存储目录,你也可以指定任何一个存储路径;如果选择的是目录,那么它默认的是${ENV_DIR}/rootfs/linux。关于这个路径,最好不要更改,否则出现错误的几率会大大增加。

镜像大小和文件系统:如果选择的是文件,会让你选择这两项。文件大小最大2048M,也就是2G,文件系统选择自动就行。

用户名和密码:就是你之后用来登陆SSH的,自己随意填。

DNS服务器:可以不填,如果有需要可以填,个人比较倾向阿里的DNS,谷歌的也可以。

本地化:点开可以选择,中文的话就是zh_CN.UTF-8,英文的是en_US.UTF-8

下面那个MOUNTS如果勾选Enable的话要填写一个挂载点,比如/mnt/android,这样可以在Linux里访问手机存储里的内容了。

SSH这个必选吧,勾选之后就可以了。

图形界面:如果有需要可以勾选。

下面给出我全部的配置:

3、开始安装

配置完属性后就回到软件主界面,点击右上角按钮,选择安装,然后就会出现>>>depoly

………………

………………

再一次出现<<

4、启动Linux和停止

安装完之后就可以点开始了。

[18:06:24] >>> start

[18:06:25] Checking file system ... done

[18:06:25] Mounting partitions:

[18:06:25] / ... done

[18:06:25] /proc ... done

[18:06:25] /sys ... done

[18:06:25] /sys/fs/selinux ... done

[18:06:25] /dev ... done

[18:06:25] /dev/pts ... done

[18:06:25] /dev/shm ... done

[18:06:25] :: Configuring core/mnt ...

[18:06:25] :: Configuring core/net ...

[18:06:26] :: Starting extra/ssh ... done

[18:06:26] <<< start

Select CodeCopy

这样子是正常的启动。在这里,我之前说的出现问题就是倒数第二行的SSH启动失败。提示 fail。在Github这个项目的issues里有解决办法,其实就是在

/data/data/ru.meefik.linuxdeploy/env/include/bootstrap/

Select CodeCopy

这个目录中对应的发行版目录下的 deploy.sh 中 basic_packages 里面添加 libpsl icu 这两个就行。要在安装之前加入,如果已经安装了可以先停止然后再重新安装。

5、用SSH连接Linux

启动Linux后就可以用SSH客户端连接了。手机上可以用JuiceSSH这个软件连接,其中地址填写127.0.0.1,用户名和密码就是之前设置的那个。电脑的话可以用Putty或者Xshell。第一次登陆如果想切换到root用户需要先激活root,用命令

sudo passwd root

Select CodeCopy

即可。它会让你输入两次密码,在输入的过程中不会有任何显示。完成后就可以用

su root

Select CodeCopy

来切换到root用户了。如果想以root用户登陆SSH,就需要更改sshd的配置文件了,因为sshd默认不允许以root登陆的。用 vi 或者 vim 编辑 /etc/ssh/sshd_conf,

#找到以下部分:

# Authentication:

LoginGraceTime 120

PermitRootLogin prohibit-password

StrictModes yes

#将PermitRootLogin 后面的值改为 yse,即:

# Authentication:

LoginGraceTime 120

PermitRootLogin yes

StrictModes yes

#   改完后执行:

service sshd restart

#重启ssh服务

Select CodeCopy

这样下次就可以直接用root登陆ssh了。

6、一些问题

上面说了一个ssh启动失败的问题

如果启动时出现ssh fail是因为使用某些wifi导致的,解决办法是使用手机的4G网络来安装就不会出现ssh fail了,删除已安装的系统的方法https://diannaobos.com/post/834.html

还有一个问题就是如果在安装的过程中出现

[23:14:55] >>> deploy

[23:14:56] ## bootstrap/rootfs : do_install && do_configure

[23:14:56] The container is already mounted.

[23:14:56] <<< deploy

Select CodeCopy

其实这个很好解决,就是你已经启动了一个Linux系统,所以要点一下停止然后再安装。

*********************************************************************************************

未待完续……

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值