Termux 堪称安卓上的 WSL。几年前折腾过 Termux ,但随着网络环境越 Ban 越多,原生 Termux 在国内用起来有点麻烦(上手需要花大量时间修改配置,在国内网络环境中用起来不方便)。最近又花时间折腾了另一个神器 ZeroTermux:ZeroTermux 基于 Termux,整合了非常多的脚本和工具,在国内网络环境中部署更简单。尤其是 ZeroTermux 升级 0.118.38.1版本后,使用体验堪称完美!
通过 ZeroTermux 可以实现:
- 开启 Web 文件管理,通过网页访问 Termux 以及手机存储部分文件(基于FlieBrowser);
- 自带文件管理器管理 Termux 文件;
- 可通过脚本一键安装 Linux 发行版(Ubuntu、Kail 等等);
- 一键配置 Termux (换源、美化、安装插件);
- 一键配置 qemu 虚拟机(甚至可以一键安装 windows7 等);
下图是 ZeroTermux 通过 qemu 部署的 windows7(但说实话 arm 构架的 qemu 效率太低了,虚拟机基本上卡得不行):
ZeroTermux 真正的意义还是通过 proot 容器部署 Linux 发行版(性能损耗较少),可当作一台 Linux 主机:
准备工具
安卓手机:性能越强越好,我用的是红米NOTE12TPro;
拓展坞:有网络和电脑肯定 SSH 方便,要么就用拓展坞接键鼠,虚拟键盘敲代码属实煎熬。拓展坞用的是
SATECHI 7合1 拓展坞,因为支持边充电边使用,而且做工确实不错。可以接键鼠或者其他存储设备:
双头固态U盘:用于备份数据和 APK 存档。用的是移速的逸V Pro,大小和手机内存匹配(512G),速度飞快1000M/s传输(可惜红米NOTE12TPro 的接口拖后腿);
Termux VS ZeroTermux VS AidLux
安卓上玩 Linux 目前主要有三款应用较为强大:Termux 、ZeroTermux 、AidLux
Termux | ZeroTermux | AidLux | |
拓展性 | 5分 | 5分 | 4.5分 |
易用性 | 4分 | 5分 | 4.5分 |
界面 | 4分 | 4.5分 | 4.5分 |
功能 | 5分 | 5分 | 5分 |
网络环境 | 3分 | 4.5分 | 4.5分 |
推荐程度 | 4分 | 5分 | 4.5分 |
ZeroTermux 可以作为 Termux 新手入门版和国内版,如果是国外网络环境还是建议用原汁原味的 Termux 。AidLux 界面挺绚丽,对于新手而言桌面环境开箱即用,但命令行环境不如 Termux 舒服,使用上也有些小毛病。本文还是重点介绍 ZeroTermux:
ZeroTermux 入门
ZeroTermux 主界面和 Termux 一致,但是增加了左滑和右滑的界面:左滑是工具箱、右滑是文件管理器:
工具包括了几个类型的工具,首先介绍常用功能:包括一键更换软件源、备份和恢复(再也不用担心折腾搞坏系统环境)、优化设置工具、一键安装 Linux 发行版、QEMU 虚拟机、定时执行。
一键换源、备份还原、QEMU 虚拟机、定时执行这些不用多介绍,基本上手就会:
重点介绍一下 proot 部署 Linux 发行版。Termux 原版的部署工具是 proot-distro,通过命令行使用:
#安装 proot-distro
pkg install proot-distro
#列出支持的 Linux 发行版
proot-distro list
#proot-distro 安装 Ubuntu
proot-distro install ubuntu
#proot-distro 登录 ubuntu
proot-distro login ubuntu
而 ZeroTermux 可以通过 Moe 全能脚本、termux-linux-toolx(旧版用的是yutools)这两个脚本工具快速部署Linux 发行版(而且更适合国内网络环境)。Moe 全能脚本功能更强大,还可以配置各种系统环境,但是部署 Linux 后进入 Linux 环境稍麻烦,每次都弹出引导选择界面:
只需要通过引导界面进行设置,然后就可以快速部署好 Linux 并自动生成启动脚本,通过启动脚本命令就可以快速进入 Linux 环境:
其他功能包括:美化命令行,提供一些在线脚本工具。重点介绍一下 Zero 功能里有一个“网络 Linux 目录”,点击就会安装 FlieBrowser:
通过 FlieBrowser 你可以在浏览器中访问 Termux 文件(如果开启了手机文件授权,还可以访问部分手机文件):
开启 SSH
其实 Linux 大部分情况都是 SSH 更方便,Termux/ZeroTermux 也不例外。Termux/ZeroTermux 默认SSH 端口为 8022 而非常规的 22 端口,下面是设置命令:
#安装 SSH
pkg install openssh-server
#安装 termux-services 退出 termux 重新启动
pkg install termux-services -y
#sshd服务设为自启动
sv-enable sshd
#取消sshd自启动
sv-disable sshd
#停止sshd服务
sv down sshd
#启动sshd服务
sv up sshd
#查看sshd服务运行状态
sv status sshd
而通过 proot 部署的 Ubuntu 等系统如何安装和开启 SSH 呢:
apt update && apt upgrade
apt install openssh-server
vim /etc/ssh/sshd_config,修改 SSH 配置文件,建议修改默认端口为 4位数防止多个系统 SSH端口冲突:
#修改 ssh 端口
port 2222
#允许 root 账户登录
PermitRootLogin yes
#允许密码登录
PasswordAuthentication yes
由于 proot 部署的系统不支持 systemctl,所以只能用 service 命令启动和重启 SSH :
service ssh start
service ssh enable
Termux/ZeroTermux 部署好 Linux 后接上拓展坞,连接键鼠,这不就是一台性能不赖的 Linux 主机吗:
部署 Termux-x11
proot 部署的 Linux 系统不仅可以通过 SSH 连接,还可以通过 VNC 连接。除此之外还有一种特殊的方法 Termux-x11。Termux-x11 也是一个开源项目,Termux-x11需要安装一个app,并在 ZeroTermux 配置一下:
pkg install termux-x11-nightly xwayland
pkg install x11-repo
pkg install virglrenderer-android
#下载官方编译的 termux-x11.deb 包
dpkg -i termux-x11.deb
SSH 到 ZeroTermux 编辑该文件
~/.termux/termux.properties,添加以下内容:
allow-external-apps=true
然后输入以下命令:
termux-x11
export DISPLAY=:0
xfce4-session
如果是在 Linux 发行版环境中,进入 ubuntu,首先安装 xfce4 桌面环境:
apt install xfce4
然后输入以下命令:
export DISPLAY=:0
PULSE_SERVER=tcp:127.0.0.1
--exit-with-session startxfce4 &
打开 Termux-X11 APP 就可以看到桌面环境。命令可以新建成文件保存到该目录
/data/data/com.termux/file/usr/bin/名称
这样输入名称就能实现 Termux-x11 输出。
VNC 的连接方式,以及一些拓展玩法后续再补上吧~
总之 ZeroTermux 让安卓手机玩 Linux 的门槛又降低了不少,确实可玩性很不错!