前言、為什么要適配Alpine Linux
為什么不是更多用戶的Ubuntu,Debian,這是很多朋友第一時間會問的問題。 首先Alpine Linux占用的資源更小,使用更輕量的包管理系統,5M的最小rootfs是其他發行版沒法比的。 其次Luckfox pico系列板子的Flash和RAM資源都比較少(除了最新的MAX版本),Alpine Linux是最優選擇。
也有很多朋友沒聽說過Alpine Linux,擔心不好用,接下來可以燒錄固件體驗一下。
一、下載固件并燒錄
在文章鏈接下載nand固件壓縮包之后,解壓縮之后打開SocToolKit軟件,在未接電的情況下按住BOOT按鈕不放, 然后插入USB。 軟件界面檢測到maskrom設備后,點擊搜索路徑按鈕,找到剛剛解壓的目錄,確認。 然后把所有下載項目都勾選上,點擊下載按鈕。
二、連接串口并登錄
下載完成后,拔出USB斷電,連接串口開始配置系統。
按Luckfox官方wiki的指引接好串口后,打開串口工具軟件,給開發板接上網線和電源,就可以看到開發板的啟動信息了。 鏡像已開啟了串口接入時,終端root賬戶免密登錄配置,不需要再輸入賬戶和密碼了。
簡單查看一下根文件系統是否可以寫入,就可以開始下一步的配置了。
三、網絡配置
資源少的板子不會安裝各種網絡工具,ifconfig和ip命令是最常用的配網和查看工具。
Alpine Linux提供了網絡服務,可以通過編輯/etc/network/interfaces文件實現靜態IP或者DHCP動態獲取IP。以下就是將板子的IP網絡配置成192.168.50.59,網關配置成192.168.50.1的模版。
`auto eth0
iface eth0 inet static
address 192.168.50.59
netmask 255.255.255.0
gateway 192.168.50.1`
建議使用靜態IP,這樣方便ssh遠程登錄到開發板。配置好之后,需要將networking服務啟動才可以使用。 鏡像默認已經開啟了該服務,如果發現能ping通局域網和外網ip,但是無法解析域名,需要將/etc/resolv.conf文件里的域名解析服務器換成當地的服務器IP。
本文的鏡像默認是使用網線接入網絡,這樣才能發揮包管理器和網絡優勢。USB的RNDIS是沒有配置好的,建議插入網線使用。
四、ssh遠程登錄
鏡像里默認安裝和配置了ssh遠程服務,已開啟root遠程登錄配置,只需要接入串口的情況下,輸入passwd
命令修改root賬戶密碼,然后就可以使用ssh客戶端進行登錄了。例如Termius的配置案例如下
配置好就直接ssh遠程連接就好了。
五、包管理器APK的使用
和大多數的人一樣,給板子適配發行版的最大理由就是不想編譯,直接安裝軟件包。
Ubuntu的包管理器命令很多,用了這么多年命令行的我也沒記住,只記得更新和裝軟件包而已。
Alpine Linux的包管理器命令沒這么復雜,記住3個就行了。
- apk update,更新本地索引
- apk add,安裝軟件包
- apk del,刪除軟件包
就這么簡單,沒什么復雜的。例如安裝gcc,只需要運行apk add gcc命令即可。
安裝完可以運行gcc -v查看版本情況
Nand flash的空間不是很大,不建議安裝大型的軟件包,例如安裝gcc后,剩余空間只有38.2M。
這時候使用apk del gcc命令可以刪除gcc軟件包和它的依賴。
刪除gcc后,剩余空間又變成80多M了。
我提供的鏡像已修改成阿里源,正常的話安裝速度都很快,覺得慢可以自行更換其他源。 修改一下/etc/apk/repositories文件就可以了。 大多數情況下,apk安裝和刪除軟件包都會自動處理相關依賴,怎么來就怎么走,不會殘留垃圾。
六、服務管理
由于板子資源少,自然能跑的服務也不多,鏡像里默認使用的是OpenRC來管理服務。
所有可用的服務都在/etc/init.d/目錄下。 常見的命令有以下幾個。
- rc-status查看默認級別的運行服務
- rc-update add 添加服務到運行級別服務清單
- rc-update del 從對應運行級別服務清單刪除服務
- rc-service 管理服務啟停
添加和刪除服務時,需要增加運行級別標識,例如常見的default,boot等等。 一般使用默認運行級別default即可,特殊的服務需要自行搜索一下相關配置。 舉個例子,現在我們先查看一下默認級別都有什么服務。 在終端里運行rc-status命令,運行后終端結果如下
然后分別嘗試以下把sshd服務禁止啟動,再把sshd服務開啟啟動。 只需要運行rc-update del sshd就可以禁止sshd服務啟動了。 同樣的,運行rc-update add sshd default就可以在啟動時開啟sshd服務。
不想重啟板子,重新啟動服務可以用rc-service來管理當前系統的服務程序。
-
USB接口
+關注
關注
9文章
701瀏覽量
55695 -
RAM
+關注
關注
8文章
1369瀏覽量
114765 -
DHCP
+關注
關注
0文章
105瀏覽量
19731 -
Flash存儲
+關注
關注
0文章
38瀏覽量
8321 -
Ubuntu系統
+關注
關注
0文章
91瀏覽量
3993
發布評論請先 登錄
相關推薦
評論