個人で調べた範囲のまとめ。
Magiskを使ってAndroidのrootを取る事が前提
次の条件のいずれかが揃っていればRoot化可能なはず。
adb
とfastboot
はAndroidをいじるなら何かと必要なので入れておきましょう。
Ubuntuならsudo apt install android-tools-adb android-tools-fastboot
で入ります
1.と2.の方法についてはMagisk公式にも記載あり: https://github.com/topjohnwu/Magisk/blob/master/docs/install.md
1.fastboot で カスタムリカバリー を焼く方法
条件
- Bootloader Unlock 済 (fastboot flashできる状態)
- Root化したい端末向けのTWRPバイナリが手に入る
- TWRP公式 https://twrp.me/ で希望の端末のTWRPバイナリがあるか検索
- もしTWRP公式に載ってなくても[ 端末名 TWRP ]などでググると誰かが移植して公開してるのが落ちてるかも。
- 誰かが移植して適当に公開しているTWRPバイナリは危険な気がするけど、度胸
方法
-
fastboot flash recovery [twrp_img]
でTWRPを焼く - 端末でTWRPを起動し、TWRP上でmagiskをFlash
- Android上でMagiskManagerを起動し、magisk本体をDirect Installする
ポイント
- Android上で動くMagiskが自身のROMを書き換えるので、Stock ROMが不要
- 発売して間もない端末や、マイナーすぎる端末はTWRPバイナリがまだ存在しない事が多い
2.fastbootでMagiskインストール済みのboot ROMを焼く
条件
- Bootloader Unlock済み(fastboot flashできる状態)
- Stock ROM(boot.img)が手に入る
- メーカーのウェブサイトから入手できれば最善
- 野良ROMサイト https://www.needrom.com/ から落とせる場合もあるが、怪しいので自己責任で。
- [端末名 Stock ROM]とかでググるとヒットするかもしれないが、更に怪しいのでこれも自己責任で。
方法
- root化したい端末のboot.imgを予め転送しておく
- MagiskManager.apkをインストールする
- MagiskManagerを起動し、
Install Magisk
→Select and Patch a File
→ (1.)で転送しておいたboot.imgを選択 -
/sdcard/Download/magisk_patched.img
に Magisk インストール済の bootバイナリ(パッチ済ROM)が出来上がります -
adb pull /sdcard/Download/magisk_patched.img
で吸い出しましょう - 端末をfastbootモードにして、
fastboot flash boot magisk_patched.img
でパッチ済みROMを焼きましょう
ポイント
- 対象端末のTWRPバイナリがなくてもMagiskを導入できる
3.SP Flash Toolで Magiskインストール済みのboot ROMを焼く(MediaTek端末)
条件
- MediaTekのSoCを使った端末
- SP Flash Toolが使える状態 (ほとんどのMediaTek端末は使えると思いますが要確認)
- Stock ROMが手に入る
方法
パッチ済みROMを作るまでは fastbootでMagiskインストール済みのboot ROMを焼く の 1~5と同じです
- SP Flash ToolでStock ROMのScatterファイルを指定する
- Stock ROMのboot.imgをパッチ済みに入れ替える
- SP Flash Toolでダウンロードボタンを押してから、電源を切った状態の端末をUSB接続する
ポイント
- Bootloader Unlockする必要なし
- そもそもMediaTek端末はBootloaderがUnlockできないものは少ないかも
4.EDLモードで Magiskインストール済みのboot ROMを焼く(Snapdragon端末)
(原理的にはできるはずだが、よくわかってない)
SnapdragonのEDLモードでFlashするツールがMi Flash Tool
しか見つからなかったが、SP Flash Tool
でいうところのScatterファイルがどうなっているのかよくわからない