Android手机运行Linux

小结一下我在 Android 手机上运行 Linux 的一些心得,顺便介绍几个在 Android 手机上几个与 Linux 相关的软件。

我在 Android 手机上是用 GNURoot(https://play.google.com/store/apps/details?id=champion.gnuroot&hl=zh_CN, 开源软件 https://github.com/corbinlc/gnuroot) 运行 Debian 7 的(root权限非必须)。网上介绍的比较多,但是由于某些原因,直接安装 GNURoot 并在软件内下载部署镜像可能不会成功,所以我的方法是手动下载 GNURoot 及操作系统镜像文件,并手动部署。

下载并安装 GNUroot(https://apk-dl.com/gnuroot)、GNURoot Wheezy 0.0.5(https://apk-dl.com/gnuroot-wheezy)。在这里(https://apk-dl.com/gnuroot-wheezy#obbfiles)或这里(https://www.dropbox.com/sh/blwlhsb986xv5hg/7VPnQZZ_fj)下载镜像文件 main.5.champion.gnuroot.wheezy.obb 。按照 https://apk-dl.com/gnuroot-wheezy#obbfiles 的方法把 *.obb 文件放入内置sd卡的目录中: /SDCARD/Android/obb/champion.gnuroot.wheezy/,如果没有相应的目录就手工创建。然后,在 GNURoot 中选择“wheezy”并点击“Create New Rootfs”就把 Debian 7 部署在手机上了。

注意,如果没有足够的机身存储空间,在对手机作了root的前提下,可安装 link2sd,在外置的 micro sdcard 划分一个 ext4 分区,把 解压的镜像目录移动到其中并链接到原处即可。

选择“wheezy”并点击“Launch Rootfs”运行 Debian,同时勾选“Launch as Fake Root”会以 root 用户进入系统。

这样,就基本上可以用像一般的 Linux 一样安装使用软件了。

这里再介绍一下在里面安装并使用 ssh、vnc 服务器的一些要点。

通常使用的那个 openssh-server 好像在上面不能运行,安装 dropbear ssh 服务器代替。参考链接:https://miracoin.wordpress.com/2014/05/28/installation-of-ssh-server-for-debian-in-android-gnuroot/ 。需要在 /etc/default/dropbear中 把 DROPBEAR_PORT (ssh服务器监听端口)改为大于 1024 的端口。另外,我还发现可能需要先安装 openssh-server,把一些相关的依赖软件先装上,再安装 dropbear,卸载 openssh-server 才行。你还可以用 adduser 命令添加普通用户,然后,用 passwd 命令设置密码。执行 /etc/init.d/dropbear start 就可以启动 ssh 服务器了。netstat -utpln 命令可以查看相关的服务端口打开没有。

VNC 服务器可以用 tightvncserver。

另外,你还可以在 GNURoot 里面部署其它 Linux 发行版,参考链接: https://nmilosev.svbtle.com/gnuroot-fedora-arch 。

除此之外,我常用的几个 Linux 相关的 Android 程序有:远程唤醒 Depicus Wake On LAN Free,SSH服务器 SSHDroid,SSH客户端 ConnectBot,VNC 客户端 VNC Viewer 等。

还有,在手机上如果输入一些命令,最好是先切换成原生的纯英文输入法。例如,我曾经在“万能五笔输入法”中切换成其中的英文输入法,在命令行中输入双引号或单引号,因为与原生的纯英文引号不同而导致命令出错。

5 thoughts on “Android手机运行Linux”

  1. 你好啊,我安装了SSHDroid2.1.2后,在电脑上用xshell ssh 连接手机,可以连接,但是中文乱码哦,咋整啊

发表评论

电子邮件地址不会被公开。 必填项已用*标注