1. 程式人生 > 實用技巧 >N1盒子刷Armbian整理

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 線

  1. 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等等都copyemmc上。
一旦完成emmc刷寫,此後bootloader就會直接讀emmc中的boot分割槽,直接引導進入armbian
首先是選什麼版本的Armbian,以及替換哪一個dtb檔案,我直接告訴大家結論:

Armbian 5.77版本,使用xiangsm的dtb檔案,這是恩山論壇的帖子:https://www.right.com.cn/forum/thread-510423-1-1.html

這是目前恩山論壇最新也是最廣泛肯定的版本,大家就不要自己再折騰研究了。

至於armbiandtb分別是什麼來頭,我簡單說明一下:

armbian:直接來源於armbian的官方,armbian其實就是debian發行版為arm架構適配後的版本。也就是說,恩山論壇是沒有人去改動armbian系統程式碼的,是非常可靠的。
dtb:各種品牌的盒子千千萬,每個盒子使用的網絡卡啊、cpu晶片啊的型號千千萬,armbian核心為了能夠和這些外設正常工作,就要求提供一種叫做dtb的描述檔案,我理解就是針對各個硬體的驅動程式。

為了讓斐訊N1的各個硬體可以被armbian正常排程,所以需要給斐訊N1適配一套dtb檔案。
dtb檔案需要隨著核心編譯,所以不同armbian核心版本必須使用配套的dtb檔案。
目前斐訊N1dtb檔案已經被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盤,所有刷機工作就結束了。