<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Home Assistant on 我的博客</title><link>https://blog.5616760.com/tags/home-assistant/</link><description>Recent content in Home Assistant on 我的博客</description><generator>Hugo -- gohugo.io</generator><language>zh</language><lastBuildDate>Fri, 02 Oct 2026 16:50:00 +0800</lastBuildDate><atom:link href="https://blog.5616760.com/tags/home-assistant/index.xml" rel="self" type="application/rss+xml"/><item><title>抽屉里的旧安卓手机别扔：两条脚本，把它变成 Linux 桌面或 Home Assistant 服务器</title><link>https://blog.5616760.com/0029.html</link><pubDate>Fri, 02 Oct 2026 16:50:00 +0800</pubDate><guid>https://blog.5616760.com/0029.html</guid><description>&#10; &lt;blockquote&gt;&#10; &lt;p&gt;本文整理自 GitHub 项目 &lt;a class="link" href="https://github.com/mayukh4/linux-android" target="_blank" rel="noopener"&#10; &gt;mayukh4/linux-android&lt;/a&gt;（MIT 许可）的中文 README、&lt;code&gt;termux-linux-setup.sh&lt;/code&gt; 与 &lt;code&gt;setup-homeassistant.sh&lt;/code&gt; 的行为说明、以及 README 的故障排除与进阶章节。命令、限制与版本对应关系忠于原文；章节组织、选型建议与评述为本文编辑归纳。数据截至 2026-10-02（仓库 3.6k star / 271 fork，创建于 2026-03-01，主要语言 Shell，配套 YouTube 完整视频教程）。&lt;/p&gt;&#10;&#10; &lt;/blockquote&gt;&#10;&lt;p&gt;每个人的抽屉里大概都躺着一两台旧安卓手机。屏幕碎了、电池鼓了、系统不更新了 —— 但 CPU 是八核的，内存 4 GB 起，闪存 64 GB，还带一块支持 Vulkan 的 GPU。&lt;strong&gt;它只是不能再当手机用了，不是不能再当计算机用了。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;code&gt;mayukh4/linux-android&lt;/code&gt; 干的事情很直接：用 &lt;a class="link" href="https://termux.dev" target="_blank" rel="noopener"&#10; &gt;Termux&lt;/a&gt; 在这台手机上架起两个东西之一 —— 一个&lt;strong&gt;完整的 GPU 加速 Linux 桌面&lt;/strong&gt;，或者一个&lt;strong&gt;7×24 的 Home Assistant 智能家居中枢&lt;/strong&gt;。前提条件是标语里写的三句：不需要电脑、不需要 Root、不需要云服务。&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="一先选路线桌面还是服务器"&gt;一、先选路线：桌面还是服务器&#10;&lt;/h2&gt;&lt;p&gt;两条路可以同时跑在同一部手机上，互不冲突 —— 这一点很多人不知道。但你得先想清楚主用途，因为它们的资源画像完全不同。&lt;/p&gt;&#10;&lt;pre class="mermaid" style="visibility:hidden"&gt;flowchart TD&#10; A["📱 旧安卓手机&lt;br/&gt;+ Termux + Termux-X11"]&#10;&#10; A --&gt; B["🖥️ 路线一：Linux 桌面&lt;br/&gt;&lt;i&gt;termux-linux-setup.sh&lt;/i&gt;"]&#10; A --&gt; C["🏠 路线二：智能家居服务器&lt;br/&gt;&lt;i&gt;setup-homeassistant.sh&lt;/i&gt;"]&#10;&#10; B --&gt; B1["GPU 加速桌面&lt;br/&gt;XFCE4 / LXQt / MATE / KDE"]&#10; B1 --&gt; B2["Firefox · VLC · SSH&lt;br/&gt;Python · Wine（可选）"]&#10;&#10; C --&gt; C1["proot Ubuntu 容器"]&#10; C1 --&gt; C2["Home Assistant Core&lt;br/&gt;+ HACS"]&#10; C2 --&gt; C3["控制 WiFi 灯 / 插座&lt;br/&gt;浏览器访问 :8123"]&#10;&#10; style A fill:#2d6cdf,stroke:#1c4a9e,color:#fff&#10; style B fill:#3b7a57,stroke:#265239,color:#fff&#10; style C fill:#8a6d3b,stroke:#5f4a25,color:#fff&lt;/pre&gt;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Linux 桌面&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;智能家居服务器&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;是什么&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;手机上的完整 GUI 桌面环境&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;控制 WiFi 设备的 Home Assistant 中枢&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;典型用途&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;学 Linux、Python 开发、SSH 服务器、浏览网页、放媒体&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;控智能灯/插座、做自动化、看仪表盘&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;入口脚本&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;bash termux-linux-setup.sh&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;bash setup-homeassistant.sh&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;耗时&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;10–30 分钟&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;15–45 分钟&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;跑起来长什么样&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Termux-X11 应用里出现一个桌面&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;局域网浏览器打开 &lt;code&gt;http://手机IP:8123&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;一个判断标准：&lt;strong&gt;如果你要的是一台能插键盘鼠标的&amp;quot;小电脑&amp;quot;，走路线一；如果你要的是一个插上充电器就再也不碰的&amp;quot;家电&amp;quot;，走路线二。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="二门槛硬件和软件各看什么"&gt;二、门槛：硬件和软件各看什么&#10;&lt;/h2&gt;&lt;h3 id="硬件"&gt;硬件&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;arm64（64 位）&lt;/strong&gt; 处理器的安卓机 —— 32 位机器直接出局&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;3 GB 以上内存&lt;/strong&gt;（选 KDE Plasma 建议 4 GB 以上）&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;5–10 GB 可用空间&lt;/strong&gt;，装 Wine 还要更多&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;高通骁龙最优&lt;/strong&gt; —— 因为 Adreno GPU 有开源的 Turnip Vulkan 驱动，能拿到接近原生的 GPU 加速。脚本也支持 Mali 和其他 GPU，但只能退回软件渲染&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="软件"&gt;软件&#10;&lt;/h3&gt;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;应用&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;从哪装&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;注意&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Termux&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a class="link" href="https://f-droid.org/en/packages/com.termux/" target="_blank" rel="noopener"&#10; &gt;F-Droid&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;别用 Play Store 版本，已过时&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Termux-X11&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a class="link" href="https://github.com/termux/termux-x11/releases" target="_blank" rel="noopener"&#10; &gt;GitHub Releases&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;下载最新 &lt;code&gt;.apk&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&#10; &lt;blockquote&gt;&#10; &lt;p&gt;&lt;strong&gt;Root 的问题：&lt;/strong&gt; 脚本在原版安卓上就能跑，不需要 Root。作者的演示机是一加 5T 刷的 LineageOS，但那只是演示环境，不是前置条件。&lt;/p&gt;&#10;&#10; &lt;/blockquote&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="三路线一桌面环境怎么选"&gt;三、路线一：桌面环境怎么选&#10;&lt;/h2&gt;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;#&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;桌面环境&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;适合谁&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;资源占用&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;XFCE4&lt;/strong&gt; &lt;em&gt;（默认）&lt;/em&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;大多数人。快、可定制、带 macOS 风格 Dock&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;低–中&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;2&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;LXQt&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;老机器或低内存（2–3 GB）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;极低&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;MATE&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;想要经典桌面手感&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;中&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;4&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;KDE Plasma&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;只给高性能机 —— Windows 11 风格&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;高&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;拿不定主意就选 &lt;strong&gt;XFCE4&lt;/strong&gt;。这不是客气话，是脚本把 XFCE4 设为默认的原因。&lt;/p&gt;&#10;&lt;h3 id="四步装完"&gt;四步装完&#10;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;步骤 1 —— 装应用。&lt;/strong&gt; 从 F-Droid 装 Termux，从 GitHub 装 Termux-X11，两个应用的权限全部授予。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;步骤 2 —— 先升级 Termux 本身，这步别跳：&lt;/strong&gt;&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;termux-wake-lock&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pkg upgrade -y&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;termux-wake-lock&lt;/code&gt; 让 Termux 在熄屏后继续跑 —— 没有它，安卓可能在安装中途把进程杀掉。&lt;code&gt;pkg upgrade&lt;/code&gt; 则先更新基础系统，绕开 &lt;code&gt;libpcre&lt;/code&gt; 和 &lt;code&gt;libandroid-selinux&lt;/code&gt; 的已知崩溃。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;步骤 3 —— 下载并运行：&lt;/strong&gt;&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -O https://raw.githubusercontent.com/mayukh4/linux-android/main/termux-linux-setup.sh&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;chmod +x termux-linux-setup.sh&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bash termux-linux-setup.sh&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;脚本只会问你两件事：选哪个桌面、要不要装 Wine。&lt;strong&gt;其余全自动&lt;/strong&gt;，耗时 10–30 分钟。全过程日志落在 &lt;code&gt;~/termux-setup.log&lt;/code&gt;，出问题先看它。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;步骤 4 —— 启动：&lt;/strong&gt;&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bash ~/start-linux.sh&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后&lt;strong&gt;切到 Termux-X11 应用&lt;/strong&gt;，桌面在那里渲染 —— 不在 Termux 终端里。这是新手最容易卡住的地方。停止桌面用 &lt;code&gt;bash ~/stop-linux.sh&lt;/code&gt;。&lt;/p&gt;&#10;&lt;h3 id="一条命令装进来的东西"&gt;一条命令装进来的东西&#10;&lt;/h3&gt;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;组件&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;作用&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Termux-X11&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;显示服务器，负责把桌面画到屏幕上&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Mesa / Zink&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;通过 Vulkan 实现 OpenGL，GPU 加速的入口&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Turnip&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;高通 Adreno 的开源 Vulkan 驱动（检测到时装）&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;PulseAudio&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;音频&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Firefox / VLC&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;完整桌面浏览器 / 多媒体播放&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;git、wget、curl&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;基础工具链&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Python 3 + pip&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;运行时与包管理&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;OpenSSH&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;SSH 服务端与客户端&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;Wine&lt;/strong&gt; &lt;em&gt;（可选）&lt;/em&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Hangover + Box64，跑 Windows x86 应用&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h3 id="gpu-加速靠硬件属性不靠品牌"&gt;GPU 加速：靠硬件属性，不靠品牌&#10;&lt;/h3&gt;&lt;p&gt;这一处设计值得单独说。脚本&lt;strong&gt;不看品牌名，而是读硬件属性&lt;/strong&gt;来判定 GPU 类型 —— 原因很实在：三星在不同地区同时用 Adreno 和 Mali，按品牌检测直接误判。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;高通 Adreno（骁龙）：&lt;/strong&gt; 走开源 &lt;strong&gt;Turnip&lt;/strong&gt; Vulkan 驱动 + &lt;strong&gt;Zink&lt;/strong&gt;（Vulkan 之上的 OpenGL），性能接近原生。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Mali / 其他：&lt;/strong&gt; 回退到 &lt;strong&gt;Zink + SwRast&lt;/strong&gt;（软件 Vulkan）。功能能用，但&lt;strong&gt;强烈建议配轻量桌面&lt;/strong&gt;（XFCE4 或 LXQt），否则会卡到怀疑人生。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;GPU 环境变量写在 &lt;code&gt;~/.config/linux-gpu.sh&lt;/code&gt;，每次 &lt;code&gt;start-linux.sh&lt;/code&gt; 自动加载，可以直接改：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export GALLIUM_DRIVER&lt;span style="color:#f92672"&gt;=&lt;/span&gt;llvmpipe &lt;span style="color:#75715e"&gt;# 强制软件渲染（调试用）&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export MESA_DEBUG&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; &lt;span style="color:#75715e"&gt;# 打开 Mesa 调试输出&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export MESA_GL_VERSION_OVERRIDE&lt;span style="color:#f92672"&gt;=&lt;/span&gt;3.3&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="顺手把它变成无头-ssh-服务器"&gt;顺手把它变成无头 SSH 服务器&#10;&lt;/h3&gt;&lt;p&gt;装了 OpenSSH 之后，你可以在同 WiFi 的任何电脑上 SSH 进来 —— 用正式键盘写代码，让手机负责跑。&lt;/p&gt;&#10;&lt;p&gt;在 &lt;strong&gt;Termux 应用本身&lt;/strong&gt;（不是桌面里的终端）执行：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sshd &lt;span style="color:#75715e"&gt;# 启动 SSH 服务&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;passwd &lt;span style="color:#75715e"&gt;# 设置登录密码&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ip addr show wlan0 | grep &lt;span style="color:#e6db74"&gt;&amp;#39;inet &amp;#39;&lt;/span&gt; &lt;span style="color:#75715e"&gt;# 查 IP，形如 192.168.1.42&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;whoami &lt;span style="color:#75715e"&gt;# 查用户名，形如 u0_a123&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后在电脑上：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ssh u0_a123@192.168.1.42 -p &lt;span style="color:#ae81ff"&gt;8022&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;端口是 8022，不是 22&lt;/strong&gt; —— 22 端口需要 Root。嫌命令长就写进 &lt;code&gt;~/.ssh/config&lt;/code&gt;：&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;Host myphone&#10; HostName 192.168.1.42&#10; User u0_a123&#10; Port 8022&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;之后 &lt;code&gt;ssh myphone&lt;/code&gt; 即可。传文件用 &lt;code&gt;scp -P 8022 ...&lt;/code&gt;，或者任何 SFTP 客户端（FileZilla、Cyberduck）连同一个 IP 和 8022 端口。&lt;/p&gt;&#10;&lt;p&gt;想让 &lt;code&gt;sshd&lt;/code&gt; 跟着 Termux 一起起来：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;echo &lt;span style="color:#e6db74"&gt;&amp;#39;sshd 2&amp;gt;/dev/null&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; ~/.bashrc&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="wine聊胜于无"&gt;Wine：聊胜于无&#10;&lt;/h3&gt;&lt;p&gt;选了 Wine 的话，它是 &lt;strong&gt;Hangover Wine + Box64&lt;/strong&gt; 的组合，把 Windows x86 调用翻译到 ARM64。&lt;strong&gt;简单小工具一般能跑，大型软件和游戏基本别指望。&lt;/strong&gt; 配置在桌面终端里跑 &lt;code&gt;winecfg&lt;/code&gt;，或点桌面上的 Wine Config 快捷方式 —— 注意 Wine 需要桌面已经跑起来，它没有自己的显示环境。&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="四路线二home-assistant-智能家居中枢"&gt;四、路线二：Home Assistant 智能家居中枢&#10;&lt;/h2&gt;&lt;p&gt;这条路的思路是把旧手机变成&lt;strong&gt;全天候的家居中心&lt;/strong&gt;：Home Assistant Core 跑在手机上一个轻量 Ubuntu 容器里（借助 &lt;code&gt;proot-distro&lt;/code&gt;），本地设备不需要云，不需要 Root。&lt;/p&gt;&#10;&lt;h3 id="能控什么"&gt;能控什么&#10;&lt;/h3&gt;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;设备类型&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;品牌示例&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;连接方式&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;WiFi 智能灯&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;TP-Link Kasa、Govee、LIFX&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;局域网直连 IP&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;WiFi 智能插座&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;TP-Link Kasa、Wemo&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;局域网直连 IP&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;云连接设备&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Tuya / Smart Life、Govee&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;云 API（在外网也能控）&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;其他 WiFi 设备&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;智能开关、传感器、摄像头&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;IP 或云集成&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h3 id="安卓上四个硬限制先说清楚别装完才发现"&gt;安卓上四个硬限制（先说清楚，别装完才发现）&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;没有蓝牙。&lt;/strong&gt; HA 访问不到手机的蓝牙协议栈。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;没有 USB 适配器。&lt;/strong&gt; Zigbee / Z-Wave USB 网关需要 Root 和内核支持，走不通。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;没有自动发现（mDNS）。&lt;/strong&gt; Android 10+ 挡住了 &lt;code&gt;/proc/net/dev&lt;/code&gt;，Zeroconf 失效。&lt;strong&gt;必须用 IP 或云 API 手动添加设备。&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;没有 Docker / 插件。&lt;/strong&gt; 这是 &lt;strong&gt;HA Core，不是 HA OS&lt;/strong&gt; —— 依赖 Docker 的社区插件跑不了。但核心集成（2000+ 个）都能正常用。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;换句话说：&lt;strong&gt;这台机器适合控 WiFi 设备，不适合当 Zigbee 网关。&lt;/strong&gt; 后者请老老实实买树莓派或专用网关。&lt;/p&gt;&#10;&lt;h3 id="安装与三个脚本"&gt;安装与三个脚本&#10;&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -O https://raw.githubusercontent.com/mayukh4/linux-android/main/setup-homeassistant.sh&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bash setup-homeassistant.sh&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;耗时 &lt;strong&gt;15–45 分钟&lt;/strong&gt;，最慢的一步是在 Ubuntu 容器里编译 Home Assistant 的 Python 依赖（numpy、cryptography 这类）。&lt;/p&gt;&#10;&lt;p&gt;装完你会得到三个脚本：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bash ~/start-homeassistant.sh &lt;span style="color:#75715e"&gt;# 启动&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bash ~/stop-homeassistant.sh &lt;span style="color:#75715e"&gt;# 停止&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;bash ~/upgrade-homeassistant.sh &lt;span style="color:#75715e"&gt;# 升级&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="python-版本天花板不是装坏了"&gt;Python 版本天花板：不是装坏了&#10;&lt;/h3&gt;&lt;p&gt;这是全文最值得记住的一段。&lt;strong&gt;全新安装拿到的 HA 版本会比官网显示的旧&lt;/strong&gt;，原因不是安装失败，而是 &lt;code&gt;pip&lt;/code&gt; 只会装解释器满足 &lt;code&gt;requires-python&lt;/code&gt; 的最新版本，到顶就停：&lt;/p&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;容器 Python&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;能跑的最新 Home Assistant&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3.12&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;2025.1.x&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3.13.0 – 3.13.1&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;2025.5.x&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3.13.2+&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;2026.2.x&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3.14.2+&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;2026.3 及以后&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;（依据 PyPI 上各版本的 &lt;code&gt;requires-python&lt;/code&gt; 核实。）&lt;/p&gt;&#10;&lt;p&gt;而 &lt;code&gt;proot-distro install ubuntu&lt;/code&gt; 跟的是 Ubuntu 滚动发行版，&lt;strong&gt;你拿到哪个 Python 取决于装容器的时间&lt;/strong&gt;。&lt;code&gt;bash ~/upgrade-homeassistant.sh&lt;/code&gt; 会打印你的 Python 版本，并在触及上限时明确告诉你。想冲破这个上限（换 Python 3.14）README 里给了英文文档的指引，但那要替换正在运行的安装所用解释器，因此没有自动化 —— 属于&amp;quot;知道有这条路，但别轻易走&amp;quot;。&lt;/p&gt;&#10;&lt;h3 id="访问与添加设备"&gt;访问与添加设备&#10;&lt;/h3&gt;&lt;p&gt;HA 起来后，&lt;strong&gt;同一 WiFi 网络中的任何设备&lt;/strong&gt;打开浏览器：&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;http://&amp;lt;手机IP&amp;gt;:8123&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;首次启动需要 &lt;strong&gt;5–10 分钟&lt;/strong&gt; 初始化，首次访问时创建管理员账户。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;添加 TP-Link Kasa：&lt;/strong&gt; 在常用手机的 Kasa 应用里记下设备 IP（设备设置 → 设备信息）→ HA 里「设置 → 设备与服务 → + 添加集成」→ 搜 &amp;ldquo;TP-Link Kasa Smart&amp;rdquo; → 填 IP。&lt;strong&gt;因为 mDNS 被禁，永远靠 IP 手动添加。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;添加 Tuya / Smart Life：&lt;/strong&gt; 走云 API，不受本地网络限制。到 &lt;a class="link" href="https://iot.tuya.com" target="_blank" rel="noopener"&#10; &gt;iot.tuya.com&lt;/a&gt; 建免费开发者账户 → 建&lt;strong&gt;云项目&lt;/strong&gt;（选数据中心区域，添加&lt;strong&gt;智能家居&lt;/strong&gt; API）→ 「设备」里&lt;strong&gt;关联涂鸦 App 账号&lt;/strong&gt;扫二维码 → HA 里添加 Tuya 集成，填 &lt;strong&gt;Access ID&lt;/strong&gt; 和 &lt;strong&gt;Access Secret&lt;/strong&gt;。&lt;/p&gt;&#10;&lt;h3 id="hacs社区插件商店"&gt;HACS：社区插件商店&#10;&lt;/h3&gt;&lt;p&gt;&lt;a class="link" href="https://www.hacs.xyz" target="_blank" rel="noopener"&#10; &gt;HACS&lt;/a&gt; 是 HA 核心之外那些集成、主题、Lovelace 卡片的商店，安装脚本会问你要不要装。&lt;/p&gt;&#10;&#10; &lt;blockquote&gt;&#10; &lt;p&gt;&lt;strong&gt;务必在装任何其他自定义集成之前先装 HACS。&lt;/strong&gt; 如果 &lt;code&gt;custom_components/&lt;/code&gt; 里已经有手工装的集成，请先删掉再装，否则 HACS 会处于损坏状态。&lt;/p&gt;&#10;&#10; &lt;/blockquote&gt;&#10;&lt;h3 id="让它-724-跑着"&gt;让它 7×24 跑着&#10;&lt;/h3&gt;&lt;p&gt;安卓默认会在 Termux 切后台时杀进程。要常驻：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# 方式 1：nohup 后台跑&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;termux-wake-lock&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nohup bash ~/start-homeassistant.sh &amp;gt; ~/hass.log 2&amp;gt;&amp;amp;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; &amp;amp;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# 方式 2：Termux 启动时自动跑（写进 ~/.bashrc）&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;echo &lt;span style="color:#e6db74"&gt;&amp;#39;termux-wake-lock &amp;amp;&amp;amp; nohup bash ~/start-homeassistant.sh &amp;gt; ~/hass.log 2&amp;gt;&amp;amp;1 &amp;amp;&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; ~/.bashrc&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;termux-wake-lock&lt;/code&gt; 阻止安卓挂起进程。&lt;strong&gt;接上充电器，它就变成了一台专用常驻服务器。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="五排障速查表"&gt;五、排障速查表&#10;&lt;/h2&gt;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;现象&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;原因与处理&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;脚本中途退出但没报错&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;看 &lt;code&gt;~/termux-setup.log&lt;/code&gt;，脚本记录了每个包的结果，最后一行指出是哪个包挂的&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;跑了 &lt;code&gt;start-linux.sh&lt;/code&gt; 桌面没出现&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;手动打开 Termux-X11 应用 —— 桌面渲染在它里面，不在 Termux 终端里&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Termux-X11 里黑屏&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;stop-linux.sh&lt;/code&gt; 再 &lt;code&gt;start-linux.sh&lt;/code&gt;。&lt;strong&gt;KDE Plasma 首次启动要比其他桌面多等 20–30 秒&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;library not found&lt;/code&gt; / &lt;code&gt;cannot link executable&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;libpcre 崩溃。彻底关掉 Termux → 重开 → &lt;code&gt;pkg upgrade -y&lt;/code&gt; → 重跑脚本&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;Unable to contact settings server&lt;/code&gt; / &lt;code&gt;dbus-XXXX: Connection refused&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;D-Bus 会话总线没起来，或上次被强杀后留下失效 socket。新版 &lt;code&gt;start-linux.sh&lt;/code&gt; 会先清残留状态再在固定地址起总线；老版本重跑 &lt;code&gt;termux-linux-setup.sh&lt;/code&gt; 或手动修（&lt;code&gt;pkill -9 -f dbus-daemon&lt;/code&gt; + 清 &lt;code&gt;~/.dbus&lt;/code&gt; 与 &lt;code&gt;$PREFIX/tmp/dbus-*&lt;/code&gt; + 用 &lt;code&gt;DBUS_SESSION_BUS_ADDRESS=&amp;quot;unix:path=$PREFIX/var/run/dbus/session_bus_socket&amp;quot;&lt;/code&gt; 重启 daemon）&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;vulkan-loader-generic : Conflicts: vulkan-loader-android&lt;/code&gt;，或 dpkg 报 &lt;code&gt;trying to overwrite libvulkan_freedreno.so&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;两个独立原因，现均已修复：前者是 generic 包同时 provides 和 conflicts android 包，脚本改为直接装 generic；后者是第三方 &lt;code&gt;mesa-zink-vulkan-icd-freedreno&lt;/code&gt;（Mesa 22）与主仓库 Turnip（Mesa 26）打包了同名 &lt;code&gt;.so&lt;/code&gt;，脚本改为只选一套。&lt;strong&gt;老安装遇到这两个报错大多 GPU 加速仍可用，重跑脚本即可清理&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;unmet dependencies&lt;/code&gt; / &lt;code&gt;Conflicts&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;脚本的 &lt;code&gt;safe_install_pkg&lt;/code&gt; 会从 &lt;code&gt;apt-cache show&lt;/code&gt; 读 &lt;code&gt;Conflicts&lt;/code&gt; 字段并正确处理版本约束。仍失败就去提 Issue，附机型与安卓版本&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;没声音&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;桌面出现后等 5–10 秒，PulseAudio 首次启动要一点时间&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;SSH 连接被拒&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;确认 &lt;code&gt;sshd&lt;/code&gt; 在跑（&lt;code&gt;ps aux | grep sshd&lt;/code&gt;），端口是 &lt;strong&gt;8022 不是 22&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Wine 起不来&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;需要活跃的显示环境 —— 先确保桌面在运行，再在桌面内终端跑 &lt;code&gt;winecfg&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;HA 的 &lt;code&gt;pip install homeassistant&lt;/code&gt; 编译错误&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;缺构建依赖。进 &lt;code&gt;proot-distro login ubuntu&lt;/code&gt; 确认 &lt;code&gt;python3-dev&lt;/code&gt;、&lt;code&gt;libffi-dev&lt;/code&gt;、&lt;code&gt;libssl-dev&lt;/code&gt;、&lt;code&gt;cargo&lt;/code&gt; 都在，再重试&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;HA 的 8123 打不开&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;首次启动要 5–10 分钟；确认手机和浏览器在同一 WiFi&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;HA 报 &lt;code&gt;address already in use&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;已有实例在跑，&lt;code&gt;bash ~/stop-homeassistant.sh&lt;/code&gt; 或 &lt;code&gt;pkill -f &amp;quot;hass -c&amp;quot;&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;HA 发现不了设备&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;安卓上正常现象。mDNS 被 Android 10+ 限制，改用 IP 手动添加或云集成&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="六它适合谁不适合谁"&gt;六、它适合谁，不适合谁&#10;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;适合&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;抽屉里有 2019 年以后的安卓机，性能还行但已经没人用来打电话。&lt;/li&gt;&#10;&lt;li&gt;想学 Linux / Python，但不想为&amp;quot;学习&amp;quot;先买一台电脑 —— 一台 XFCE4 桌面加 root 都不用的环境，够跑完一整个入门教程。&lt;/li&gt;&#10;&lt;li&gt;想试智能家居，但不想为此添置树莓派和一堆配件，且手上主要是 WiFi 设备。&lt;/li&gt;&#10;&lt;li&gt;需要一个低功耗、插上电就不管的 SSH 跳板机或文件服务器。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;&lt;strong&gt;不适合&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;32 位机器&lt;/strong&gt; —— 直接不满足前提。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Zigbee / Z-Wave 用户&lt;/strong&gt; —— 没有 USB 适配器支持，这条路是死的。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;想要 HA OS 全套体验的人&lt;/strong&gt; —— 没有 Docker、没有插件商店里的 add-ons。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;对稳定性要求苛刻的人&lt;/strong&gt; —— 毕竟跑在 Termux 和 proot 之上，安卓的后台管理策略随时可能来打扰你。它是个很好的玩具和很有用的实验平台，但不是生产基础设施。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="我的建议上手路径"&gt;我的建议上手路径&#10;&lt;/h3&gt;&lt;ol&gt;&#10;&lt;li&gt;先看重装系统这条路 —— 老机器刷一个 LineageOS 之类的轻量 ROM，可用的内存和闪存会明显宽裕。&lt;/li&gt;&#10;&lt;li&gt;装 Termux（F-Droid）+ Termux-X11，&lt;strong&gt;先老老实实跑 &lt;code&gt;pkg upgrade -y&lt;/code&gt;&lt;/strong&gt;。&lt;/li&gt;&#10;&lt;li&gt;先走桌面路线，选 XFCE4，不装 Wine。先把&amp;quot;能出来一个桌面&amp;quot;这件事跑通。&lt;/li&gt;&#10;&lt;li&gt;确认稳定后，再在&lt;strong&gt;同一部手机上&lt;/strong&gt;加装 Home Assistant —— 两者不冲突。&lt;/li&gt;&#10;&lt;li&gt;最后再考虑 Wine，并且带着&amp;quot;能跑记事本就算成功&amp;quot;的心理预期。&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;hr&gt;&#10;&#10; &lt;blockquote&gt;&#10; &lt;p&gt;最后说句实在的：这个项目最有价值的地方，不是省下了买树莓派的那几百块，而是&lt;strong&gt;它把&amp;quot;旧手机 = 电子垃圾&amp;quot;这个默认结局换成了&amp;quot;旧手机 = 待分配的算力&amp;quot;&lt;/strong&gt;。一台能跑 Vulkan、能跑 Python 3、能 7×24 供电的八核 ARM 机器，在抽屉里放十年也不会自己变成别的东西。花半小时装两个脚本，它就变成了一台服务器 —— 这笔账怎么算都划算。&lt;/p&gt;&#10;&lt;p&gt;项目地址：&lt;a class="link" href="https://github.com/mayukh4/linux-android" target="_blank" rel="noopener"&#10; &gt;github.com/mayukh4/linux-android&lt;/a&gt;，MIT 许可，作者配了完整的 &lt;a class="link" href="https://youtu.be/tYm2rQpkOcg" target="_blank" rel="noopener"&#10; &gt;YouTube 视频教程&lt;/a&gt;（描述里有时间戳索引）。如果它帮你省下了买硬件的钱，作者接受 &lt;a class="link" href="https://github.com/sponsors/mayukh4" target="_blank" rel="noopener"&#10; &gt;GitHub Sponsor&lt;/a&gt;。&lt;/p&gt;&#10;&#10; &lt;/blockquote&gt;&#10;</description></item></channel></rss>