知名的Android终端模拟器和Linux环境应用Termux,通过其GitHub官方仓库发布了重大公告,核心内容是敦促用户立即更新到版本0.118.0或更高版本,以解决一个被报告为“世界可读”的关键安全漏洞。该应用的核心代码库仅包含用户界面和终端模拟部分,而软件包管理则由单独的termux-packages仓库负责。
Termux维护者特别强调了Android 12及以上版本操作系统带来的兼容性挑战,指出系统会无差别终止任何“幽灵”进程或过度使用CPU的进程,这可能导致用户在未主动退出Shell的情况下看到“Process completed (signal 9)”的错误提示。维护者提供了相关的Issue跟踪链接和文档,说明了规避进程修剪的方法,但建议用户谨慎升级至Android 12L或13。
关于应用的分发渠道,Termux提供了F-Droid、GitHub Releases和GitHub Build Action工作流等多种途径,但用户必须注意,不同来源的APK文件使用不同的签名密钥。由于Termux及其插件共享com.termux这一userId,所有组件必须使用相同的签名密钥安装,否则会导致Android包管理器报错,例如“INSTALL_FAILED_SHARED_USER_INCOMPATIBLE”。
GitHub和F-Droid渠道的更新存在时间差,F-Droid的构建发布通常比GitHub上的官方发布滞后数天甚至一周以上,且维护者无法控制F-Droid的构建和签名流程。此外,GitHub上的构建使用社区共享的测试密钥签名,这带来了安全风险,用户应警惕通过其他社交媒体渠道获取的Termux构建版本。
Termux目前在Google Play上提供了一个针对Android 11及以上版本的构建版本,但该版本的功能和稳定性不如F-Droid上的稳定版,且存在已知的功能缺失和错误。Google Play的更新机制目前会尝试覆盖F-Droid的安装,但由于签名不匹配,安装会失败,用户被建议在Play Store中禁用自动更新。
项目目前正在积极招募Termux Android应用程序的维护者,以应对日益复杂的兼容性和开发需求。对于希望从不同来源迁移的用户,官方建议先彻底卸载所有现有Termux组件,然后从单一新来源安装所有新APK,以确保签名一致性。