Termux:把安卓手机变成一台 Linux 终端

Termux 在 GitHub 上已经拿到 57.2K Star 了。

它做一件事,把安卓设备变成一个能跑命令行的 Linux 环境。不需要 root,不需要刷机,装上 APK 就能用。bash、python、git、ssh、vim 一类工具都能直接装进来。

正文顶部截图

1、 这玩意儿是干嘛的

简单说,就是手机上的终端模拟器加一套 Linux 包管理。

打开应用就是一个完整的 shell 环境,apt 风格的包管理可以装各种常用工具。Python、Node、Go、Rust 一类的语言环境能跑,git clone、ssh 远程连接也都能用。

它本身只管这个 app 和终端模拟这一层。能在里面装的各种包来自另一个仓库 termux-packages,那是一个庞大的移植生态,专门把 Linux 上的常用软件搬到安卓上跑。

2、 什么人会用它

  • 手边没电脑、又要紧急连服务器处理事的运维
  • 在手机上写点小脚本、跑点自动化任务的开发者
  • 安卓上做开发测试、玩交叉编译的人
  • 拿手机当轻量 Linux 主机、接键盘干活的极客

它不是替代桌面 Linux,但在差旅、临时、应急场景下能救场。一些用户也会拿它配 Termux:API 插件,让手机上的传感器、短信、通知一类的功能变成命令行可调用的接口。

3、 安装来源有几条路

README区域截图

目前主要三条路:F-Droid、GitHub Release、Google Play。

F-Droid 是稳定渠道,但更新会比 GitHub 慢几天到一周,因为构建发布不由 Termux 团队管。装一次大约占 180MB。

GitHub Release 适合追新的人,每个版本都挂 APK 在 Assets 里。GitHub 还提供 Build Action 工件,每次提交都有新包,适合不想等发布、马上要试用新功能的。GitHub 的包分架构版和通用版,架构版能省到 120MB。

Google Play 是实验通道,只面向 Android 11 及以上,功能比另外两个渠道少一些。Termux 团队明确说,能装 F-Droid 或 GitHub 版的就别用 Play 版本。

一个关键限制:不同来源的 APK 签名不同,Termux 本体和所有插件用同一个 shared user id,必须全部从一个来源装。混装会直接报签名不兼容,安装失败。

4、 Android 12 上的坑

安卓 12 及以上系统有更激进的进程清理策略。

系统会杀掉幻影进程,限制单台设备所有 app 加起来不能超过 32 个。CPU 占用偏高的进程也会被强制结束。表现就是终端里突然跳出 Process completed (signal 9),shell 自己挂了,不是用户主动退的。

官方给了三种缓解:禁用电池优化、调整后台进程限制、或者升级到 Android 12L/13 看是否有相关选项。root 用户有更多空间绕开,普通用户基本只能接受这个限制。

5、 插件生态

Termux 本体之外还有几个可选插件,按需装:

  • Termux:API 调用手机硬件和系统能力,比如摄像头、定位、通知
  • Termux:Boot 开机自启脚本
  • Termux:Float 浮窗终端
  • Termux:Styling 字体配色
  • Termux:Tasker 和 Tasker 联动
  • Termux:Widget 桌面快捷方式跑命令

插件本身不执行命令,命令通过 intent 发到 Termux 本体里跑。所以调试要同时开本体和插件的日志级别,到设置里把 Log Level 调到 Verbose 才能看全。

6、 适合谁、不适合谁

适合:有命令行使用习惯、需要一台随身 Linux 环境的人;安卓设备多、想拿一台当轻量服务器的人;做安卓交叉编译或脚本自动化的开发者。

不适合:完全没碰过 Linux 命令行的人,Termux 不教你怎么用 Linux。也不适合拿来跑重型服务,长时间高负载在手机上既不散热也不可持续,Android 12 之后更不行。

它最合适的位置是口袋里的应急终端。需要的时候能开壳就用,不需要的时候安静躺在 app 抽屉里。

ndroid 12 之后更不行。

它最合适的位置是口袋里的应急终端。需要的时候能开壳就用,不需要的时候安静躺在 app 抽屉里。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