说到超移动计算,我更喜欢带屏幕的PocketCHIP或Raspberry Pi,而不是手机或平板电脑。这些解决方案提供了一个纯粹的Linux环境,在硬件允许的情况下尽可能地开放源代码,并且对我期望的工作方式不做任何假设。
不过,有时候我身上只有一部手机。虽然有一些非常棒的Android应用程序,但很多人觉得对于简单的任务来说已经足够了,尤其是知道在我的Linux桌面上一个简单的终端可以完成多少工作。我不是唯一有这种感觉的人,这就是Termux项目诞生的原因。
Termux 是 Android 手机中的一个 Linux环境的终端模拟器应用。它不需要 root 你的手机。

Termux 会自动安装一个最小的基本的系统,可以使用包管理器安装其他的附加包,就像使用Fedora、Debian之类的工具一样。
安装 Termux
安装Termux就像在Android设备上安装任何应用程序一样简单。您可以使用默认的googleplay商店或开源应用程序库F-Droid。

也可以下载源码(https://github.com/termux/termux-app), 然后自己编译安装。
类 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命令和util数组,您所使用的大多数命令都可以正常使用。还有其他几种shell可用,包括Zsh和tcsh。
安装命令
如果你已经习惯了Linux,或者苹果系统上的Homebrew, 或者Windows系统中的Chocolatey,那么你应该知道如何为Termux安装更多的命令了。它的后台包管理器是源自Debian Linux的Apt,但是Termux使用pkg命令作为简化的前端接口。结果接近于Fedora的DNF体验的一致简单性,我很想将pkg看作更多平台上的抽象层(想象一下在Debian、RHEL和Slackware上使用相同的包管理命令)。
我安装的第一个工具包是一个简单的文本编辑器:
$ pkg search jed[...]jed/stable 4.6-4 aarch64Lightweight text editor$ pkg install jed
运行Jed和在我的真实桌面上运行它完全一样。两者都在终端中运行并使用相同的键盘快捷键。这正是我想要的移动体验:和我的桌面一样。
远程控制
文本编辑器是一回事,但是Termux在您第一次使用SSH连接到计算机时就显示了它的真正潜力。通过这个简单的终端,你可以登录到任何网络上的任何计算机。您有一个便携式控制台,可以作为主机或终端使用,以获得任何可用的计算能力。
不过,它的功能不仅仅限于ssh。kubectl有一个Termux包,因此通过使用kubectl中的use-context选项,您可以从任何地方维护Kubernetes集群。
为Termux做贡献
关于Termux,我最喜欢的一点是它移除了为移动项目做贡献的一个重要障碍。当前所有的开源移动平台都是Android或基于Android的,需要一个特殊的工具链和相当多的Java知识。
Termux从本质上来说,可以保护一个潜在的新贡献者不受这些影响,因为你可以在不了解Android的情况下为Termux编写包。您可以为Termux创建包定义,只要您知道如何编写shell脚本,因为您正在为Termux子系统编写包。
在口袋里放一个终端
Termux是学习Linux终端的一个很好的方法,而且它很容易安装。把Termux放到你的手机或平板电脑上,看看我们的一些终端基础知识(比如我们关于掌握ls和cat命令的文章)和Bash备忘单,这会改变你使用手机的方式。
本文作者:Seth Kenlon,翻译:GLIU
原文地址:
https://opensource.com/article/20/8/termux




