先日のポストでもご紹介しましたが、Dirty Unicorns 12 (Android Oreo 8.1)のオフィシャル版がリリースされたということで、さっそくNexus 6にフラッシュしてみました。
フラッシュ自体は何事もなく成功しました。端末を再起動すると初期設定が始まります。まず、WiFiのアクセスポイントを設定して…、と進めていくと、端末のセキュリティ保護手段を選択する画面が出てきました。パターン、PIN (Personal Identification Number)、スライド、なし、など画面のロックを解除するときの手段を選ぶところですね。
PINを使うので、「PIN」を選択するところまではよかったのです。その後、いつもはスキップする「Androidの起動時にPINを要求する」を有効にしてしまったんです。(これを有効にすると、端末が起動してホーム画面が表示される前にPINの入力を求められます。) まあ、いいか、とそのまま設定を進めてしまったのが運の尽きでした。
再起動してしばらく待つとPINの入力画面になります。設定したPINを入力すると、番号が間違っていると。何度やってもダメ。ホーム画面に行けません。
しょうがない、もう一度ファイル一式をフラッシュし直すか、ということでカスタムリカバリを起動しました。すると、いつもは求められない「暗号化を解除するためのパスワードを入力せよ」との表示が。さきほど設定したPINを入力してみるも、ここでもやっぱりダメ。暗号化を解除できずファイルシステムをマウントできないとのメッセージが。
ああ、やってしまった…。
最後の手段として、ファクトリイメージを使って工場出荷状態に戻すことにしました。リファレンス機なので当たり前といえば当たり前なのですが、ファクトリイメージが公式に提供されていることはNexus / Pixelシリーズの魅力の一つですね。
では、以下、工場出荷状態に戻す手順を記していきます。
ファクトリイメージの取得
ここからNexus 6 (shamu)向けのイメージをダウンロードします。2017年10月のビルドN6F27Mが最新ですね。過去にリリースされたすべてのイメージが掲載されているので、いかなる時点にも戻せるところがすごいです。(いまとなっては、最新のイメージに戻す以外はないと思いますが。)
必要なFreeBSDパッケージのインストール
ファクトリイメージの展開に必要なunzipパッケージ、およびNexus 6のフラッシュメモリの消去、書き込みに必要なfastbootパッケージをインストールします。
pkg install unzip android-tools-fastboot
FreeBSDからNexus 6に接続するための設定については、こちらを参照してください。
- ファクトリイメージの展開
unzip
コマンドでファクトリイメージを展開します。zipファイルの中に、さらにzipファイルがあるので2回コマンドを実行します。$ unzip shamu-n6f27m-factory-bf5cce08.zip Archive: shamu-n6f27m-factory-bf5cce08.zip creating: shamu-n6f27m/ inflating: shamu-n6f27m/radio-shamu-d4.01-9625-05.45+fsg-9625-02.117.img inflating: shamu-n6f27m/flash-all.bat inflating: shamu-n6f27m/flash-base.sh inflating: shamu-n6f27m/flash-all.sh extracting: shamu-n6f27m/image-shamu-n6f27m.zip inflating: shamu-n6f27m/bootloader-shamu-moto-apq8084-72.04.img $ cd shamu-n6f27m $ unzip image-shamu-n6f27m.zip Archive: image-shamu-n6f27m.zip inflating: android-info.txt inflating: cache.img inflating: system.img inflating: boot.img inflating: recovery.img inflating: userdata.img
フラッシュメモリの消去
Nexus 6のフラッシュメモリの各領域を消去します。
fastboot erase boot fastboot erase cache fastboot erase recovery fastboot erase system fastboot erase userdata
- ファクトリイメージのフラッシュ
image-shamu-n6f27m.zip
に含まれていた5つのイメージをフラッシュします。fastboot flash boot boot.img fastboot flash cache cache.img fastboot flash recovery recovery.img fastboot flash system system.img fastboot flash userdata userdata.img
以上で工場出荷状態へのリセットは完了です。Nexus 6を再起動すると初期設定の画面が現れますので、そのまま設定を進めるか、改めてカスタムROMをフラッシュしましょう!
参考文献
- Dirty Unicorns, https://dirtyunicorns.com/
- Factory Images for Nexus and Pixel Devices, https://developers.google.com/android/images