闲置电视盒子变 ARM 家庭服务器:Armbian 刷机、自托管与调优实操
【免费下载链接】amlogic-s9xxx-armbianSupports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.项目地址: https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian
用 amlogic-s9xxx-armbian 项目做 Armbian 刷机,把吃灰的 Amlogic 电视盒子变成一台 10W 功耗的 ARM 服务器:跑 Docker、自建影音库、做文件同步都没问题。本文按"拿到盒子→写入系统→跑通第一个服务"的顺序走一遍,命令都可以直接复制,再附上翻车点速查。
⚡ 速览:这套方案适不适合你
| 项目 | 说明 |
|---|---|
| 适用硬件 | Amlogic s905x3 / s922x / s912 等盒子,以及 Rockchip、Allwinner 平台设备(完整列表见 README) |
| 系统形态 | 基于 Debian/Ubuntu 的Armbian,可装进eMMC(焊死在主板上的闪存存储),也可常驻 TF/USB 使用 |
| 能力上限 | 完整 apt 软件生态 + Docker 自托管 + 内核更新/自编译 |
| 上手时间 | 刷机加跑通第一个服务约 30~60 分钟 |
| 适合人群 | 会用 SSH、想折腾低功耗家用服务器的人;只想玩影音的不建议折腾 |
注意一点:老款 s905 系列盒子只能用 TF/SD/USB 启动,不支持写入 eMMC,其他型号均可装进 eMMC。
🚀 从零搭建:拿到盒子后 7 步跑通
- 获取镜像:到项目 Releases 页面下载对应型号(如 s905x3)的
img镜像并解压备用。 - 写盘:用 Rufus 或 balenaEtcher 把镜像写进 U 盘,插到盒子 USB 口。
- 让盒子从 U 盘启动:如果开机还进安卓,按 使用文档 12.4 节 开启开发者模式,在电脑执行
adb shell reboot update即可重启进 Armbian。 - 登录系统:路由器管理页找到名为 Armbian 的设备 IP,执行
ssh root@盒子IP,默认密码1234。 - 写入 eMMC:执行
armbian-install,按提示确认,把系统装进 eMMC。 - 装完重启、拔 U 盘,再次 SSH 登录,执行
armbian-apt选一个国内软件源,后面装软件会快很多。 - 跑通第一个服务:执行
armbian-software,输入101安装 Docker——你的第一个自托管服务就绪。
Tip:刷机前强烈建议先执行
armbian-ddbr,按提示输入b备份原安卓系统,备份在/ddbr/BACKUP-arm-64-emmc.img.gz,后悔时随时能还原。
🎬 核心玩法拆解
把旧盒子变成家庭影音库
适合手头有一批电影/剧集文件,想在电视或手机上流媒体播放的情况。
armbian-software # 打开软件中心,列表带 ID 编号 # 输入 101 先装 Docker,再输入 107 安装 Jellyfin 媒体服务 # 装完访问 http://盒子IP:8096 建媒体库,把影音目录挂进去验收标准:
- 浏览器能打开
:8096端口并登录后台 - 添加媒体库后电影/剧集能被刮削出海报和简介
- 手机/电视端 Jellyfin 客户端能流畅播放 1080p 视频
进阶提示:S905X3 支持 4K HEVC 硬件解码,大文件直连(direct play)优先于转码;转码任务吃 CPU,4 核 A55 只建议偶尔用。
跑自托管小工具:文件同步 + 定时任务
适合想给多台设备同步文件、跑自动化脚本,但不想维护复杂应用栈的情况。
armbian-software # 继续通过软件中心安装 # 输入 113 装 Syncthing,做设备间实时文件同步,端口 8384 # 输入 124 装 QingLong,跑每日签到、日志清理等定时脚本,端口 5700 # …省略… 各服务默认端口见 documents/armbian_software.md验收标准:
- Syncthing 后台配对成功后,盒子目录里的文件变化能在另一台设备自动出现
- QingLong 里建一个每小时执行的 shell 任务,日志显示
success - 重启盒子后所有服务自动拉起(Docker 容器默认开机自启)
进阶提示:装个114FileBrowser(端口 8002),等于多一个带预览的网页文件管理器,比直接翻 Samba 目录省事。
24 小时常开服务器:系统保养与救援
适合系统长期挂机运行、需要跟进内核更新但又怕变砖的情况。
armbian-sync # 把系统内置脚本更新到最新版 armbian-update # 更新内核,旧内核自动备份到 /ddbr/backup # 新内核翻车时执行 armbian-update -s 从备份恢复验收标准:
uname -r显示新内核版本号- 备份目录
/ddbr/backup里保留着最近 3 个旧内核 - 断电重启后系统正常拉起、SSH 可登录
进阶提示:想自己加驱动补丁,在盒子里直接执行armbian-kernel -u更新编译环境、armbian-kernel -k 6.6.12编译指定版本,方法详见 内核编译文档;也可克隆仓库git clone https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian用./recompile在电脑上本地编译。
⚙️ 性能与稳定性调优
只列三个"做了有感知"的项目。
1. 跑容器时被 OOM 杀掉
- 现象:Docker 容器运行中突然退出,
dmesg里能看到 OOM 记录。 - 原因:盒子普遍只有 1~2GB 内存,多开服务后物理内存见底。
- 修复:
armbian-swap 2 # 参数单位是 GB,用磁盘空间补内存- 预期效果:不再无故 OOM,代价是极端负载时响应略慢。
2. 遥控器一按盒子就关机
- 现象:当服务器用着,误碰遥控器触发关机,服务全断。
- 原因:系统默认启用红外接收模块
meson_ir。 - 修复:把
blacklist meson_ir追加到/etc/modprobe.d/blacklist.conf后重启(文档 12.5 节)。 - 预期效果:红外事件彻底屏蔽,误触不再关机。
3. 内核更新后系统起不来
- 现象:刷了新内核,开机黑屏,SSH 连不上。
- 原因:新内核与个别盒子的设备树文件(DTB)兼容性不佳。
- 修复:用 U 盘启动旧系统,执行
armbian-update -s,把 USB 里的系统内核恢复回 eMMC。 - 预期效果:几分钟回到可用状态,不用重新刷机。
🔧 高频问题速查
- 插 U 盘不启动,屏幕无反应→ 盒子没走 USB 启动路径 → 安卓里开开发者模式后
adb shell reboot update(12.4 节)。 - SSH 连不上→ 用错账号或 IP → 默认
root/1234,端口 22,IP 以路由器管理页为准。 - 下载速度像蜗牛→ 软件源是海外地址 →
armbian-apt切换地区源。 - 想换回安卓系统→ 刷机前备份过 →
armbian-ddbr输入r恢复;没备份则按 12.3 节 用线刷工具重刷安卓包。 - s905 老盒子
armbian-install无反应→ 该系列仅支持 TF/SD/USB → 保留 U 盘常驻使用即可,属正常现象。
收尾
项目自 2021 年 9 月起步,设备列表还在持续扩容,内核覆盖 5.10 到 6.18 多个系列并保持更新,属于"能日常挂机"的成熟度。想继续深挖分区原理、u-boot 制作或自定义驱动,使用文档 的 9 章和 12 章常见问题是最直接的入口。
【免费下载链接】amlogic-s9xxx-armbianSupports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.项目地址: https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考