概述
本文介绍如何在旧款安卓手机上通过 Termux 环境,结合 AstrBot 框架与 NapCat 客户端,搭建一个支持大语言模型的 QQ 个人机器人。该方案无需 Root 权限,利用 Proot 模拟 Linux 环境运行 Python 服务。
前置准备
- Termux 安装:建议从 F-Droid 下载最新版,Google Play 版本可能滞后。
- 存储权限:首次运行需授予文件读写权限。
- 网络环境:部分命令(如 git clone)可能需要代理或加速器支持。
环境配置
1. 初始化 Termux
打开 Termux,更新软件源并安装基础工具:
pkg update && pkg upgrade
pkg install python git wget curl
如需优化下载速度,可执行 termux-change-repo 选择中国大陆镜像源。
2. 申请存储权限
执行以下命令授权访问本地存储:
termux-setup-storage
3. 安装 Ubuntu 容器
使用 proot-distro 安装轻量级 Ubuntu 环境:
pkg install uv git proot-distro
proot-distro install ubuntu
proot-distro login ubuntu
进入 Ubuntu 后,由于 uv 需要 Python 3.10,而官方源通常只提供旧版本,需添加 deadsnakes PPA:
apt update && apt install software-properties-common
add-apt-repository ppa:deadsnakes/ppa && apt update
apt install python3.10
部署 AstrBot
1. 克隆项目
确保当前路径为根目录,避免后续路径错误:
git clone https://github.com/AstrBotDevs/AstrBot.git
cd AstrBot
若遇到连接超时,请检查网络代理设置。
2. 启动服务
使用 uv 运行主程序:
uv run main.py
启动成功后,终端会显示 WebUI 访问地址(默认 localhost:6185)。默认账号密码均为 astrbot。
后台运行建议: 为避免关闭终端导致服务中断,推荐使用 screen 管理会话:
apt install screen
screen -S astrbot
# 此时重新运行启动命令
uv run main.py
# 按 Ctrl+A+D 分离会话
# 恢复会话:screen -r astrbot
部署 NapCat
NapCat 是用于连接 QQ 的 OneBot 协议实现。在 Termux 中可通过脚本一键部署:
curl -o napcat.termux.sh https://nclatest.znin.net/NapNeko/NapCat-Installer/main/script/install.termux.sh && bash napcat.termux.sh


