前情:某天我在电信的仓库的垃圾堆里面翻到了一台电信的机顶盒,是烽火的ty1208-z,查了一下配置,是1g ram + 8g emmc,s905m的cpu,于是突发奇想能不能像N1、玩客云一样刷入armbian。
折腾的大致过程:
1. 制作armbian的启动盘
2. 用ADB的update命令刷入armbian的升级包,更改开机引导顺序
3. 尝试写入emmc,并用emmc启动
4. 弃坑
·制作armbian启动盘
我用的是Win32DiskImager,百度一搜一大把,我就不上传了。
在经过多次尝试之后我用的镜像是Armbian5.7.7内核的Debian镜像
链接:https://pan.baidu.com/s/1GQCiowlIiSUlaSkiR831wQ
提取码:uawn
(参考帖子 https://www.cnblogs.com/htybky/p/11443420.html,Ubuntu带mate桌面的版本可能需要替换gxl的dtb,也就是直接从dtb文件夹复制到根目录,直接命名为dtb.img)
将U盘或者SD卡插入电脑后使用Win32DiskImager直接写入即可,遇到警告选yes就行,这里不多赘述。
重要的是,请不要将烧录好的armbian存储设备插入正在运行安卓系统的盒子,否则armbian的目录权限会被更改,造成下次无法启动。
·使用ADB更改开机启动顺序
由于我已经把原来的安卓系统给刷掉了,懒得恢复了,所以这里直接复述一下过程。
我这边是用usb转ttl直接进入的ADB
(参考https://www.znds.com/jc/article/16736-1.html),
当然也有其他的方法,比如直接用内网连接
(参考https://blog.csdn.net/wlz527525671/article/details/109035682)。
之后使用adb shell reboot update发现启动失败,多次尝试也是如此。
然后翻到了这个帖子:https://www.right.com.cn/forum/thread-327886-1-1.html
于是受到启发,把启动盘根目录下的aml_autoscript.zip改名为update.zip,输入adb shell reboot update命令后直接引导进入armbian
当然,不同区域不同版本批次的机器可能也有些差异,在此只起到抛砖引玉的作用。我也看到有挺多的电信机顶盒(创维、中兴、华为代工的),只要用s805、s905、s912的应该都能引导成功的吧。
·写入emmc&弃坑
写入emmc倒是没有什么问题,设置好密码、用户名进去之后直接./install.sh就行。此时安卓系统就会被覆盖掉,如果想备份的话网上也另有方法。
然而难点就是无法正确地引导启动,只能在插入U盘/SD卡的情况下才能正常进入系统,折腾了几天我也放弃了,将烧录好的存储设备插入Windows下,把根目录uEnv.ini中的
bootargs=root=LABEL=ROOTFS改为bootargs=root=LABEL=ROOT_EMMC,
然后在磁盘管理器里面将那个linux分区清除,用分区精灵格式化为ext4格式,留下128M的fat格式引导分区,
(这里有个坑,第一次格式化的时候将单元大小设置为4M,然后无法挂载,后来在网上查阅资料将单元大小设置为2048字节就能挂载了。)
然后设置自动挂载外置分区即可,也相当于内置emmc启动了,至少没有浪费8g的emmc空间。
(详见:https://aisoa.cn/post-3142.html)
另:在我写这篇文章的时候,看到了另一篇帖子,似乎能解决引导启动的问题,这样就不用外置引导了,很方便,但我懒得弄了,可以参考一下:https://www.cnblogs.com/jonnyan/p/12660037.html
至于WIFI的话,我板载的是SV6051P的芯片,armbian论坛里有说到没有驱动包的问题,所以直接放弃了:
·题外话
这盒子配置一般般,百兆的网口和一个USB3.0、一个USB2.0,食之无味弃之可惜,拿来做个小nas或者小网站服务器还是挺不错的,毕竟功耗也不高嘛。
顺带说一嘴,其实想刷固件的朋友也不一定用买USB公对公的线嘛,拿两根数据线一剪不就好了😛😛😛