droid.rooter
トラブルシューティング上級読了時間9分

root化したAndroidでOTAアップデートに失敗:再書き込みの前に原因を切り分ける

root化した端末でOTAが失敗するのは、たいていアップデートエンジンが正しく働いた結果です。ファームウェアを丸ごと書き込む前に、何が拒否されたのかを突き止めましょう。

Android system update screen showing a failed installation on a rooted phone
目次
  1. アップデートが拒否される理由
  2. まず確認:パーティション方式
  3. 考えられる原因
  4. 切り分けの順序
  5. 失敗の内容を読む
  6. 何が改変されているかを把握する
  7. アップデートの前に復元する
  8. 正しいストックイメージを用意する
  9. 正常に起動する状態へ戻す
  10. データへのリスクを率直に
  11. 万能な手順がない理由
  12. よくある質問

root化した端末でOTAが拒否されるのは、たいていアップデートエンジンが正しく動作した結果です。更新しようとしたパーティションを確認したところ、改変されていたため停止したのです。これは故障ではなく検証の結果であり、対処法は、ファームウェアを丸ごと上書きすることではなく、どのパーティションが拒否されたかを突き止めることです。

アップデートが拒否される理由

Androidのアップデート処理は、書き込みの前に、置き換える予定のパーティションの現在の状態を検証します。パーティションがアップデートパッケージの想定と一致しなければ、中途半端に更新された予測不能なシステムを作るのではなく、アップデートを止めます。

rootはブートチェーンを改変します。仕組みはこれがすべてです。つまりroot化した端末は、この検証が検出するために作られた不一致をそのまま抱えています。

この点を理解しておくと、問題の見え方が変わります。端末が壊れているわけではありません。ハードウェアには何の問題もありません。どこかが改変されていて、アップデーターがそれに気づき、拒否したのです。やるべきことは、それが何かを特定することです。

なお、rootが原因でなくてもパーティションは改変されます。システムの変更を許可したカスタムリカバリー、システムファイルを書き換えたroot権限のアプリ、過去の改変の名残などがあれば、rootをとっくに外していても同じ拒否が起こります。

まず確認:パーティション方式

取れる選択肢のほとんどはこれで決まります。最初に答えを出すべき問いです。

A/B端末は、対象のパーティションを2セット持っています。アップデートは使用していないセットに書き込まれ、使用中のセットで操作を続けられます。再起動で切り替わります。これがシームレスアップデートの仕組みです。

非A/B端末はセットが1つだけです。アップデートは現在使っているパーティションに適用され、通常はリカバリー経由で行われます。

製品名から方式を確実に見分ける方法はありません。端末上でパーティション構成を確認するか、お使いの機種の正確なモデルについてメーカーのドキュメントで確認してください。ここを間違えると、当てはまらない手順を進めてしまいます。

実際の違いは次のとおりです。

A/B非A/B
アップデートの適用先使用していないスロット使用中のパーティション
失敗した場合の退避先もう一方のスロットは無傷2つ目のコピーなし
アップデート後のrootの維持文書化された手順で可能通常は後からroot化し直す
失敗時のリスク低い(動作するスロットが残る)高い

考えられる原因

以下は候補です。どれに当たるかは、端末と入れたものによって決まります。

1. 改変されたブートイメージ。最も直接的なケースです。rootがブートチェーンにパッチを当て、アップデーターが確認して不一致になりました。

2. ストックイメージのバックアップがない。rootフレームワークはアップデート前に元のイメージを復元できますが、それはバックアップがある場合に限ります。フレームワークの標準のインストール手順ではなく、パッチ済みイメージを直接書き込んでroot化した場合、復元元が存在しない場合があり、その場合は復元の手順が失敗します。

3. 改変されたシステムパーティション。システムの変更を許可されたカスタムリカバリーや、書き込みを行ったrootアプリが残した変更は、アップデーターに検出されます。この変更はrootを外しても残るため混乱しやすく、unrootして再試行しても同じ拒否が出ます。

4. モジュールの干渉。システムの動作やシステムファイルを変更するモジュールは、検証やアップデート後の起動に影響することがあります。

5. スロットの状態。A/B端末では、アップデート時のアクティブスロットと、アップデートの対象スロットの両方が影響します。過去のアップデートでスロットが想定外の状態になっていないかも関係します。

6. リカバリーの状態。ストックリカバリーの代わりにカスタムリカバリーが入っていると、アップデートがリカバリーを使うときの動作が変わります。

切り分けの順序

ファームウェアパッケージに手を付ける前に、次を順に進めてください。

失敗の内容を読む

正確なエラー、失敗した工程、その後リカバリーで再起動したかどうかを記録します。ダウンロード中の失敗、検証中の失敗、インストールは終わったが起動しない場合は、それぞれ別の問題です。

端末が単にアップデートできないのではなく、起動しなくなった場合は、ここで止めて起動症状ごとの意味に進んでください。状況が異なります。

何が改変されているかを把握する

ストックに戻すには、何がストックでないかを知る必要があります。boot(新しい端末では、ramdiskを持つ別イメージも含む)が代表的です。systemは忘れられがちで、recoveryはその次に忘れられがちです。

改変を自分で行っていない場合や、端末を譲り受けた場合は、何も分からないものとして、すべての候補を疑ってください。

アップデートの前に復元する(後ではなく)

Magiskの公式ドキュメントには想定された手順が書かれています。インストール時にMagiskが作ったバックアップからストックイメージを復元してアップデート前の検証を通すこと、そして復元後は再起動しないことです。その時点で再起動するとアンインストールが完了してしまいます。その後は通常どおりアップデートでき、rootは公式の手順で後から再適用します。

