Android 13リリース時に、ブートローダーアンロック・Magisk導入(Root化)したPixel 6へOTAが降って来ましたが、Magisk(Root)環境なのでAndroid OS”からは”アップデートをインストールできません。
Magisk(Root)状態でアップデートしたので、メモとして記事に残します。多分、Pixelシリーズ共通で使えるはずです。
Magisk導入(Root化)した状態のPixelをアップデート
システムデータは初期化しないで保持したまま更新できますし、モジュールのインストール内容などもそのままですが、更新後にAndroid起動前でパッチ適用していても、AOSPModsのように一部アプリ・モジュールでは設定がリセットされるので、事前に設定をエクスポート・バックアップしておいた方が良いです。
ブートローダーを起動する
デバイス(Pixel)とadb/fastboot環境のPCをUSBケーブルで、USBデバックモードで接続します。
PC側でコマンドプロンプト(ターミナル)を起動し、以下のコマンドもしくは電源キーとボリュームキー下を同時に長押しでブートローダーを起動させます。
adb reboot bootloader


Factory Imageをダウンロード・web経由でフラッシュ
Googleが公開しているFactory Imageのページを開き、対象デバイスのダウンロード項目からアップデートするFactory Imageのzipファイルをダウンロードし、そのままFlashをクリック。

web側で自動的にビルドをインストールしてくれる、Android Flashツールが起動するので「始めましょう」をクリックし、adbのアクセス許可などを求められるので許可します。

Pixelと接続し、ツールにデバイスを認識させてインストールするビルド内容を選択します。
今回はアップデートの適用なので、全てのオプションのチェックを外してビルドのみインストールしました。


インストールを開始し内容を確認したら、後の操作は全てAndroid Flashツール側で行われるので何もしないで待ちます。
5分くらいでインストールが完了し、ツール側から「プラグを抜いても安全」と表示されていればOKです。


ビルドのインストール後、自動的にAndroid OSが起動しますがロック画面を解除せずに、このまま再びブートローダーへ再起動させます。

そのままPCとUSBデバックモードで接続し、adbコマンド打てば良いだけです。
デバイス側はFastboot Modeで起動させたまま待機します。


Magiskを再度適用させる
ダウンロードしておいたFactory Imageのzipファイルを解凍し、出てきたファイルの中に「image~zip」というファイルがあるので、更にそのファイルを解凍。


二重解凍後のフォルダの中にboot.imgがあるので、boot.imgだけ任意の場所にコピーしておきます。

既にMagisk導入済みの別デバイスを使い、Factory Imageのboot.imgにパッチを当てます。

任意の場所にコピーしたboot.imgを、Magiskがインストールされたデバイスのストレージにコピー。

Magiskを起動、インストールをタップし、パッチするファイルの選択から内部ストレージにコピーしたboot.imgを選択。
boot.imgにパッチを適用し、Magiskアプリ側で「ALL done!」と表示されれば完了です。



ダウンロードフォルダ内に格納されているboot.imgをPC側へ送り返し、Fastboot Modeで待機させているPixelとPCを接続。
fastbootコマンドを入力し、パッチを適用したboot.imgをPixelにフラッシュします。
fastboot flash boot 〈パッチを適用したboot.img〉

「Finished. Total time: ◯◯s」と表示されていれば、boot.imgをフラッシュできているので作業は完了です。
確認
更新前は”インストールエラー”を吐いていましたが、ビルドインストール後は何事も無かったように”最新の状態”って表示するようになります。


セキュリティ、ビルド番号もしっかりアップデートされてます。


Magisk・Root権限が必要なアプリの動作も問題なし、国内モデルへグローバルアップデートの適用&Magisk環境ですがFeliCaもしっかり使えます。



あとがき
他にもMagisk(Root)状態でアップデートする方法はいくつかあるのですが、Android Flashツールでビルドをインストールしてパッチを再度適用するのが、殆どリスク無く簡単かつ確実だったのでAndroid 13&Magisk導入と同様の方法で更新しました。
Factory Imageをダウンロードするので、去年の12月に更新したやり方と同様にAOSPのリカバリを起動させて”apply update from ADB”からアップデートをデバイスへ流し込み、更新後にリカバリからadb sideload経由でMagiskのzipを適用する方法でも同様のことができると思います。
もしくはOTA適用後にMagiskからa/bパーティションの別スロットにインストールする形で適用するトカ…。
何れにせよアップデート後に再度、Magiskを適用し直さないといけないので、ビルドのインストールは自動でやってくれるAndroid Flashツールで更新するのが面倒なくて楽です。
最近のコメント