5步让吃灰电视盒子变身Armbian服务器:Amlogic S9XXX刷机焕新指南
家里总有那么一台电视盒子:开机越来越卡、预装软件删不掉、广告弹得比内容还勤快,最后被塞进抽屉吃灰。但你可能不知道,amlogic-s9xxx-armbian 这个开源项目,能让这些 Amlogic、Allwinner、Rockchip 芯片的旧盒子跑上完整的 Armbian 系统,摇身一变成一台全天候在线的小型服务器。这件事没那么玄乎,跟着下面的 5 个节点走,新手也能点亮它。
从"看电视"到"跑服务",盒子其实很能打
先别急着质疑一个电视盒子能干什么。绝大多数盒子的 SoC 是 ARM 架构芯片,功耗只有几瓦,比台式机省电得多,却又比树莓派容易淘到。刷上 Armbian 之后,它就是一个 Debian/Ubuntu 系的 Linux 系统,能装 Docker、跑下载、架网站、做内网穿透,甚至当个人云盘。
一句话总结项目价值:把安卓 TV 系统换成精简的 Armbian,把「只能看视频」的盒子变成「随你折腾」的服务器。 项目保留了官方 Armbian 的完整性,还额外适配了官方不支持的电视盒子,并附赠一批 armbian- 开头的便捷命令,让小白也能少走弯路。
第一步:对暗号,你的盒子在不在支持名单里
动手之前先做一件事——查型号。盒子底部或系统设置里都能看到 SoC 型号,项目按芯片整理了长长的支持表:
- S905X3 系列:X96-Max+、HK1-Box、H96-Max-X3 等热门盒子
- S922X 系列:Beelink-GT-King、Ugoos-AM6-Plus 这类高性能设备
- S905 系列:Phicomm-N1、Beelink-Mini-MX 等经典老将
- 瑞芯微 & 全志:rk3588、rk3568、rk3399、rk3328、h6 等平台的开发板和盒子也在支持范围内
💡 判断不了也没关系,项目里有一份设备数据库文件可以直接翻:
build-armbian/armbian-files/common-files/etc/model_database.conf,里面记录了每台设备的代号、内核和 u-boot 配置。
第二步:备齐三样东西,一刻钟做出启动盘
- 一个 8GB 以上的 U 盘或 TF 卡(建议 U 盘,读写更稳)
- 对应当前盒子的 Armbian 镜像文件(去项目的 Releases 页面按型号下载)
- 一个烧录工具(Rufus 或 balenaEtcher,二选一即可)
烧录时注意:用 Rufus 请选 DD 模式写入,不要用默认的 ISO 模式,否则插上盒子可能根本启动不了。写入完成后先别急着拔,Windows 下可以看到 U 盘里有个 boot 分区,打开里面的 uEnv.txt,把 FDT 一行改成你自己盒子的 dtb 名称(文件里有现成列表可抄),这一步能省去后面大量折腾。
第三步:第一次开机,先跟 U 盘里的系统问个好
把 U 盘插进盒子靠近电源的 USB 口(有些盒子只有特定口能引导),接上显示器和网线再通电。如果一切顺利,几分钟后你会看到一个命令行登录提示。默认账号是 root,密码是 1234,首次登录会提示你修改密码、创建新用户,跟着提示走就行。
刚进系统时,先别急着把系统装进 eMMC,建议执行这一条命令:
armbian-ddbr
这条命令是让系统把盒子 eMMC 里原有的安卓系统完整备份到 U 盘/TF 卡上。输入 b 开始备份,输入 r 可以随时恢复。刷机前先留后路,以后想回到安卓电视系统,一条命令就能救回来。
第四步:把系统写进 eMMC,彻底告别 U 盘依赖
U 盘里的系统体验下来没问题,就可以把它"焊"进盒子自带的 eMMC 存储里,这样拔掉 U 盘也能正常开机。执行:
armbian-install -m yes -a no
这条命令会把 Armbian 写入 eMMC。其中 -m yes 表示使用主线 u-boot(更通用的引导程序),-a no 表示不启用 ampart 分区工具(保持默认分区表更省心)。等待写入完成,关机、拔 U 盘、再开机,盒子就是一台独立服务器了。
这里把它的参数列全,方便你按需组合:
| 参数 | 默认值 | 可选值 | 作用 |
|---|---|---|---|
-m | no | yes/no | 是否使用主线 u-boot |
-a | yes | yes/no | 是否使用 ampart 分区调整工具 |
-l | no | yes/no | 是否列出全部可写设备 |
第五步:开机后的"装修"时间,三条命令就够
系统跑起来之后,有几件顺手就能做的小事,让体验更顺滑。
换国内软件源,下载速度天壤之别:
armbian-apt
按提示选择你所在的地区即可。这一步本质是切换 apt 软件源地址,让 apt install 拉包快很多。
一键装软件,软件中心帮你把常用应用整理好了:
armbian-software
这条命令会列出 Docker、Portainer、Jellyfin、HomeAssistant 等几十个软件和对应编号,输入编号即可一键安装/更新/卸载,省去手动敲 Docker 命令的麻烦。
给内存加点"虚拟缓冲":
armbian-swap 1
参数单位是 GB,这里表示创建 1GB 的 swap 虚拟内存。跑 Docker 或编译任务时内存吃紧,这条命令用磁盘空间换内存容量,立竿见影。
新手翻车现场:报错对照速查表
踩过的坑我都替你总结好了,遇到问题先对号入座:
| 现象 | 常见原因 | 解决思路 |
|---|---|---|
| 插上 U 盘盒子黑屏 / 卡在开机 logo | 镜像没烧好、dtb 选错、U 盘不被识别 | 重新烧录(确认选了 DD 模式);核对 uEnv.txt 里的 FDT 名称;换一个 USB 口或换块 U 盘重试 |
| 写入 eMMC 时报 I/O 错误 | 原安卓分区表存在异常分区,写入撞到了不安全的区域 | 先检查分区表确认可写区域;可在启动参数 cmdline 中加入 mmc_core.max_freq=50000000 把 eMMC 降频到 50MHz,缓解高频不稳导致的读写失败 |
| 内存只识别出一半(4G 变成 1~2G) | u-boot 文件不匹配 | 从 /boot/UBOOT_OVERLOAD 复制文件为 /boot/u-boot.ext(U 盘启动)或 /boot/u-boot.emmc(eMMC 启动),注意是"复制"不是"改名" |
| 系统启动后没有声音 | 部分 Bullseye 版本音频驱动异常 | 按官方文档 12.17 节的方法更新音频相关内核模块或调整配置 |
想深入定制?这几个文件是你的入口
- 设备数据库:
build-armbian/armbian-files/common-files/etc/model_database.conf—— 每台盒子的代号、内核、u-boot 对应关系都在这里 - 软件中心清单:
build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/software-list.conf—— 想往软件中心里加自己的应用,改这个文件 - 内核配置目录:
compile-kernel/tools/config/—— 编译个性化内核时的配置文件存放处 - LED 屏控制文档:
documents/led_screen_display_control.md—— 有 LED 数字屏的盒子,调显示内容看这里
玩出花:刷完系统之后,你的盒子还能干什么
系统稳定跑起来之后,进阶玩法就敞开了:
- 内核自己动手编:
armbian-kernel -u更新编译环境,armbian-kernel -k 6.6.12编译指定版本。甚至能给内核签名,比如5.15.100-happy-new-year,开机信息里都是你的个性彩蛋 - 想升级内核又怕翻车?
armbian-update -k 6.6.12 -u stable更新时会自动把当前内核备份到/ddbr/backup,保留最近 3 个版本,新内核不稳随时回滚 - 远程桌面:通过
armbian-software装一个桌面环境,配上远程桌面软件,盒子秒变一台低功耗的 Linux 工作站 - NAS 与影音:NextCloud、Jellyfin 这类服务在软件中心都是编号一键安装,配合盒子低功耗的特性,当个常开的家庭影音库再合适不过
别怕翻车,折腾本身就是收获
刷机这件事,说难,其实前面 5 步走完也就一个晚上;说不难,中途也难免遇到几次报错。我的建议是:第一次先完整读一遍文档(项目里 documents 目录把常见问题都答过了),备份好原系统,然后大胆动手。哪怕失败了,armbian-ddbr 一条命令也能把盒子还原成原来的样子——你几乎没什么可损失的,而得到的,是一台完全属于你的服务器。
把抽屉里那台吃灰的盒子翻出来吧,它值得第二次生命。🚀
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