実際に入れたrootツールの最新のドキュメントを、お使いの端末のパーティション方式に合わせて読んでください。この手順はバージョンごとに変わっており、A/Bと非A/Bの扱いの違いも大きいためです。古いフォーラムの手順は、すでに存在しない仕組みを説明しているかもしれません。

Magiskのドキュメントは、非A/B端末にはシームレスな方法がなく、後からPCでroot化をやり直す必要があることも率直に述べています。途中で気づくのではなく、始める前に知っておきたい点です。

正しいストックイメージを用意する

フレームワークのバックアップがない場合は、お使いの機種、現在のビルドに完全に一致する元のイメージを、メーカー公式の配布元から入手する必要があります。近いバージョンや別のリージョンではいけません。ビルドの不一致が最もよくある失敗です。書き込みは問題なく終わるのに起動しない端末になります。

正常に起動する状態へ戻す

端末がまだ起動するなら、時間も選択肢もあります。活用してください。

試行後に端末が起動しなくなった場合は、優先事項が起動できる状態への復旧に変わります。A/B端末では、もう一方のスロットを最初に確認します。役に立つものが入っているかはアップデート履歴によりますが、確認しても何も失わず、データも変わりません。

正しい元のブートイメージを復元する操作は、bootパーティションだけに書き込みます。ユーザーデータには触れません。望ましいのはこの操作です。ファームウェアを丸ごと書き込むのは別の操作で、結果も異なります。この点は後述します。

データへのリスクを率直に

ここまでの切り分けでは、ユーザーデータには触れません。次の操作は触れます。

操作データを消すか
ストックのブートイメージを復元いいえ(bootパーティションのみ)
公式OTAを適用ユーザーデータは消えません
公式の署名付きパッケージをサイドロードユーザーデータは消えません
アクティブスロットの切り替えそれだけでは消えません
リカバリーまたは設定から初期化消える(元に戻せない)
dataのフォーマット消える(元に戻せない)
消去オプションまたは-wフラグ付きのファームウェア書き込み消える(元に戻せない)
ブートローダーのロックまたはアンロック消える(アンロックで消去される)

落とし穴は、消去の手順を最初から含んでいるメーカーの書き込みスクリプトです。失敗したアップデートを直そうとして実行し、端末内のすべてを失う人がいます。スクリプトを開いて内容を確認してください。ファイルベース暗号化を使う端末では、消去するとデータと一緒に鍵も消えるため、あとから復旧できません。データを失わずに起動ループを直す方法で、これによって従うべき手順がなぜ変わるかを説明しています。

バックアップしていないデータがあるなら、端末がまだ起動する今のうちにバックアップしてください。この機会は二度と戻りません。

万能な手順がない理由

アップデートの実装はメーカーごとに異なります。Samsungの書き込み方式はGoogleとは違い、XiaomiはOnePlusとも違います。同じブランドでも、世代、リージョン、キャリア版で違いがあります。

そのため、この記事ではコマンドの一覧ではなく、考える順序と分類を示しています。コマンド一覧は、読者によってはデータを失う結果になりかねず、あらゆる機種で安全に使える一覧は書けません。

お使いの機種とビルドに合った手順は、メーカーまたは継続的に更新されている機種別の情報源で探してください。ブランドごとの違いが特に大きい点は、root化できる端末の一覧で扱っています。

よくある質問

アップデートを見送ってもよいですか? 1回分なら妥当な選択です。ただ続けると、セキュリティパッチが溜まり、現在のビルドと最新ファームウェアの差が広がって、最終的なアップデートはむしろ難しくなります。

unrootすれば直りますか? 直る場合もありますが、そうとは限らず、そこが混乱のもとです。ブートチェーンだけが改変されているなら、復元で不一致は解消します。systemパーティションやリカバリーも改変されていると、rootを外してもその変更が残り、アップデートは拒否されたままです。

アップデートはできたがrootが消えました。失敗ですか? いいえ。特に非A/B端末では、想定されている結果のひとつです。アップデートは成功し、改変が置き換わっただけです。新しいビルドのイメージを使って、通常の手順でroot化し直してください。

アップデートは入ったのに起動しなくなりました。 別の問題で、より急ぐ必要があります。起動症状ごとの意味を確認し、端末がリカバリーに入る場合はリカバリーで起動し続けるときの確認点を見てください。初期化はしないでください。

メーカーの修復ツールを使うべきですか? これらは通常、ストックのファームウェアをダウンロードして書き込むもので、正当な方法です。重要なのは、その書き込みでお使いの機種のユーザーデータが残るかどうかです。これはツールの画面ではなく、ファームウェアとモードで決まります。実行前に確認してください。

アップデートが失敗し続けるなら、root化を続ける価値はありますか? rootで得られるものとの兼ね合いで、判断が分かれます。アップデートの手間は一度きりではなく続くコストです。rootのリスクを率直に解説した記事で、その点を含めて取り上げています。


関連記事: Magiskの書き込みに失敗 · データを失わずに起動ループを直す方法 · Androidがリカバリーで起動し続ける · SamsungのOdin FAILエラー · おすすめのMagiskモジュール

出典:Magiskの公式OTAアップグレードのドキュメント。Android Open Source ProjectのA/Bシステムアップデートのドキュメント。

最終確認日:2026年8月19日。アップデートの仕組み、パーティション方式、メーカーの書き込み手順は、機種、リージョン、ビルドによって異なります。お使いの端末の公式ドキュメントで確認してください。