说到超移动计算,我更喜欢 PocketCHIP 或带有屏幕的 树莓派,而不是手机或平板电脑。 这些解决方案提供了一个纯粹的 Linux 环境,它尽可能地开源,并且不会对我期望的工作方式做出任何假设。
但是,有时候我唯一携带的就是手机。 虽然有很多非常棒的安卓应用程序,但对于简单的任务来说,很多都感觉有点杀鸡用牛刀,尤其是在知道在我的 Linux 桌面上的一个简单终端中可以完成多少事情之后。 我不是唯一有这种感觉的人,这就是 Termux 项目诞生的原因。
Termux 是一个安卓平台的终端模拟器和 Linux 环境应用。 它也不需要你 root 你的设备。

(Seth Kenlon, CC BY-SA 4.0)
Termux 会自动安装一个最小的基本系统,并且可以使用软件包管理器安装其他软件包,就像你在 Fedora、Debian 或类似的系统上所做的那样。
安装 Termux
安装 Termux 就像在你的安卓设备上安装任何应用一样简单。 你可以使用默认的 Google Play 商店或者开源应用仓库 F-Droid。

(Seth Kenlon, CC BY-SA 4.0)
你也可以 下载源代码 并自行编译。
类 Linux 的 Android
一旦你在手机上安装了 Termux,你实际上就拥有了一个最小的 Linux 系统,它作为应用程序运行在你的(基于 Linux 的)Android 设备上。 你可以使用大多数你熟悉的常用终端应用程序,或者现在你可以在手机上熟悉它们。 最重要的是,Termux 界面提供了软件 Ctrl、Alt、Esc 和方向键,因此必要的快捷键很容易输入——即使是在虚拟键盘上。 在长途旅行中,我更喜欢随身携带一个蓝牙键盘,这样我就可以像在桌面或笔记本电脑上一样轻松地使用 Termux。
默认情况下,Termux 运行 Bash
$ echo $0
/data/data/com.termux/files/usr/bin/bash
你习惯的大多数命令都会按预期工作,无论是内置的 Bash 命令,还是常用的 Linux 命令和实用程序。 还有其他几个 Shell 可用,包括 Zsh 和 tcsh。
安装命令
如果你习惯了 Linux,或者甚至是 Mac 上的 Homebrew 或 Windows 上的 Chocolatey,那么你已经知道如何为 Termux 安装更多命令。 它的后端软件包管理器是来自 Debian Linux 的 Apt,但 Termux 使用 pkg
命令作为简化的前端界面。 结果近似于 Fedora 的 DNF 体验的一致简洁性,我希望看到 pkg
作为更多平台上的抽象层(想象一下在 Debian、RHEL 和 Slackware 上使用相同的软件包管理命令)。
我安装的第一个软件包是一个简单的文本编辑器
$ pkg search jed
[...]
jed/stable 4.6-4 aarch64
Lightweight text editor
$ pkg install jed
运行 Jed 与在我的 RHEL 桌面上运行它完全相同。 两者都在终端中运行并使用相同的键盘快捷键。 这正是我想要的移动体验:与我的桌面相同。
远程控制
文本编辑器是一回事,但 Termux 在你第一次 SSH 进入计算机时才显示出它的真正潜力。 通过这个简单的终端,你可以登录到你有权访问的任何网络上的任何计算机。 你拥有一个便携式控制台,你可以将其用作主机或作为终端进入你可以使用的任何计算能力。
但这并不止于 SSH。 Termux 有一个 kubectl 软件包,因此通过在 kubectl
中使用 use-context
选项,你可以从任何地方维护你的 Kubernetes 集群。
为 Termux 贡献
关于 Termux,我最喜欢的事情之一是它消除了为移动项目做贡献的一个重要障碍。 所有当前的开源移动平台都是 Android 或基于 Android 的,需要特殊的工具链和相当多的 Java 知识。
本质上,Termux 将潜在的新贡献者从大部分内容中屏蔽起来,因为你可以为 Termux 编写软件包而无需了解任何关于 Android 的知识。 只要你知道如何 编写 shell 脚本,就可以为 Termux 创建一个软件包定义,因为你正在为 Termux 子系统编写一个软件包。
将终端放在你的口袋里
Termux 是学习 Linux 终端的好方法,而且很容易安装。 将 Termux 安装在你的手机或平板电脑上,查看我们的一些 终端基础知识(例如我们关于掌握 ls 和 cat 命令的文章)和我们的 Bash 速查表,并改变你使用移动设备的方式。
5 条评论