- Magisk
- Magiskアプリのダウンロード
- インストール方法
- 必要なもの
- 前提条件:ブートローダーをアンロックする
- 1.1 カスタムリカバリ不要・Magisk開発元で推奨されている方法
- 2. KernelSUを使う方法 Android13初期搭載機向け
- 3. カスタムリカバリがある場合
- Rootチェック
- アンインストール方法
Magisk
大昔はSuperSU等いろいろRootアプリがあったが、現在は100%「Magisk」というアプリが使用される。今はカスタムROM自体にRoot機能を組み込むメリットも少なくなりMagiskが多く使用される。
この機種専用、といったような方法ではなく、理論上はブートローダーアンロックができればあらゆるデバイスをカスタムリカバリが無くともMagiskを使ってRoot化することが可能。
逆に言えば、「アプリを入れて端末単体」でRoot化するのは今現在は不可能ということだ。
そういったアプリは脆弱性を突いてRoot権限を奪うというものでセキュリティリスクが非常に高い。
iRoot、KingoRoot、One click Root等、Root化可能を謳うようなアプリがあるが、ソースコードや動作の仕組みが隠されており中にはウイルスやマルウェアが仕込まれている場合もあり、非常に危険なので絶対に使わないでください。
Magiskは、オープンソースで開発が進んでおり透明性が高い。また単体でRoot化を隠すことも、モジュールを追加することもでき、拡張性が高い。
詳しくわかりやすい仕組みや利点の解説は以下のサイトを確認してみてください。
Magisk とは何か ― その機能と導入のメリット | neggly.org
Magiskアプリのダウンロード
Android5.1以下は非対応です。
正式版
Assets内の「Magisk-v○○.apk」をダウンロードする
APKをそのまま端末にインストールする。
Github以外からダウンロードするMagiskアプリは危険なコードを含む可能性があるので使用しないでください
Canary版
Canary版はDSUのサブOS側でもMagiskを使うことができるようになります。
また常に更新されているので、新OS対応も一番早いですが、その分不具合が起きる場合もあります。
https://github.com/topjohnwu/Magisk#downloads
Canary版はトップページにあるDownloadsのCanaryを押すことでダウンロードされる。
以降のやり方は一緒
インストール方法
必要なもの
- 本体
- USBケーブル
- インターネット環境
- 端末のboot.img またはinit_boot.img ファイル
前提条件:ブートローダーをアンロックする
「端末名 ブートローダーアンロック」などで検索し、ブートローダーアンロック方法を実行してブートローダーをアンロック状態にする。
Googleなどの場合
- 開発者オプションのOEMロック解除を有効化する
- Fastbootモードで起動し、PCに接続する
- fastboot flashing unlock コマンドを実行する
- 端末の画面がアンロック画面になるので音量キーを操作してunlock bootloaderを選ぶ
- 再起動され、ブートローダーアンロックが完了する
※GetdroidtipsやTweakdroidなど、存在しない端末のBootloaderUnlockの方法を紹介しているサイトがありますが、完全な嘘サイトなので参考にしないでください!!!!!
正式な手順でブートローダーアンロックができない機種
※富士通の一部機種(Arrows Be4 plusのみ確認)はなぜかアンロック可能
※国内キャリアのXperiaは有料で非公式アンロックが可能。海外版、SIMフリー版は正式に解除可能
※Huaweiは一部機種は分解して非公式アンロックが可能
※Oppo系は一部機種可能
1.1 カスタムリカバリ不要・Magisk開発元で推奨されている方法
Android13が初期搭載のデバイス(例:Pixel7/7Pro/7a,OnePlus11,Xiaomi13シリーズ等)(TensorG2やsnapdragon 8gen2、
Dimensity 9200/8200/7200機)(カーネルバージョンが"x.xx.xx~android13-x-000~")
の場合、boot.imgではなくinit_boot.imgにパッチ、init_bootパーティションにFlashする必要があります。
使いまわしができないのも同様です。
※13プリインでもinit_bootパーティションが無い場合はboot.imgを使います(Snapdragon 8+gen1や7+gen2の場合該当する)(カーネルバージョンが"x.xx.xx-android12-x-000~")
プリインが12以下で、アップデートでAndroid13になった場合は今まで通りboot.imgを使います
端末のboot.img または init_boot.imgを用意する。両方用意する必要はなく、上に該当するイメージファイルを用意する。
boot.imgはカーネル(OSの中核機能)も含まれているので、バージョン違い、リージョン違い、機種違い等boot.imgを使いまわすことは不可能です!!
つまりアップデートでMagisk消える→旧Verのパッチ済みBoot.imgを焼く等すると起動しなくなる可能性が高いです。
※boot.imgが配布されていない端末でもDSU等を使い端末から抜き出すことができる。
au版Redmi Note 10 JE(XIG02)にMagiskを入れてroot化させる!- ミ田ろぐ
Xiaomi端末であれば公式がファームウェアを公開しているので入手は容易だ。
- ①Magiskアプリを端末にインストールする
apkから普通にインストールする。
- ②boot.imgまたはinit_boot.imgを端末にコピー
- ③Magiskアプリを起動
- ④インストール→パッチするファイルの選択→コピーしたboot.imgまたはinit_boot.imgを選択
- ⑤端末のDownloadフォルダ(/sdcard/Download/)にパッチされたimgファイル(magisk_patched_xxxxx.img)があるのでPCにコピーする
- ⑥端末をFastbootモードで起動させる、PCから以下のコマンドを実行し
boot.imgの場合
fastboot flash boot magisk_patched.img
※magisk_patched.imgは例で、ファイル名は適宜抜き出したものに打ち換えること。
※init_boot.imgを使う場合、bootには焼かないこと。↓のコマンドでないとブートループします。
fastboot flash init_boot magisk_patched.img
上のコマンドでFlashに失敗する場合、a,bパーティションを直接指定する。(Redmi note 13 Pro+など)
fastboot flash init_boot_a magisk_patched.imgfastboot flash init_boot_b magisk_patched.img
焼く。
- ⑦再起動してMagiskがインストール済となっていることを確認する
パッチする工程だが、Rootしたいデバイスが使えない状態でも、同アーキテクチャのデバイスであればRootしたいデバイスのイメージファイルを作ることができる。
パソコンの泥エミュだとx86用のパッチをされるので使えないイメージができる。
2. KernelSUを使う方法 Android13初期搭載機向け
割と簡単かつ確実に導入することができるが、機種を選ぶのでよく確認すること。
- カーネルバージョン5.x以降であること
- GKI2.0対応であること
- fastboot bootコマンドで起動できること
が条件。
手順
- ①kernelSUアプリ、Magiskアプリを端末にインストール
ここで、KernelSUアプリが「未サポート(unsupported)」と表示される場合この手順は使えない!
- ②端末のカーネルバージョンと一致するkernelSUのbootイメージファイルをダウンロードする
使うファイルは端末メーカー、端末のカーネルバージョンによって異なるので注意深く確認すること
- ③"fastboot boot android-13-5~-boot.img"を実行し、起動させる。
- ④kernelSUアプリを起動し、Workingとなっていることを確認する。下部盾アイコンの”スーパーユーザー”からMagiskアプリを許可する
- ⑤Magiskアプリを起動すると”直接インストール”が可能になっているので実行する→再起動
- ⑥再度Magiskアプリを開き、追加のセットアップを”直接インストール”でまた実行
以上で完了する。専用記事なら画像付きで詳しく書いているので見てね
3. カスタムリカバリがある場合
端末によっては有志が作成したカスタムリカバリがある。
PitchBlack Recovery Official Devices - PitchBlack Recovery Project
Twrp公式はAndroid11から死んでいるので12以降対応版はXDAやTelegramなどで自分で探す必要があるが、
Xiaomiデバイスの場合、まとめられているので探すのが楽。
3.2.1 TWRP系(OrangefoxやPBRP含)の場合
- ①端末をTWRPで起動し、MagiskのAPKファイルを端末にコピーする。
- ②APKファイルをそのままインストール(Flash)する。
TWRPのバージョンが古く、APKが出てこない場合は拡張子.apkを.zipに変更する。
- ③再起動してアプリ一覧にあるMagiskを起動し、ポップアップに従う。
無い場合はAPKをインストールする
3.2.2 TWRP以外のリカバリ(LOS recovery等)の場合
- ①Apply update→ADB sideload を実行し、サイドロードモードにする。
- ②PCから以下のコマンドを実行する
adb sideload Magisk.apk
拡張子はAPKのままでOK。ファイル名は適宜打ち換えてください。
TWRPでもSideloadに対応していれば同じ方法が使えます(advanced→sideload)。端末にコピーする手間が省けます。
- ③再起動してしばらく待つと、アプリ一覧にMagiskが出てくる。起動し、ポップアップに従う。
出てこない場合はMagiskのAPKをインストールすると使える。
※インストール時、verification error等と出てインストール失敗する場合、リカバリ側で弾いているので、Bootパッチの方法を使う必要があります。
Rootチェック
Magiskを入れた状態で、Root権限を使うアプリを実行すると、「スーパーユーザー」の許可プロンプトが出ます。
許可をするとRoot状態でアプリが実行されます。
これでRoot化は完了です。
合わせて読みたい→Root化した結果動かなくなったアプリを動かす方法
アンインストール方法
- Magiskアプリトップ画面の「Magiskをアンインストール」を実行する
「イメージのリストア」はMagiskの設定を残したままアンルートできます。再び使えるようにするには再度インストール処理(パッチしたBoot焼き)が必要になります。
「完全にアンインストール」は設定ファイルも全て削除されます。
- Magiskのパッチを当てていない純正のBoot.img/init_boot.imgを焼く
「イメージのリストア」と同じことを手動で行います。
リストアがうまく動かない場合はこれをすれば確実にアンルートできます。
- MagiskAPKのファイル名を「uninstall.zip」に変更し、TWRPなどからFlashする
カスタムリカバリが起動できる場合に使えます。Sideloadでも動くと思われます。