如何把 e900v22d 电视盒子刷成 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 S905L3B 的 e900v22d 电视盒子刷成 Armbian Linux,你只需要按下面四个里程碑动手:先刷好安卓底包,再建 ADB 调试通道,然后让 U 盘引导起 Armbian,最后把内存识别和多台部署的 MAC 冲突收拾干净。这是 amlogic-s9xxx-armbian 项目支持的典型玩法,读完你就能独立复现。
开工前备齐
- 硬件:e900v22d 盒子(4G/16G 版本)[必选];双公头 USB 线 + 牙签(短接触点用)[必选];8G 以上 U 盘 [必选];显示器 + HDMI 线 [必选];机械键盘(进 u-boot 命令行使)[可选]
- 软件:一台 Debian/Ubuntu 电脑 [必选];Android 9 底包固件 [必选];adb 工具(
sudo apt install android-tools-adb)[必选];写入工具 Etcher 或dd[必选];项目仓库 [可选]:git clone https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian - 网络:盒子插好网线,路由器能正常分 IP [必选]
里程碑一:把盒子从安卓切到 Linux 之前,先刷回 Android 9 底包
- 从厂商支持页或社区渠道拿到 e900v22d 的 Android 9 底包。⚠️ 版本宁低勿高,9 以上容易触发驱动不兼容,硬件功能会悄悄坏掉。
- 先校验固件 MD5,跟发布说明对得上才能用——固件文件坏一点,写进去就是变砖。
- 断开电源,用牙签顶住 AV 接口里的短接触点别松手,保持按住的状态插双公头线连电脑。
- 松手等电脑认到设备,打开 Amlogic 刷机工具把底包写进 eMMC。⚠️ 触点只顶到识别为止,别一直按,长按可能触发保护机制。
- 写完自动重启进安卓,在「设置 → 关于设备」确认系统版本是 Android 9,存储可用空间大于 10GB。
✅ 检查点:跑硬件检测应用,CPU 一行显示 S905L3B 就对了。
里程碑二:5 分钟搭好 ADB 调试,把分区表抄出来
刷完底包别急着拔线,先借 ADB 把设备信息抄到手。
- 进「关于设备」,快速连点「版本号」7 次,每秒点 3、4 下,底部弹出"开发者模式已启用"即成功。
- 回「开发者选项」打开 USB 调试,弹窗点允许,然后重启盒子让设置生效。
- 电脑端装好工具后检测:
adb devices- 列出设备时确认屏幕上弹出的授权框点了同意,输出里出现 e900v22d 就通了。
- 查型号确认没连错机器:
adb shell getprop ro.product.model- 顺手测一下推送和远程执行,验证通道双向可用:
adb push test.txt /sdcard/ adb shell ls /system- 用
adb shell lsblk之类的命令把 Android 分区表抄一份下来,刷 Linux 时对照用。
✅ 检查点:adb devices能看到设备、test.txt能推上去,说明通道没问题。注意这里:设备不出现多半是 USB 口供电不足或没点授权,先换个口再查弹窗。
里程碑三:让 Armbian 从 U 盘在 e900v22d 上启动
- 从项目 Releases 拿现成的 s905l3b 镜像;想自己编译的话,在仓库根目录执行打包脚本(
-b指定板子、-k指定内核):
./rebuild -b s905l3b -k 6.1- 确认 U 盘路径,别选错盘符:
lsblk- 把镜像整盘写进去(
of=后面换成你实际的 U 盘设备):
sudo dd if=镜像文件.img of=/dev/sdX bs=4M status=progress sync懒得敲命令就用 Etcher,选镜像、选 U 盘、点 Flash。 4. ⚠️ 盒子先彻底断电,插 U 盘,接好显示器,再通电——它会自动从 U 盘引导。千万别在安卓的"系统更新"里找 Armbian,那条路走不通,只会原地回到安卓。 5. 盯着屏幕看引导日志滚完,出现 Armbian 登录提示即成功,用 root / 1234 登录。
✅ 检查点:登录后敲uname -r,看到 6.1 开头的版本号;再敲lsblk能认出 U 盘,引导才算真正站稳。
里程碑四:内存只认 1G?让 S905L3B 认全 4G 内存
部分 e900v22d 上电后内存被 u-boot 少报,先确认症状:
free -h- 如果 Mem 那一栏明显不到 4G,问题多半出在启动阶段的内存参数上。
- 改法一:打开仓库里的 u-boot 配置目录,找到对应 e900v22d 的配置文件,把内存段改成:
CONFIG_MEMORY_SIZE=4096 CONFIG_DDR_TYPE=DDR4 CONFIG_DDR_FREQ=1600- 然后按里程碑三的方式重新打包镜像、重写 U 盘。
- 改法二(现场救急):启动时抢进 u-boot 命令行,跑
ddrtest看硬件实际检测结果,接着设参数:
setenv memsize 4096 saveenv- 参数没问题就敲
boot继续启动。
⚠️ 动手前先抄一份原始配置留底,内存参数填错系统可能直接起不来,有底才敢回滚。
✅ 检查点:跑完grep MemTotal /proc/meminfo,数值接近 4096000 kB 就齐活了;再跑dmesg | grep -i memory,输出里不该有报错。
里程碑五:批量部署 e900v22d 不再撞 MAC
一次性部署好几台 Armbian 时,默认 MAC 容易撞车,路由器那边一片糊涂。
- 先看看现状:
ip link show- 单台手动改的话,编辑
/etc/network/interfaces,给 eth0 加一行pre-up ip link set dev eth0 address XX:XX:XX:XX:XX:XX,再重启网络服务:
sudo systemctl restart networking- 数量多了就用脚本思路:写个小脚本,读
/proc/cpuinfo里的序列号,配合 Amlogic 官方 OUI 前缀00:1A:79生成全局唯一 MAC 并应用到网卡,用@reboot挂进 crontab 每次开机自动执行(脚本就这几步,不贴完整源码了)。
✅ 检查点:重启后ip link show eth0里的地址每台都不一样,路由器管理界面里也能对得上号,就算过关。
踩坑速查
| 你看到了什么 | 多半是哪里出了问题 | 怎么修 |
|---|---|---|
| 刷机失败、盒子变砖 | 固件 MD5 没校验 | 重新下载并校验 |
| 触屏失灵等硬件异常 | 底包用了 Android 9 以上 | 换回 9 版本底包 |
| 短接后电脑不认设备 | 触点按住时间过长 | 仅在插线瞬间按住 |
| adb devices 列表为空 | 没点屏幕授权弹窗 | 换 USB 口并重新授权 |
| 开发者选项灰的 | 版本号点得太慢 | 快速连点 7 次 |
| 安卓"系统更新"进不去 Armbian | 启动入口找错 | 断电插 U 盘再通电 |
| U 盘写入后无法启动 | 用文件复制代替了 dd | 用 dd 或 Etcher 整盘写 |
| 内存只认 1G | u-boot 内存参数没对上 | 改配置或 setenv 后重编 |
| 改了内存参数起不来 | 跳过了硬件检测 | 先 ddrtest 再填值 |
| 多机部署断网重连 | MAC 地址撞车 | 序列号派生唯一 MAC |
| 改完 MAC 没生效 | 网络服务没重启 | 重启 networking 服务 |
收尾:接下来可以玩
回头看看走过的路:底包落地、ADB 通道打通、U 盘引导成功、内存认全 4G、MAC 各归各位——一套 e900v22d 电视盒子刷 Linux 的标准动作就算闭环了。建议养成习惯:动 eMMC 之前先备份原系统,后面想反悔随时能回去。接下来可以玩:
- 用 armbian-update 更新内核,自动备份旧内核、可回滚
- 参考 documents/README.md 第 8 章把 Armbian 写进 eMMC
- 跑
armbian-software装 Docker、桌面等常用软件,清单见 documents/armbian_software.md - 用
armbian-apt换国内软件源,下载速度立竿见影 - 点亮盒子上的 LED 屏:documents/led_screen_display_control.md
- 内核自己改驱动、打补丁:compile-kernel/README.cn.md
- 对照 documents/android_partition_table_template.xlsx 核对 eMMC 分区表
【免费下载链接】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),仅供参考