Nexus端末のファクリーイメージは、万が一ロム焼きに失敗しても、これを焼けばデフォルトに戻る便利なシロモノです。
スポンサーリンク
sigファイルのエラー
通常は、ファクリーイメージにある「flash-all.bat(Windows)」「flash-all.sh(Linux)」を実行すれば良いのですが、Android 5.0以降、エラーがでます。
archive does not contain ‘boot.sig’
archive does not contain ‘recovery.sig’
failed to allocate 1814213396 bytes
error: update package missing system.img
これは焦りますよね。ただでさえ、慣れないコマンドプロンプト使っているときですから。拡張子に、.sig があるSIGファイルは署名ファイルで、暗号化されています。特定のアプリケーションでしか開けません。
Android 5.0以前のバージョンや、5.0以降でも前バージョンからファクトリーイメージのスクリプト、flash-all.batを実行すると、このエラーがでます。
flash-all.batの中身
PATH=%PATH%;”%SYSTEMROOT%\System32″
fastboot flash bootloader bootloader-hammerhead-hhz12f.img
fastboot reboot-bootloader
ping -n 5 127.0.0.1 >nul
fastboot flash radio radio-hammerhead-m8974a-2.0.50.2.25.img
fastboot reboot-bootloader
ping -n 5 127.0.0.1 >nul
fastboot -w update image-hammerhead-lmy47i.zipecho Press any key to exit…
pause >nul
exit
上記は、Nexus 5 Android 5.1.0 (LMY47I)のflash-all.batです。それでは、flash-all.batは、どのようなプロセスになっているかというと、
- bootloader-hammerhead-hhz12f.imgをフラッシュします。
- bootloaderをリブートします。
- radio-hammerhead-m8974a-2.0.50.2.25.imgをフラッシュします。
- bootloaderをリブートします。
- image-hammerhead-lmy47i.zip内の展開を始めます。
手作業でフラッシュ!
.sigファイルが含まれていないとエラーがでた「boot」や「recovery」は、zipファイル内に存在します。ファイルの署名が存在しないのか、何かと一致しないのかもしれません。さて、こうしたときは、zipファイルをばらして、一個ずつ手作業でフラッシュします。フォルダ内でShiftキーを押しながら、「コマンドウィンドウをここで開く」を選択して、下記のコマンドを順に入力します。
adb reboot bootloader fastboot flash recovery recovery.img fastboot flash boot boot.img fastboot flash system system.img fastboot flash cache cache.img fastboot flash userdata userdata.img fastboot reboot
これで、無事、ファクトリーイメージがフラッシュされます。お疲れ様でした。