Termux 使用笔记
适用环境:Redmi 12C / Android 14 / Termux 0.119.0-beta3
核心原则:Termux 与 Termux:API、Termux:Boot 必须来自同一来源(推荐 F-Droid),否则命令会卡死。
1. 安装与初始化
1 | # 更新包列表 |
MIUI 必做设置
- 设置 → 应用管理 → Termux → 省电策略 → 无限制
- 允许 自启动、后台活动
- 最近任务里把 Termux 卡片 下拉锁定
- 对 Termux:API 也做同样设置
2. 基础命令
1 | pkg install <包名> # 安装软件包 |
3. SSH 远程连接
1 | pkg install openssh |
电脑端连接:
1 | ssh -p 8022 用户名@手机IP |
4. Flask 文件服务器
常用启动方式:
1 | cd ~/filebrowser |
后台常驻:
1 | nohup python app.py > server.log 2>&1 & |
关键优化点:
send_file(..., conditional=True):支持断点续传和视频拖进度threaded=True:传文件时网页不卡- 关闭 werkzeug 日志:
logging.getLogger('werkzeug').setLevel(logging.ERROR) - 目录分页:每页 200 个文件,避免大目录卡死
safe_path():防止../路径穿越- 根目录按需修改:
BASE_DIR = '/storage/emulated/0/Download'
5. tmux 会话管理
1 | tmux new -s fileserver # 新建会话 |
脱离会话:按 Ctrl+B,松开,再按 D。
报错
duplicate session: fileserver说明会话已存在,直接tmux attach -t fileserver。
6. Termux:API 硬件调用
安装:
- 安装 Termux:API APK
- Termux 内执行:
pkg install termux-api
常用命令:
1 | termux-battery-status # 电池信息 |
Python 调用拍照时建议加:
1 | subprocess.run( |
若超时:
- 确认 Termux:API 已安装且同源
- 运行
termux-api-start - 检查 MIUI 是否冻结 Termux:API
- 可加
timeout 10强制结束
7. 开机自启
安装 Termux:Boot,然后:
1 | mkdir -p ~/.termux/boot |
内容示例:
1 |
|
赋权:
1 | chmod +x ~/.termux/boot/start-fileserver.sh |
8. 内网穿透
| 方案 | 适合场景 | 注意 |
|---|---|---|
| Tailscale | 自己访问,速度最快 | 需手机和电脑登录同一账号 |
| Cloudflare Tunnel | 分享给别人 | 免费版单次上传限制 100MB |
| FRP | 已有云服务器 | 需自己配 frps / frpc |
推荐:优先 Tailscale,访问 http://100.x.x.x:5000。
9. 常见问题
gcc不可用 → 用clang替代pkg install termux-api没反应 → 还要装 Termux:API APK- 拍照命令超时 → 检查 API 服务、权限、MIUI 后台限制
- 外网访问不了 → 先确认同一 Wi-Fi,再考虑 Tailscale
- 传输慢 → 大文件走 SFTP,Flask 只做浏览管理