admin 管理员组

文章数量: 887021

记录一下在x96max+ 外贸盒子上面搭建Armbian的历程

  • Armbian是什么
    • 操作过程
    • 合适的dtb设备文件
  • 救砖历程:
    • 国内外相关电视盒子论坛

Armbian是什么

Armbian是轻量级的Debian系统,为ARM开发板专门发行并重新编译的Debian系统(Ubuntu派生自Debian)。

根据官方文档介绍,Armbian是一个已经经过了交叉编译的linux系统,可以使用apt升级工具,理论上与Debian/Ubuntu是兼容的。可以直接在这个系统上面使用gcc编译
1,Armbian官方网址,上面有官方支持的板子和对应固件下载
2,官方帮助文档,但是对于x96max+盒子来说,帮了个寂寞Orz
3,官方推荐的U盘镜像加载工具


操作过程

跟重装系统差不多意思,Armbian的img文件里都封装了u-boot和linux内核。把系统镜像载入到U盘等移动设备上,然后从U盘引导启动即可。
另外需要注意的是,由于官方并没有支持x96max+(没有合适的dtb设备树文件),所以加载Armbian的时候总是会有各种小问题,蓝屏的是因为u-boot不支持,还有比较常见的无线网卡不工作等。

2021-11-25更新:
建议对系统没有专用要求的小伙伴,可以使用CoreELEC系统。它是LibreELEC系统的一个专门针对s90x系列芯片适配的分支。对x96mini和x96+适配性非常好,对于非开发用途而言,它拥有好用的多媒体播放器kodi。玩法非常多。
而对于开发用途而言,CoreELEC就是个带了kodi界面的Unix系统。虽然kodi占用率比较高,但只需要写个system服务,每次启动时systemctl stop kodi关闭kodi即可。自带sshSamba服务,初次启动时使用kodi界面配置即可。
1,写入emmc也非常简单,直接命令行调用ceemmc -x即可,一路y + 回车。批量刷可以使用expect脚本
2,有opkg工具可以安装软件。使用installentware命令获取opkg工具


啰嗦这么多,上干货
要在x96max+ 上面安装Arambian,你需要:

一个Arambian的镜像
一个合适的dtb设备文件
一个16GB的U盘或tf卡。
最好就先准备一台显示器和键盘

Arambian的镜像
如果你的宿主机是20.0版本以上的linux,就可以直接去github上面下载官方的源码,然后自己编译源码获得镜像包。我的linux是18.04,编译脚本不支持,于是只能下载别人的镜像了。
之前搜的博客都是外国网盘(需要翻墙),为服务广大群众,经过痛苦搜索,找到以下几个国内可用的下载地址:
1, 看域名挺像armbian官方balbes150大佬的盘,本文用的就是这里下载的镜像
2, 可能是某个地方的镜像,本文编写期间还能上去
3, 北京外国语大学的镜像,里面有各种板子的镜像包,没有找到X96的

PS:
1, Ubuntu版本号:buser、bionic的意思就是版本号
2, 带desktop就是桌面的意思,xface、gnome都是桌面的版本 不同桌面版本介绍
3, Armbian镜像文件的名称解析(如focal、current等)
4, Armbian focal 设置国内源

拷录
本文用的是官方提供的拷录工具,用其他的(如Win32DiskImager)也可以的
官方推荐的U盘镜像加载工具

Flash!干就完了!

PS:如果拷录完,想恢复U盘功能,或换其他镜像。就用DiskGenius重新分区即可。

合适的dtb设备文件

拷录完,系统会把U盘识别为一个叫BOOT的几百MB的盘(被分区了,剩下的空间是另一个隐藏盘),点开来是这样的( 如果没有就弹出U盘再插入识别一次)
需要为Armbian添加合适的u-boot.ext和选择合适的dtb,本文测试之后,有效的组件就分享给大家了,使用x96max+ 的老铁可以下载链接

百度_盘盘(永久分享)
提取码:7np0

