スポンサーリンク

このドキュメントの内容は、以下の通りです。

はじめに

ASUS の Zenfone 3 という Android のスマートフォンがシステム的に壊れてしまい、修理するまでの話です。
スマートフォンは、必ずではありませんが、何故か故障することがあります。なぜか、OSが起動しなくなります。故障する端末もあれば、故障しない端末もあって、まさに、「運」だと思っています。

ASUS の Zenfone を3台ほど利用しましたが、そのうち、初期不良が1台、壊れて動かなくなったのが1台、買ってから処分するまで正常に使えたのが1台でした。

故障した端末は、修理する作業がうまくいって、OSも動いて、アプリも動いて、一応なおった感じで、しばらく使えるケースもあるし、故障した端末の修理の作業している途中で、本当に動かなくなってしまうこともあります。
もし、回復できた場合には、運が良ければ、なおって、ラッキーぐらいに思ってください。ただ、なおって、ラッキーで終わるのではなく、早めに新しい端末に買い換えることも考えたほうがよいかもしれません。私の体験では、何度かOSが起動しなくなって、数回なおした後に、本当にOSが起動しなくなったこともありました。本当に起動しなくなった場合は、買い替えしか手がなかったので、その時は買い換えました。ただ、買い換えるまでには、端末の情報収集や選定などに時間がかかるケースもあり、必要なときにスマートフォンが使えないよ、といったことになりかねません。余裕をもって買い換えることをお勧めいたします。

Dm-Verityで起動しなくなるまで

スマートフォンのOSのアップデートがきていたので、OSのアップデートするを選んで、スマートフォンをほっておいたら、スマートフォンの画面が暗くなっていたので、スマートフォンを起動してみると以下の画面が表示されました。

Dm-Verity in EIO mode

Your device is corrupt. It can't be trusted and will not boot
Visit this link on another device:
g.co/ABH

Your device will shutdown in 10 seconds


これは何かというと、システムが改ざんされていないこと検出するための仕組みです。システムのアップデートに失敗して、システムの状態がおかしくなってしまい、改ざん検知に引っかかってしまったものと考えられます。

この検知自体を止めることもできるようですが、今回は、それができませんでした。また、これ(改ざん検知)を止めたとしても、OSが起動できるかどうかは、システムや端末の状態に依存するため、試してみないと解りません。

Android のマザーボードが壊れたか、スマートフォンのストレージのflashメモリ(フラッシュメモリ)が壊れて、もうダメなんだと思ったけど、実はそうじゃなかった、という落ちでした。あきらめたら、そこで試合は終了だよ、でした。 

リカバリのメニュー

Dm-Verity の画面で、ボリュームボタンの+を押すと、Android Recovery というリカバリ画面にいけます。そのメニューで選べるのがなんだったか忘れてしまったけど、おそらく以下の通りだったのではないかと思います。
  • Reboot system now
  • Recovery mode ?
  • fastboot mode
  • Wipe data/factory reset
  • Wipe cache partition
  • Apply update from microSD card
最後の最後で factory reset (ファクトリリセット)をやったのですが、はじめの段階ではやりませんでした。

リカバリモードの起動方法

1. ボリュームボタンのマイナスを押し、電源ボタンを押す
2. スマートフォンがブルっと振動したら、電源ボタンを離す
3. これでリカバリモードが起動する

fastbootモードの起動方法

1. ボリュームボタンのプラスを押し、電源ボタンを押す
2. スマートフォンがブルっと振動したら、電源ボタンを離す
3. これでfastbootモードが起動する

パソコンからfastbootモードのスマホに接続する方法

パソコンからfastbootモードのスマートフォンに接続して、スマートフォンを多少操作することができます。
例えば、以下の操作ができます。
  • パーティションにイメージを書き込む
  • パーティションの中身を消す
接続するためには、
  • Google USB Driver
  • fastboot コマンド といったものが必要です。
たまたま、以下の組み合わせの環境だったので、何もしないでも、つながってました。
  • パソコンのOSはWindowsでした
  • Android Studio がインストールしてあった(Google USB Driverも入ってた)
  • PentestBox がインストールしてあった(fastbootコマンドが入っていた)
PentestBox はセキュリティツールがまとめてあるソフトウェアです。たまたまた PentestBox に同梱されていた fastboot コマンドを利用していますが、 PentestBox が必要なわけではありませんので、 fastboot だけ用意すれば十分です。

Windows の WSL (Windows Subsystem for Linux) の Ubuntu に fastboot コマンドを入れてみたのですが、WSL の Ubuntu からは、USB接続のスマートフォンが認識できず、使えませんでした。

fastbootコマンドの使い方

fastboot コマンドで、デバイスを表示するのは以下の通りです。
fastboot devices

