📦 Linux-on-Android (Termux) 详细部署教程

本教程将指导您把一部旧安卓手机无需 root、无需电脑、无需云服务,通过 Termux 改造为一台带 GPU 加速的 Linux 桌面(XFCE4/KDE 等)或一个 Home Assistant 智能家居服务器。


⚙️ 部署前准备

硬件要求

  • 处理器arm64 (64位) 架构。Snapdragon (骁龙) 芯片最佳,能提供最好的 GPU 加速支持 (Turnip/Adreno 驱动)。Mali 等 GPU 也可工作,但性能会弱一些。
  • 内存:建议 3GB 以上 (4GB+ 才推荐运行 KDE Plasma)。
  • 存储:至少 5-10GB 可用空间 (安装 Wine 需要更多)。
  • 电量:建议连接充电器,避免安装过程中断电。

软件要求

请从以下官方来源安装两个必备应用,不要使用 Play Store 的过时版本

应用 下载来源 说明
Termux F-Droid 核心终端环境。
Termux-X11 GitHub Releases 显示服务器,用于渲染桌面。下载最新 .apk 安装。

🖥️ 方案一:部署 Linux 桌面 (XFCE4/KDE等)

此方案将手机变成一台完整的 Linux 图形桌面电脑。

步骤 1: 初始化 Termux 环境

打开 Termux 应用,执行以下命令,务必按顺序

1
2
3
4
5
# 防止 Android 系统在后台杀掉 Termux 进程
termux-wake-lock

# 更新 Termux 基础包 (必须,可避免 libpcre 等已知崩溃问题)
pkg upgrade -y

步骤 2: 下载并运行主安装脚本

1
2
3
4
5
6
7
8
# 下载安装脚本
curl -O https://raw.githubusercontent.com/mayukh4/linux-android/main/termux-linux-setup.sh

# 赋予执行权限
chmod +x termux-linux-setup.sh

# 运行脚本
bash termux-linux-setup.sh

脚本运行后,会提示你:

  1. 选择桌面环境
    • 1) XFCE4 (默认,推荐,资源占用低)
    • 2) LXQt (极低资源,适合老设备)
    • 3) MATE (经典风格)
    • 4) KDE Plasma (华丽,需高性能设备)
  2. 是否安装 Wine:用于运行部分 Windows 应用 (通过 Hangover + Box64 转译),根据需要选择。

安装过程约 10-30 分钟,取决于网络速度。完整日志保存在 ~/termux-setup.log

步骤 3: 启动 Linux 桌面

1
bash ~/start-linux.sh

然后打开 Termux-X11 应用 (从桌面图标启动),你的 Linux 桌面就会显示在 Termux-X11 窗口中。

要停止桌面,在 Termux 终端中按 Ctrl+C 或运行:

1
bash ~/stop-linux.sh

步骤 4: (可选) 通过 SSH 从电脑远程访问

脚本已安装 OpenSSH 服务,你可以从同一 Wi-Fi 下的电脑远程连接手机。

  1. 在 Termux 中设置密码并启动 SSH

    1
    2
    3
    4
    # 启动 SSH 服务端 (默认端口 8022)
    sshd
    # 设置你的 Termux 用户密码 (SSH 登录用)
    passwd
  2. 在手机上查看 IP 地址

    1
    2
    ip addr show wlan0 | grep 'inet '
    # 输出类似: inet 192.168.1.42/24,你的 IP 是 192.168.1.42
  3. 从电脑连接 (Linux/macOS/Windows 终端):

    1
    ssh 你的termux用户名@手机IP地址 -p 8022

    (默认用户名通常是 u0_a123 之类,可在 Termux 中运行 whoami 查看)


🏠 方案二:部署 Home Assistant 智能家居服务器

此方案将手机变成一个 24 小时在线的智能家居控制中心。

步骤 1: 运行 Home Assistant 安装脚本

Termux 终端中,运行专用安装脚本:

1
2
curl -O https://raw.githubusercontent.com/mayukh4/linux-android/main/setup-homeassistant.sh
bash setup-homeassistant.sh

安装过程约 15-45 分钟,最耗时的是在 Ubuntu 容器内编译 Home Assistant 的 Python 依赖包。脚本会询问是否安装 HACS (Home Assistant Community Store),它是社区插件/主题商店,强烈推荐安装

步骤 2: 启动 Home Assistant

1
bash ~/start-homeassistant.sh

首次启动需要 5-10 分钟 进行初始化。

步骤 3: 访问控制面板

同一 Wi-Fi 网络下的任何设备(电脑、平板)浏览器中,访问:

1
http://你的手机IP地址:8123

(手机IP地址可通过 Termux 运行 ip addr show wlan0 | grep 'inet ' 查看)

首次访问会提示创建管理员账户,按页面指引完成即可。

由于 Android 限制,无法自动发现设备,需要手动添加。

  1. 在 Home Assistant 面板中,进入 设置 → 设备与服务 → + 添加集成
  2. 搜索 “TP-Link Kasa Smart”
  3. 输入你设备的 IP 地址(可在官方 App 中查看设备信息)。
  4. 保存后,设备即可在面板中控制。其他品牌(如 Tuya/Smart Life)需通过云端 API 集成,可参考项目文档。

让 Home Assistant 保持 24 小时运行

为防止 Android 系统杀后台,执行以下命令并保持手机充电:

1
2
3
4
5
# 启用 Termux 唤醒锁
termux-wake-lock

# 在后台启动 Home Assistant
nohup bash ~/start-homeassistant.sh > ~/hass.log 2>&1 &

❓ 常见问题与排查 (FAQ)

  • 脚本中途退出:检查日志 ~/termux-setup.log 的最后几行,定位失败的包。常见原因是网络中断或特定包冲突。
  • 启动桌面后 Termux-X11 黑屏:先运行 bash ~/stop-linux.sh 停止,再重新 bash ~/start-linux.sh 启动。KDE 首次启动可能需要更长时间。
  • 桌面没有声音:PulseAudio 需要几秒钟初始化,在桌面出现后等待片刻。
  • “D-Bus” 相关错误:这是会话总线问题。脚本已包含修复,如果出现在旧安装上,请重新运行 termux-linux-setup.sh 以更新启动脚本。
  • 安装包时出现 “Conflicts” (冲突) 错误:脚本已内置冲突处理逻辑。如果仍出现,请记录设备型号和 Android 版本,在 GitHub 提交 Issue。
  • Home Assistant 设备无法自动发现:这是 Android 10+ 限制 /proc/net/dev 导致 mDNS 失效导致的。请务必手动通过 IP 地址添加设备

📚 进阶技巧

  • 自定义 GPU 驱动:GPU 环境配置保存在 ~/.config/linux-gui.sh,可手动编辑 Mesa 参数。
  • 更新 Home Assistant:运行 bash ~/upgrade-homeassistant.sh
  • SSH 免密登录:将电脑的公钥 (~/.ssh/id_rsa.pub) 追加到手机 Termux 的 ~/.ssh/authorized_keys 文件中。

更详细的配置、视频教程和故障排查,请务必查阅项目的 GitHub 仓库 和 README 文档。

本回答由 AI 生成,内容仅供参考,请仔细甄别