meson-sm1-sei610-2.dtb逛国外论坛下载的,我这盒子测试无法启动。但是论坛的人又说可以启动…所以先保存下来。
meson-sm1-sei610-ethfix.dtb 看名字是修复了无线网卡的,但是好像修了个寂寞,可以启动系统,可用√
meson-sm1-sei610.dtb我原镜像包里面的dtb,作为备份狂魔怎能没有备份?
u-boot.ext 能引导我盒子启动的u-boot。其实就是我这个镜像包自带的,可用√
meson-g12a-x96-max.dtbManjaro-ARM国外论坛说修复X96max+的网卡,但是无法启动系统,也先保存下来

大家可以直接下载u-boot.ext(可选) 、 meson-sm1-sei610-ethfix.dtb ,然后把下载来的u-boot.ext(可选) 丢到根目录, meson-sm1-sei610-ethfix.dtb 丢/dtb/amlogic下面。然后修改/extlinux/extlinux.conf

LABEL Armbian
LINUX /zImage
INITRD /uInitrd

# aml s9xxx
FDT /dtb/amlogic/meson-sm1-sei610-ethfix.dtb
#FDT /dtb/amlogic/meson-g12a-x96-max.dtb
APPEND root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0

其实就是去掉其他芯片的内容,然后写明要加载的dtb路径,关掉APPEND的注释让系统加载就可以。后续更换了dtb文件记得也要修改这个config文件

让盒子从U盘启动
1,断电,插入U盘
2,插进AV口按下里头的复位键,不松开。我是用牙签粗的那头
3,上电,看到X96的封面就可以松手

强制刷机不成功,可用宿主机Ubuntu的adb:
~# adb connect 盒子IP
~# adb shell 打开命令行
~# reboot update


然后等待即可,脚本会帮我们完成一切。如果持续3分钟都是黑屏或者没反应,那就更换dtb。

这样就是在等待新建用户账户,也就是执行成功了:

然后就可以愉快的玩耍啦!!

注意:
没写入EMMC的情况下,拔出U盘即可重新进入X96自带的安卓系统,建议测试没问题了再写入emmc

2021-7-2更新:
参考了一篇文章,发现在/root目录下有脚本写入emmc,但我暂时不操作。博客作者:wjcroom

救砖历程:

没想到本文编写后,在写入emmc的过程中把BootLoader给破坏了,变砖了,目前救砖中。。附上一些参考的网址,,哪天救回来再更新吧…
听论坛老哥说,如果BootLoader损坏了,就要短接进行刷固件,如果没有,则可以通过长按AV口内的reset键强制刷机
短接点1,我用的就是这个短接点
短接点2

刷机工具和固件:(感谢ZNDS论坛老哥pexcn提供)
链接: 百度盘盘
提取码: k62p
来源网址是上面的短接点2那个跳转处。

操作过程:
1,准备一条双头USB,一头链接电脑一头插盒子USB3.0,然后打开工具
2,能直接识别就跳到第3步,不能就(短接/AV口reset),一般就能识别到,不能就多插拔usb几次
3,左上角文件导入烧录包,选择原厂固件,等加载
4,可选擦除flash或擦除BootLoader,然后开始就行。
5,如果反复提示Diskinitial错误或UBOOT错误,按停止后关闭软件重新插拔几次后即可写入。暂时不知为何如此提示,欢迎评论区补充分享。


国内外相关电视盒子论坛

官方:
(下载论坛的附件是需要注册的,我注册的时候一直说我网络不安全-_-):
通用的讨论区,这里有人提问题有人回答

国内:
1,牛逼的恩山。 不过似乎没有Armbian的板块,我用来收集dtb固件用
1.1,F大的固件,我也用来收集dtb,当初一度想过刷Openwrt算了

2,ZNDS智能电视网,有不少老哥刷Armbian成功的案例,也有X96max的

本文标签: 下载地址 镜像 盒子 外贸 国内