Ubuntu Termux

17 Mar 2025 | 5 分钟阅读

Termux是什么?

Termux是一款开源免费的终端模拟器,适用于Android设备,允许在任何Android设备上运行Linux环境。还可以使用该应用程序的包管理器安装许多软件。

它是Android上第一个包含各种软件的终端应用程序,与市场上许多终端模拟器不同,后者仅提供Android提供的有限或小型实用程序。

Termux自动安装最少的基本系统,并且附加包随包管理器一起提供。几乎所有Linux命令都可用,Bash内置命令也可用。此外,还有许多其他Shell,如tcshZsh。

Termux概述

Termux的包是使用Android NDK进行交叉编译的,并且有许多兼容性补丁以使其在Android上运行。由于所有文件都安装在应用程序目录中,因此不需要root。

可以下载数千个软件包,用户可以请求新的软件包。也可以通过源代码编译软件包,因为Termux为其支持的各种构建工具(如CMake)以及许多Go、Rust、C++等编译器提供了支持。此外,Termux还可以安装多种语言的解释器,如JavaScript、Python、Ruby等。

可以在Termux中使用VNC服务器运行基于终端的编辑器,如VimEmacs,用于编辑和创建文件,还可以安装任何桌面环境(MATE、LXQt、Xfce)或窗口管理器。

Termux用户界面

Termux的用户界面很简单,只显示终端输出和额外的键行,通过向左滑动来处理会话,通过点击、长按和更多点击来操纵终端会话,以调出十个选项。此外,还可以使用Termux:Styling修改字体和颜色方案。

此外,还可以自定义额外的键行。用户可以在termux.properties文件中包含更多的控件和功能键。Termux具有触摸/鼠标支持,可用于与一些可用鼠标的程序进行交互,如htop和其他基于ncurses的软件,还可以通过在终端缓冲区上滑动来实现滚动。

Termux配置

用户可以在termux.properties文件中配置他们的终端。Termux的配置在该文件中读取,而不是使用用户需要使用任何文本编辑器进行的图形设置。

附加组件

此外,Termux包含六个附加组件,列出如下:

Ubuntu Termux
  • Termux:API- 它将Android功能暴露给许多CLI应用程序。
  • Termux:Tasker- 用于将Tasker应用程序集成到Termux的插件。
  • Termux:Float- 它在浮动窗口中执行终端会话。
  • Termux-Widget- 它允许用户在主屏幕上的快捷方式或专用小部件中执行脚本。
  • Termux:Boot- 它在启动时运行Termux命令。
  • Termux:Styling- 它允许修改终端的字体和颜色方案。

附加组件应从同一来源安装,因为附加组件使用相同的签名密钥进行签名,以便在这些应用程序之间使用相同的用户ID。

Termux历史

Termux最初于2015年发布。首次发布时已添加了一系列Linux软件。支持许多请求的功能和软件包已从应用程序存储库的GitHub issues中包含。此外,人们可以通过添加新软件包和功能来为该项目做出贡献。

Termux开发团队于2020年1月结束了对运行Android 5-6的设备的支持,Termux需要Android 7作为最低操作系统要求。

不再可以从PlayStore更新应用程序,这是由于Google Play政策的修改。建议从其他来源安装应用程序。Termux由协作者管理,截至2021年,最新的开发已超出Fornwall对该应用程序的维护。

Termux安装

Termux在安装过程中使用APK文件解压引导存档,设置许多可执行文件的正确权限,并设置主目录等所有目录。

软件包分发和管理

在Termux中,软件包从应用程序的包管理器安装,默认使用.deb格式。但由于Termux与FHS不兼容,因此无法安装基本的Debian软件包。此外,用户可以建立和提交软件包。

软件包存储库

Termux包含三个存储库。在Termux的默认引导安装中添加的包括:

Ubuntu Termux
  • main是主存储库,包括所有CLI实用程序和其他流行的语言解释器/编译器和Linux工具。
  • x11-repo包括基于X11的图形应用程序和软件包。
  • root-repo包括仅对root设备有用的软件包。然而,一些软件包可以在没有root的情况下使用,但功能可能有所限制。

软件包可用性

截至2021年,Termux包含1000多个可用软件包。然而,Termux仍然相对较小,由于各种原因(包括编译),一些软件包无法移植,与许多发行版的软件包相比。

Termux Google Play更新

Google Play Store中,Termux的0.101版本是最后更新的版本。Google Play要求应用程序针对API级别29,这会破坏私有应用程序目录中的二进制执行。

Termux开发团队建议转移到F-Droid以继续接收更新。

Bintray关闭

Bintray于2021年5月停止服务,它一直是Termux的主要托管。Termux已迁移到另一个托管服务,在旧版本Termux中安装/更新软件包会导致404/403错误。

Termux的功能

Ubuntu Termux
  • 功能丰富:fish、ZshBash以及Vim、nanoEmacs之间进行选择。从我们的SMS收件箱中grep。使用curl使用API端点,并应用rsync将我们的联系人列表备份到远程服务器。
  • 安全:使用OpenSSH客户端连接到远程服务器。Termux包含标准软件包以及完整的终端仿真,是一个开源解决方案。
  • 可定制:从Ubuntu和Debian GNU/Linux已知的APT包管理系统中安装我们想要的东西。
  • 自带电池:Termux拥有Node.js、Ruby、Python和Pearl的最新版本。
  • 可探索:在Termux中,可用的软件包与Linux和Mac上的软件包类似 - 在手机上安装man页面并在单个会话中阅读它们,同时在其他会话中体验它们。
  • 可扩展:如果我们需要连接蓝牙键盘并将设备连接到任何外部显示器,可以使用Termux做到这一点。Termux支持多种键盘快捷方式,并完全支持鼠标。
  • 可调试:使用Clang通过编译Swift、C、Rust或Go文件进行改进,并使用pkg-config和CMake创建项目。如果遇到问题需要调试,则提供GDB/lldbstrace

下一主题#