--- description: Reincarnation... tags: Android, dark --- {%hackmd @ViafaSia/H18RVTzeK %} [TOC] # Root my Galaxy M33 5G ## Preface 由於 Galaxy M33 5G (SM-M336B) 是一隻滿新但又有點冷門的手機(先前只在印度釋出),網路上還沒有大神製作這支手機的 Custom Recovery/ROM ,這代表著先前我所熟悉的方法將無法使用。 在確定自己沒有老路線可以走之後,我的目標改成至少要 Root 這支手機,Recovery Mode 就不管了,也因此和先前的 Rooting 不太一樣。 也因為是新手機的關係,網路上認真撰寫的文章並不多,幾乎都是自動生成的內容農場,使得我在找資料與研究的過程中頻頻碰壁,拖了整整 2 周,過程還一度懷疑是不是半年內都沒得 Root 這支手機... 總而言之,以下就是本次 Rooting 的一些筆記。 ## Ref - [How to Unlock Bootloader on Samsung Galaxy Phones and Tablets](https://www.thecustomdroid.com/samsung-galaxy-bootloader-unlock-guide/) - [How to Root Samsung Galaxy M33 5G Using Magisk](https://droidmeguide.com/root-samsung-galaxy-m33-5g/) ## Plan 研究的差不多之後,也就確立了我的 Rooting 路線將不經由任何 Recovery Mode ,官方與第三方的都不用,而是在解鎖 Bootloader 之後,直接 flash 帶有 Magisk 的 ROM 。 1. Prepare/Create a stock ROM that patched by Magisk - find a stock ROM - patch the stock ROM by Magisk 2. Unlock Bootloader - move into Unlock Mode and unlock the bootloader - disable VaultKeeper - unlock bootloader for the 2nd and last time 3. Flash this new ROM - via Odin 4. Finish :tada: ## Tool - Stock ROM - from SamFirms - Magisk - Magisk-v24.3 - Odin - Odin3_v3.14.1_3B_PatcheD ### Boot to Download Mode 由於少了先前的 Bixby Botton ,現在要進入 Download Mode 的方式如下: 在關機的前提下按壓著 - Volume Up Button - Volume Down Button 手不放開按鈕的同時,插入 USB 連接線。 :::info 在 OEM unlocking 啟用的前提下進入 Download Mode ==之前==,會先跳出 Device Unlock Mode 的選項。 - 如果單純繼續前往 Download Mode 的話,就是按一下 Volume Up Button 。 - 如果想要解鎖 Bootloader 的話,則是長壓 Volume Up Button,大約 3s 到 5s ,手機的 Bootloader 就會解鎖,接著系統就會緊接著進行 Factory Reset ;解鎖 Bootloader 只會有一次,往後的 Flashing 都沒有鎖需要再解除。 ::: [參考影片](https://youtu.be/eXIC0Jufuj0) ## Walkthrough 本次的 Rooting 同樣是按照網路上的指引進行,畢竟我沒有足夠的智商與能力去親自改 Android 的 code ,文章在 [#ref](#ref) 。 ### Getting a ROM that patched by Magisk 首先,手機啟用 USB debugging 功能後連接 Desktop ,將預先準備好的 Magisk 的安裝檔 (.apk) 與 Stock ROM 傳送到手機中。 :::info 從 [SamFW](https://samfw.com) 取得的 Stock ROM 會是這個樣子的檔名。 AP_M336Bxxxxxxxx_M336Bxxxxxxxx_xxxxxxxxxxx_xxx_user_low_ship_MULTI_CERT_meta_OSxx.tar.md5 ::: 在手機上安裝 Magisk 好之後,使用 Magisk 將 Stock ROM 進行 patch 。 :::info 此時安裝的 Magisk 並未根植於系統中(並未取得最高管理權限),我們只是需要他的 patch 的功能。 白話的說,這個 Patch 的功能就是在 Stock ROM 的身上打針,把 Magisk 直接注射到 ROM 裡面。 屆時安裝完成時, Magisk 就已經根植於系統當中。 ::: 完成後, Magisk 會產生一個 `magisk_patched-nnnnn_xxxxx.tar` 的檔案,將其傳回 Desktop 中,這就是我們等等要 Flash 到手機中的 ROM。 :::info nnnnn 為 Magisk 的版本號。 xxxxx 為英數混合的亂數。 ::: :::danger 原先爬文的過程中,以為我必須要將 Stock ROM 解壓縮 2 次,取得 `boot.img` 之後,將這個映像檔 Patch 過,然後自行重新封裝成可被 Flash 的 ROM ;所以在研究的過程中還找了些 Custome ROM 的資料,當然了我大多都是看不懂的,實在是難以下嚥。 所幸後來有看到 [#Ref](#Ref) 那篇,才知道 Stock ROM 可以直接被 patch ,無須自行拆封與重新封裝。 ::: ### Unlock Bootloader 這部分基本上完全按照 [#Ref](#Ref) 的指引,由於和先前 Galaxy S8 的方式不同,==多了一道 VaultKeeper 的防線需要關閉==。 總而言之,按照 [#Boot](#Boot) 所寫的方式進入 Device Unlock Mode 解鎖 Bootloader 後,在全新的系統中連上網路就能關閉 VaultKeeper 了。 :::success 不需要登入 Samsung 或 Google 的帳號,開機時的各種登入與設定全部 skip 即可(反正等等要 Flash 了),直接連上 Wi-Fi 然後到設定中 spam 檢查更新即可。 ::: 接著關機,進行下一個步驟。 :::danger 如果 VaultKeeper 沒有正確的被關閉的話,在這次的重新開機的過程,VaultKeeper 會將 Bootloader 給重新鎖定,就沒辦法繼續下一個步驟。 ::: ### Flash ROM by Odin 這部分就比較廢話一點了,就是正常的 Flash 流程。 手機關機後,按照 [#Boot](#Boot) 的指引進入 Download Mode 。 在 Odin 上,選擇 AP Mode 然後選擇我們已經 Patch 過的 ROM ,將其 Flash 到手機中就完成了。 :::success 由於根本上迴避了 Recovery Mode ,所以並不需要按照該文章的指示將自動重新開機給取消,讓 Odin 幫我們在 Flash 成功後把手機自動重新開機並無妨。 ::: ### Rooting check 這就是完全廢話了,安裝檢查的程式,檢查是否成功 Root ;當然了,會把這篇筆記寫完的我肯定是成功的。 ## Soft-Brick 某天我決定重新 Flash 一次系統,結果在過程中失敗了,而且跳出以下警訊。 > An error has occurred while updating the device software. 查了一下,這個畫面好像就是所謂的 soft-brick ,基本上這時候按什麼都沒用。 後來先依靠官方的 Smart Switch 來嘗試恢復手機,但似乎因為我已經刷過 costume ROM 的關係(?)所以又失敗了。 > This model does not support firmware upgrades and initalization. 最後只能依靠 FRP Hijacker 這個軟體來解決 soft-brick ,起初很懷疑這個軟體的安全性,懷疑是不是人家寫的帶毒軟體,但好險不是。 解決 soft-brick 之後,想說要不要先 Flash stock ROM 但發現不行,不知道為什麼,所以後來就直接再刷一次帶有 Magisk 的 ROM 了。 Thanks for reading.