fastboot コマンドでパーティションにイメージを書き込むコマンドは以下の通りです。
boot.img というファイルを boot 領域に書き込む場合は以下の通りです。
fastboot flash boot boot.img

recovery.img というファイルを recovery 領域に書き込む場合は以下の通りです。
fastrecovery flash recovery recovery.img

途中でやったこと

以下は効果が得られなかったシリーズです。
  • ASUS のサイトからファームウェアをダウンロードしてきて、 boot.img を fastboot コマンドで zenfone 3 に焼いてみたが、効果がなかった。
  • ASUS のサイトからファームウェアをダウンロードしてきて、MicroSD に書き込み、zenfone3 に MicroSD をセットして、 Apply update from microSD card を選択してみたが、何もおきなかった。
  • ブートメニューでリカバリを選択してみたが、何もおきなかった(ファクトリリセットはしてない)。
  • Wipe cache partition をしてみたが効果がなかった。

解決策

拾ってくるイメージの保証は出来かねますので、自己責任で実行してください。スマートフォンが文鎮になっても、自己責任ですよ。ファクトリリセットでデータも消します。データは消えますのであきらめてください。

ファイルの事前準備は以下の通りです。
  • イメージの配布 の「上記LINKは切れているのでこちらから」のリンクからブートイメージとリカバリイメージ(Z017D_WW_13.20.10.152)をダウンロードする。ダウンロードしたら、適当なディレクトリに解凍します。
  • ASUS のサイトからUL-ASUS_Z017D_1-WW-13.20.10.152-user.zip をダウンロードする。ここのバージョンがあってないと失敗する
  • ASUS のサイトからダウンロードした UL-ASUS_Z017D_1-WW-13.20.10.152-user.zip を MicroSD のルート直下にコピーして、スマートフォンに MicroSD をセットする
  • リカバリモードでスマートフォンをファクトリリセットをする(データが消えます)
  • Wipe cache partition で cache パーティションを綺麗にする
パーティションを書き直します。
  • fastbootモードでスマートフォンを起動する
  • パソコンで fastboot devices を実行して、スマートフォンが認識できていることを確認する
  • fastboot flash boot boot.img でイメージを書き込む
  • fastrecovery flash recovery recovery.img でイメージを書き込む
これで、下準備は完了です。
  • スマートフォンをリカバリモードで起動する(ボリュームのマイナスを押しながら、電源ボタンを押す)
  • Apply update from microSD card を選択する
  • 20-30分すると初期化された状態で OS が起動してくる
  • あとは、普通にセットアップするだけ

失敗のメモ

  • Apply update from microSD card をやる前に cache partition を Wipe しなかったら、失敗した。
  • ファクトリリセットをしないで、 Apply update from microSD card をやってみたら、Android のセットアップが起動するようになったけど、途中まで行ったけど、途中でリブートしてしまい、何度やってもダメだった。
  • ADB モードで、パーティションをバックアップできるかと思ったけど、できなかった。
  • Dm-Verity を無効化できなかった
  • 前のAndroid からセットアップ中にデータをコピーしようとしたが(付近の端末の設定)、「エラーが発生しました」で一瞬で失敗する。
  • リカバリイメージを自分で作ろうとしたが、 applypatch コマンドを探すのが面倒過ぎた。
  • ubuntu では makepatch というパッケージに applypatch コマンドが含まれるが、Android のリカバリイメージを作る applypatch コマンドのオプションと異なるんどえ、 makepatch の applypatch だとリカバリイメージが作ることができなさそう。
  • ATOK for asus がない。ASUS で ATOK for asus を配っているわけでもなく、今回の復元方法では ATOK がなくなってしまった。復元方法や再インストールする方法がないので、あきらめることにした。

スマートフォンの修理

ネットで調べただけなので、実際にどのぐらいかかるかはわからないけど、参考までに価格を書いておく。
  • ASUS でマザーボード交換になると1万円から2万円ぐらいかかるらしい
  • 郵送と調査だけでも8000円ぐらいかかるらしい
  • zenfone3 の本体価格は新品で、2.5万円ぐらいなので、2万円も修理にかかるぐらいなら、新しいのを素直に買ったほうが良いのではないかと思える。

まとめ

  • MicroSD が必要です。
  • MicroSDにデータを書き込むためのパソコンが必要です。
  • データをダウンロードするためのインターネット回線が必要です。
  • パソコンに MicroSD カードリーダー がない場合は、別途 USB 接続の機器を用意する必要があります。
  • Dm-Verity がでたら boot と recovery を書き直す
  • ファクトリリセットする
  • cache partition は wipe する
  • バックアップがなかったので何もできなかったが、バックアップは大事。

スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

スポンサーリンク
 

過去ログ

2020 : 01 02 03 04 05 06 07 08 09 10 11 12
2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー