ADB/Fastbootを使ってアンドロイドのシステム復旧

モバイル

Android端末がいかれてしまいました。電源は入るので、Android SDKを使っドライバを入れたり、ROMファイル+Google Appsを入手したりと復活させるための準備をしました。Android復活までの手順についてはこちらの記事で書いています。

最後に、ADB/Fastbootコマンドを使ってROMを上書きして復旧させます。

使うプログラム

端末がある程度起動してUSBデバッグ機能で接続している場合はADB.exeを使います。Fastbootモードで起動してUSB接続している場合はFASTBOOT.exeです。

いずれも、Android SDKのplatform-toolsにあります。コマンドプロンプトを起動し、プログラムがあるディレクトリまで移動します。

CD C:\android-sdk-windows\platform-tools
C:\

次に、接続を確認します。

adb devices
もしくは
fastboot devices

このコマンドを入力すると接続用プログラムが起動もしくは更新されますので、接続を開始して時間が経っていて、コマンドが効かなくなった時はdevicesコマンドもしくは専用のコマンドを送信すると新しく接続しなおしてくれます。

ADB.exeで接続するためには、アンドロイド端末側でUSBデバッグを有効にしたうえで、パソコンからのADB接続を許可しておく必要があります。FASTBOOTはFASTBOOTモードで起動(ブートローダー起動)をしている状態でUSB接続していると表示されます。

ADB.exe

ADBによる接続では、Androidが起動した状態ですのでシステムファイルの更新はできません。Android復旧のためにできることは、Android端末にファイルを送り込むことと、Fastbootモードもしくはシステムリカバリーで再起動することです。

adb push <ファイル名> /

を使うとファイルをアンドロイド端末に送信できます。最後に「/」を入れるとデバイスのルートディレクトリに入り、「/sdcard/」ならsdcardディレクトリです。

adb reboot recovery
adb reboot bootloader

でそれぞれリカバリー、ブートローダー(FASTBOOTで接続できるモードで再起動する)を起動できます。(adb reboot fastbootでfastbootモード起動というのがあったような気がしていたのですが、2016年10月に試したところもともとない、もしくは消えていました。)

FASTBOOT.exe

Fastbootを使うと、アンドロイド端末のシステムファイルや、システムリカバリーを書き換えることができます。使うには端末がFastbootモードで動いている必要があります。画面にbootloaderやFastbootと出る場合もありますが、一般ユーザー向けではないため画面が真っ暗LEDも点灯しない、という場合もあり、Windowsから見ていないとFastbootモードなのか単に電源が落ちているのかわからない場合もよくあります。

リカバリーを書き換える場合

fastboot flash recovery <ファイル名.img>

私の環境では上手くいかず、

fastboot flash -s <devicesで出てきたデバイス名> recovery <ファイル名.img>

で動きました。もともとカスタムリカバリーTWRPが入っていたはずなのですが、起動できなかったので、TWRPを入れなおしました。

リカバリーを書き換えずにカスタムリカバリーを起動

カスタムリカバリーを入れなくても、Windows上のカスタムリカバリーを使って起動させることもできます。

“flash recovery”の代わりに”boot”とすると、指定したimgファイルから起動してくれます。ただし、USB転送なのでリカバリーなら大抵大丈夫ですが、システムファイルを起動しようとすると時間が非常にかかり、ケーブルの品質に問題がある場合、途中で止まります。

システムの書き換え

fastbootコマンドで”recovery”パーティションではなく”boot”パーティションを指定すればシステムファイルの書き換えを行うこともできます。

が、入手できるファームウェアはGoogle Appsが入っておらず(端末の公式ファームウェアは入っていることもあります)Androidの機能を発揮できません。Google Appsが含まれたファームウェアならfastboot.exeから書き込んでも良いですが、カスタムリカバリーを使ったほうが手軽です。

ADB.exeを使って端末に書き込みしておけばカスタムリカバリーからインストールできます。(SDカードが使える機種の場合は、SDカードに書き込んで差し込むという方法でも大丈夫だと思います)

ADB.exeを使うためにはアンドロイド端末が起動してUSBデバッグモードが有効になっている必要があるので、文鎮になってしまったような場合には下記を試す必要があります。

  1. fastboot.exeを使ってGoogle Appsが入っていないファームウェアを書き込み
  2. 起動したらUSB接続してファイルを転送し(通常のストレージでも可)
  3. カスタムリカバリーを使ってGoogle Appsを込みでインストールしなおす

という回り道をしなくてはいけません。ファームウェアを書き込んだあとの最初の起動はアプリの準備で時間がかかりますので、2回必要になるとそれだけで1時間以上かかってしまう場合もあります。気長に待ちましょう。(USBケーブルの品質とUSB3.0対応ポートを使うようになってから、早くなったようなような気がします。)

上手くいけば1時間くらいで終わりますが、上手くいかない場合1日かかったり、数日Google検索とにらめっこという事態もあります。(最近は英語フォーラムなら情報が多いのですぐ見つかるはずです)

コメント

  1. […] 起動できないHUAWEI Ascend G620Sのトラブル対処法とHiSuiteの使い方 ADB/Fastbootを使ってアンドロイドのシステム復旧 まめちしき#Mediapad M3の手動バージョンアップ(B301→B302) Huawei MediaPad M3 […]

    • てっくん より:

      見ていただきありがとうございます。
      復旧おめでとうございます。「文鎮化」から復帰できると嬉しいですよね!

タイトルとURLをコピーしました