N1盒子刷Armbian整理
1. 前言
N1 天天链是斐讯出的一款挖矿产品,虽然已经翻车,但是本身硬件配置还是很不错的,晶晨 S905D 主控,蓝牙 4.1,双频 WiFi,2G + 8G,USB2.0,HDMI。而一个只要不到 80 块,真是玩 Linux 神器。买了个回来折腾刷上了 Armbian,记录一下折腾过程。
本文是参考斐讯N1 – 完美刷机Armbian教程和斐讯 N1 刷 Armbian 5.64并结合自己实际操作中遇到的问题整理而成。
2. N1降级
安卓系统的标准启动过程如下:
bootloader
:斐讯针对该盒子硬件实现的类似BIOS
的东西,它负责硬件的初始化,最终引导操作系统。
boot
分区:放着安卓操作系统的内核文件,由bootloader
唤起,也就实现了进入操作系统的效果。
recovery
分区:类似于WinPE
的东西,如果boot
分区挂了,则可以通过Recovery
方式进入一个临时的操作系统,然后恢复boot
分区(类似于ghost
做系统)。
问题就在于,bootloader
是斐讯针对盒子定制的,它设置了一些限制,比如:
- 只能使用他家的安卓系统
- 不支持U盘引导操作系统
所以呢,恩山论坛有一位叫做webpad
的大神,修改了斐讯的bootloader
。
我们要做的,就是把bootloader
覆盖到盒子里面去。
webpad
提供了工具,大家按照教程与工具:https://www.right.com.cn/forum/thread-340279-1-1.html,通过adb网络连接的方式刷入即可。
这里我的操作步骤如下
硬件准备
N1一个
U盘一个(32G)
HDMI线
USB鼠标
双公头 USB 线
- N1开机.连接HDMI到显示器、插上网线,USB线一头连接PC主机一头连接N1靠近HDMI接口的USB口,你会进入斐讯自带的安卓系统,点击四次固件版本,开启adb调试。
注意记录一下N1 IP地址,后面会用到
2、在电脑端保持目录结构解压 斐讯N1官方系统降级工具.zip;
3、电脑端运行 run.bat
,按提示操作:
N1的降级操作
上面是T1的降级操作,N1选择2操作,其他类似
一台N1这辈子只需要做一次降级操作,后续不需要再研究这个问题了。
N1进入线刷模式
3. 制作Armbian
U盘
刷armbian
的整体逻辑如下:
为了把armbian
刷入emmc
存储,我们首先得把armbian
刷到U盘上,然后通过U盘引导进入armbian
系统。
U盘进入系统后,我们执行一个命令就可以把armbian
系统的boot
分区以及rootfs
等等都copy
到emmc
上。
一旦完成emmc
刷写,此后bootloader
就会直接读emmc
中的boot
分区,直接引导进入armbian
。
首先是选什么版本的Armbian,以及替换哪一个dtb文件,我直接告诉大家结论:
Armbian 5.77版本,使用xiangsm的dtb文件,这是恩山论坛的帖子:https://www.right.com.cn/forum/thread-510423-1-1.html
这是目前恩山论坛最新也是最广泛肯定的版本,大家就不要自己再折腾研究了。
至于armbian
和dtb
分别是什么来头,我简单说明一下:
armbian
:直接来源于armbian的官方,armbian其实就是debian发行版为arm架构适配后的版本。也就是说,恩山论坛是没有人去改动armbian系统代码的,是非常可靠的。
dtb
:各种品牌的盒子千千万,每个盒子使用的网卡啊、cpu芯片啊的型号千千万,armbian内核为了能够和这些外设正常工作,就要求提供一种叫做dtb的描述文件,我理解就是针对各个硬件的驱动程序。
为了让斐讯N1的各个硬件可以被armbian
正常调度,所以需要给斐讯N1适配一套dtb文件。
dtb
文件需要随着内核编译,所以不同armbian
内核版本必须使用配套的dtb
文件。
目前斐讯N1
的dtb
文件已经被armbian
收录到官方源码库里,但是使用的时候linux
负载会显示的很高,所以热心网友为armbian5.77
编译了一个fix
过的dtb
文件。
armbian5.77
大家直接走我的网盘下载即可,因为从armbian
官方下载非常慢:
1. 烧录系统到U盘
链接: https://pan.baidu.com/s/1-7AmPhRkP1LKtqb6X7s9IA 提取码: sjp9 复制这段内容后打开百度网盘手机App,操作更方便哦
插入之前准备好的U盘打开balenaEtcher
,选中Armbian
系统将其烧录到U盘
2. 修改dtb文件
armbian5.77修改过的dtb文件从上面的帖子里下载,然后打开我的电脑U盘:
将meson-gxl-s905d-phicomm-n1-xiangsm.dtb
文件放到dtb目录
下面
使用Vscode打开U盘根目录下的uEnv.ini
进行修改:
dtb_name=/dtb/meson-gxl-s905d-phicomm-n1-xiangsm.dtb
至此,U盘系统制作完毕.
4. 进入U盘armbian
系统
千万不要在安卓系统开机的情况下插入U盘,否则U盘中的文件权限会被安卓系统篡改!这不是一句废话!
先将N1断电,拔出N1上的USB线,将刚才制作好的U盘插入靠近HDMI口的USB口,然后通电
用cmd命令进入刚才线刷工具的data目录
执行如下命令
adb connect 斐讯IP
adb shell reboot update
此时即可触发U盘启动
默认用户名和密码为root 1234登录即可
ls -l /
确认一下目录权限没有被安卓篡改,都是root用户即可:
5. 刷armbian到emmc
登录成功后会发现当前目录下有一个install.sh
./install.sh
安装完毕后即将U盘中的Armbian
系统刷到emmc中,完成后halt关机拔掉U盘,所有刷机工作就结束了。