Nothing Phone 2aをメイン機として9か月ほど経ちます。

そろそろ自分好みにカスタムしたいと思い、今回は「root化」に挑戦してみました。

# 【重要】リスクと注意点

  • root化をすると、メーカーの保証が受けられなくなります
  • アンブリックツールあるようですが、文鎮化して今までの生活に戻れなくなる可能性があります。
  • root化された端末では動作しないアプリがあります。(銀行アプリなど)
  • ブートローダーアンロック時は、データがすべて削除されます。

この記事を書いた時点(2025/08/31)の情報に基づいています。今後のアップデートで手順が変更される可能性もありますので、自己責任でお願いします。

# 事前準備

ちなみにNP2aはPhone (2a) - Pacmanです。

スクリーンショット 2025-08-30 202409.png

OTA Image列のHereを押すと、新しいページが開かれます。

注意
必ず自分の端末に合ったバージョンをダウンロードしてください。

スクリーンショット 2025-08-30 202652.png

この中から、Pacman_Vx.x-xxxxxx-xxxx-image-boot.7z
(今回の場合はPacman_V3.2-250815-1642-image-boot.7z)
というところをクリックして、ダウンロードしてください。

スクリーンショット 2025-08-31 110309.png

ダウンロードした.7zファイルを解凍して、init_boot.imgをNothing phone2aの内部ストレージに移動しておきます。

# なぜinit_bootなのか

最新のAndroidでは、昔のように boot.img を書き換えるだけでは root が通用せず、

OS起動前に動く init_boot(A/Bスロット対応の初期化領域) でパッチを当てる必要があります。

以前は boot.img を書き換えれば root が有効だった気がしますが、最新Androidでは システム保護(Verified Boot)や読み取り専用化 が強化されています。

boot.img を書き換えるだけでは、OS が起動時に署名チェックに引っかかって root が反映されなかったり、起動不可になることがあります。

# magiskでinit_boot.imgにパッチを当てる

Screenshot_20250831-115111.png
でインストールしたMagiskを開き、Magiskと書いてある隣の「インストール」をタップして、パッチするファイルの選択を押します。

Screenshot_20250830-204328.png

先ほど移動したinit_boot.imgを選択してください。

Screenshot_20250830-204357.png

Screenshot_20250830-204554.png

パッチが適用できたら、パッチされたinit_boot.imgは内部ストレージのダウンロードフォルダに入っているので、

pcにコピーしておいてください。

# ブートローダーのロックを解除する

開発者向けオプションから、OEMロック解除USBデバッグを有効にします。

Screenshot_20250830-205503[1].PNG

(既にブートローダーアンロックをしてある場合は灰色になります)

ここからは、adbコマンドを使ってブートモードに入ります。

pcと接続されているか確認します。

 adb devices

次にこのコマンドを実行して、ブートローダーから再起動します。

adb reboot bootloader

これでfastbootに入れたので、もう一度デバイスが接続されているかを確認します。

fastboot devices

最後に、ブートローダーのロックを解除します。

fastboot flashing unlock

端末の画面にプロンプトが表示されたら、+か-の音量ボタンを押してブートローダーのロックを解除します。
自動で再起動されないので、手動で再起動をかけてください。

fastboot reboot

# Magiskパッチ済みのinit_boot.imgをフラッシュする

いよいよroot化の最終段階です。

もう一度ブートローダーモードに入ります。

adb reboot bootloader

次に、init_bootのアクティブスロット(Slot A/Slot B)を確認します。

注意
間違えたスロットに書き込むと最悪文鎮化しますので、よく確認してください。
fastboot getvar current-slot

ここで表示されたslotを使います。

  • 端末が Aスロットから起動している場合:
    current-slot: a

  • 端末が Bスロットから起動している場合:
    current-slot: b

このように表示されます。

最後に、先ほどpcに移動しておいたMagiskパッチ済みのinit_boot.imgをフラッシュします。
[slot]には先ほど確認したスロットを、[ファイル名]にはpcにコピーしたファイル名を入れます。

ちなみに
adbの実行ファイルと同じフォルダにinit_boot.imgを置いておけば、全体パスは不要で、ファイル名だけで大丈夫になります。
fastboot flash init_boot_[slot] [ファイル名].img

例:fastboot flash init_boot_a magisk_patched-29000_Jm34H.img

完了したら、再起動します。

fastboot reboot

これでroot化は完了です!

再起動後、Magiskアプリを開くと、インストール済みと表示されれば成功です。
Screenshot_20250831-115111.png

# モジュールを入れたりしてみた

私はさっそく、音質をよくしたかったので「ViPER4」モジュールや、カメラのシャッター音を消すモジュールなどを導入してみました。

Screenshot_20250830-214641.png

シャッター音を消すモジュールはこちらを導入しました。