我很早以前就想測試手機上刷原生Linux系統,目前可選的方案有Ubuntu touch、postmarketOS等。Ubuntu touch是相對較成熟的一個方案。前段時間買了一臺二手MX4刷Ubuntu touch,這裡詳細分享一下整個刷機過程和注意事項。
Ubuntu touch支援的手機型號很多,但國外的機型不好買,我推薦下面幾款國產機:
- Xiaomi Mi A2(小米6X)
- Google Pixel 3a/3a XL
- Oneplus One
- Xiaomi Poco M2 Pro
- Xiaomi Redmi Note 9 Pro Max
- Xiaomi Redmi Note 9S
- OnePlus 6 and 6T
- Meizu MX4
- Xiaomi Mi 6
- Xiaomi Redmi Note 9 Pro
- Xiaomi Redmi Note 7 Pro
- Google Nexus 5
- Xiaomi Poco F1
- Xiaomi Mi MIX 3
- Xiaomi Redmi Note 7
- Oneplus 5 and 5T
- Xiaomi Mi 8
- Oneplus 3 and 3T
刷機的大概流程是,當然有的步驟不是必須的,比如ROOT:
當初選擇MX4只是因為它便宜。但我不推薦新手選擇這款手機刷機,因為這次就把所有刷機的坑都踩了一遍。刷Ubuntu touch第一步是解鎖bootloader。因為窮買了臺便宜的二手MX4,結果遇到的是黑商家,商家賣的強制刷機後的機器(flyme賬戶沒有正常退出,大機率最初是撿的或者偷的手機,無法透過官方途徑root),賣家不肯退貨,只能自認倒黴。
這種裝置光root就有點頭疼了。我不介紹這個root過程,也不建議大家買這樣的手機。可以正常登入Flyme賬戶,在系統設定裡開啟即可開啟root,無需第三方軟體。
第二個坑是如何解鎖bootloader。其它安裝手機解鎖bootloader相對簡單一點,魅族沒有官方解鎖bootloader方案。不過MX4 在flyme4.2.8版本可以第三方解鎖bootloader,網上也很容易下載工具包。
但是如果升級到了flyme5或者flyme6就需要降級,且不能直接降級flyme4.2.8,需要先刷flyme4.5.7。所以需要刷機兩次,flyme4.5.7的rom有點不太好找。
已經解鎖bootloader並root後,先刷入MX4刷機包裡coffee的中文recovery。是不是覺得離成功很近了?MX4還有一個坑,就是需要調整cache分割槽大小才能成功刷入Ubuntu touch。這個需要用到adb工具的parnted工具,這個門檻稍微高一點,而且操作不當可能會徹底變磚。首先透過adb連線手機:
#連線手機
adb devices
#進入adb shell
adb shell
#使用parted工具
parted
#檢視所有分割槽
print
#你需要調整cache、system、userdata三個檔案大小,建議首先調整date檔案大小,刪除date檔案所在分割槽假設是16
rm 16
#重建分割槽,並命名分割槽,如果不支援ext4就先格式化程ext2,再透過recovery格式化分割槽
mkpart data ext4 起始扇區 結束扇區
name 16 data
同理調整cache、system大小,由於cache、system分割槽都需要從data裡面借空間,所以提前要計算好需要佔用的空間大小。cache推薦選1G左右、system後續想裝軟體的話建議4G以上。MX4不支援記憶體卡,又是一個坑。
調整分割槽完畢後,連線最新的Ubuntu touch刷機工具刷機。接下來的過程就是傻瓜化的了。如果刷機還有問題,切換到USB2.0介面進行刷機。Windows系統刷機注意先下載好驅動包。注意Ubuntu Touch會修改分割槽結構,如果手機原生的BootLoader損壞了切勿回刷,會徹底變磚(我就遭遇了一次,刷廢了一臺MX4)
如果走過這些坑接下來就可以看到Ubuntu touch的操作介面了,下次介紹一下這個系統怎麼樣。不過初步上手感覺不如PostmaketOS和Mobian。