2013/11/19

Nexusシリーズをカスタム(ROM焼き・Root取得)するための基礎・手順まとめ



※このエントリはこれからROM焼きを始めたい、Rootを取って専用アプリを使ったり弄ってみたいという方のためのエントリです。
※以下で紹介する手順を実行すると、起動しなくなる(=文鎮化)ことや故障時の保証が利かなくなることになります。自己責任の上行ってください。


Nexusシリーズ(最近だと、Nexus 7,Nexus 10,Nexus 4,Nexus 5等)を手にして、最新のAndroid OSを楽しんでいると思いますが、Nexusシリーズ向けには多数のディベロッパーがカスタムROMと呼ばれる多数の拡張機能を搭載した独自のROMもリリースされています。
Nexusシリーズは、キャリアから販売されている端末とは違い、脆弱性を突くことなく正規(?)の方法でRootを取ったりカスタムROMを導入することができるのも特徴の1つです。

以下で、カスタムROMに興味がある方がNexusを弄るに当たって基本的な知識・手順を説明します。
所謂ツールを利用することでこれらの知識を得ることなく簡単に弄ることもできます。ですが、知識無く何をしているかわからないツールを利用することは、トラブル時にどう対応したらいいか途方に暮れてしまう可能性もありますので、以下の説明が理解の手助けになれば幸いです。

※各用語の基礎知識については以下のエントリも参考にしてください。

大きな流れとしては、
  1. PC側の環境を整える
  2. NexusのBootloaderをアンロックする
  3. カスタムリカバリを起動する
  4. 初期状態をバックアップして保管しておく
  5. Rootを取る,カスタムROMを導入する…etc
となります。
長くなりますが、順に説明したいと思います。


1.PC側の環境を整える

準備すべきことは以下の通りです。
  • ADT(Android Development Tools)をPCに導入する
    →コマンド操作に必要な、fastboot.exe,adb.exe,USBドライバーを入手できます
  • platform-tools,toolsにpathを通す
    →コマンドウィンドウでfastboot,adbコマンドをどの場所でも利用可能にするため、pathを通した方が今後楽になります
  • Nexus端末とPCをUSBケーブルで接続して、各ドライバを利用して端末を認識させる

ADTの導入及びpathの通し方は、以下のエントリを参考にしてください、
Android SDK 導入手順 for Windows

既に導入している場合でも、新しいNexus端末を入手したときや、手持ち端末のAndroid OSがアップデートしたとき等は、SDK Managerを起動して、platform-tools,tools,USB driverを最新のものに更新しましょう。
※Android OS更新に合わせて最新のfastboot.exe,adb.exeが必要になる可能性があるため。USB driverの更新は、最新機種を購入したときは必須です

ドライバは通常、(インストールした場所)\Android\(インストールしたものの名前)\sdk\extras\google\usb_driverにあります。(android_winusb.infです)
基本的にドライバはPCと端末をUSBケーブルで接続した際自動的にインストールされますが、手動で導入することもできます。
Nexus 7の各種ドライバインストール方法参照。

各ドライバと起動モードの関係は以下の通りです。
  • 通常起動時のデバッグ接続
    Android Composite ADB Interface(CompositeADBInterface)
  • リカバリ起動時の接続
    Android ADB Interface(SingleADBInterface)
  • Fastboot起動時の接続
    Android Bootloader Interface(SingleBootLoaderInterface)
それぞれの起動状態で、PCに上記のドライバで認識されている必要があります。

※ドライバがインストールできない(端末が認識されない)ときは以下の点を確認しましょう
  • デバッグ接続が有効になっているか
  • USBケーブルを変えてみる
  • USBポートを変えてみる


2.NexusのBootloaderをアンロックする

初期状態では、内蔵データを保護する目的で、元々インストールされているboot.img/recovery.img以外を起動することはできません。カスタムリカバリを導入したり、ROM焼きをするためにはbootloaderのロックを解除(アンロック)する必要があります。

Bootloaderをアンロックすると、端末内のユーザーデータが第3者に漏れることがないようにするため、端末が初期化(Factory Reset)されます。
既にアプリをインストールしたり、音楽や画像データなどを入れている場合はバックアップを取る必要があります。

バックアップを取ったら、bootloaderをアンロックします。
端末の電源を切った後に、ボリュームボタンの(大+)小を押しながら電源ボタンを長押しすると、通常とは違う起動モードになります。これがBootloader起動状態になります。

この状態でPCと接続すると、SingleBootLoaderInterfaceとして認識され、コマンドプロンプトにてfastbootコマンドが利用可能になるはずです。

コマンドプロンプトを起動して、fastboot devicesと入力しエンターを押してみましょう。

上のように出力され端末が認識されていればOK

アンロックには、fastboot oem unlockと入力しエンターを押します。
Unlockするか確認が出ますので、ボリュームキーでカーソルを動かして、電源ボタンで決定します。Unlockすると端末が初期化されます。

アンロックした後は、以下のコマンドでBootloaderを再起動しましょう。
  • fastboot reboot-bootloader

※また、fastboot oem lockと入力することで再度ロックすることができます。この場合、再度アンロックすると端末が初期化されることになります。



3.カスタムリカバリを起動する

カスタムリカバリとは、標準のリカバリを拡張して、カスタムROM等を導入するに当たって必要な作業(各領域のバックアップ,各領域のワイプ,zipのインストールなど)が簡単にできるよう作成されたもので、ClockworkMod(CWM)やTWRPが有名です。

カスタムROMを取得したりRootを取る前に、初期状態をバックアップし復元可能にする必要があるため、PCにカスタムリカバリのイメージファイルを用意して、以下のコマンドカスタムリカバリを起動します。
  • fastboot boot ***.img
    ***.imgはカスタムリカバリのイメージファイル名で、起動したいリカバリのファイル名によって異なります
fastboot bootコマンドは指定したイメージファイルを起動するコマンドです。
fastboot flashコマンドは指定した領域にイメージファイルを上書きインストール(焼く)コマンドです。

今回は標準リカバリもバックアップしたいため、flashコマンドではなくbootコマンドにてカスタムリカバリを起動します。

※万が一起動できない場合は、一度通常起動した後、電源OFFにして再度Bootloaderを起動してみましょう。



4.初期状態をバックアップして保管しておく

カスタムリカバリを起動したら初期状態をバックアップし、必要になったときにいつでも初期状態に戻せるようにしておきます。
タッチ操作・ボリュームキー&電源キーによる操作でバックアップを取りましょう。
取得したバックアップは、端末内だけではなく、PC等にも保存しておくとより安全です。

取得したバックアップは、対応するカスタムリカバリを利用して復元することができます。

※必要に応じて、他の領域(Radio.img等)もバックアップを取るといいと思います。
※Nexusシリーズには、Factory Imageと呼ばれるGoogle公式の復元用イメージファイルが公開されています。このイメージファイルをダウンロードしておくことで、緊急時にPCと接続して端末を初期状態に戻すことができますが、カスタムリカバリでバックアップを取っておいた方が端末単体でリストアできるので簡単です。



5.Rootを取る,カスタムROMを導入する…etc

バックアップを取っていつでも初期状態に戻せるようになったら、いよいよカスタムROMを導入したりRootを取ったりして端末を弄りましょう。

カスタムリカバリを起動している間はRootが取れている状態なので、システム領域内をコマンド操作で直接弄ることも可能ですし、カスタムリカバリのzipインストール機能を利用して、目的のzipファイル(Rootを取得するためのもの,特定の機能・アプリを利用可能にするものなど)をインストールすることも可能です。
カスタムROMの導入も、zip形式で配布されているファイルをインストールするだけで行うことができます。

カスタムROMを導入する際はWipe(ワイプ)することを必ず意識しましょう。
カスタムROMを焼くにあたって、
  • /data領域のワイプ
  • /system領域のワイプ
  • /cache領域のワイプ
  • dalvik-cacheのワイプ
が必要です(全部やることをフルワイプ(Full Wipe)といいます)。
同じカスタムROMをアップデートする場合などはこれらのうちいくつかは不要な場合もありますが、配布しているROMのホームページやxdaのスレッドなどを確認して、その指示に従うようにしましょう。

※Wipeを行わずにカスタムROMのzipファイルをインストールすることを”Darty Flash”と言ったりします。

カスタムカーネルを導入する際は、dalvik-cacheをワイプするのが基本です。
カスタムカーネルによっては、
  • Android標準のカーネルに戻してからzipファイルをインストールするもの
  • どのカーネルが導入されていてもそのままzipファイルをインストールしても問題ないもの
2種類がありますので、配布しているROMのホームページやxdaのスレッドなどを確認して、その指示に従うようにしましょう。

※カスタムROMにはカーネル(boot.img)が同梱されています。カスタムカーネルを導入する際は、カスタムROM→カスタムカーネルの順にインストールします。

※カスタムROMによっては、カーネル側が対応していないと起動しない場合もあります(CyanogenModなど)。起動しなくなっても焦らず対応しましょう。


6.トラブル時

起動しなくなった時は…
  • ブートアニメーションがいつまでも続く
    →一度電源を長押ししたりバッテリーを抜いたりして、終了しましょう。そしてBootloaderやカスタムリカバリを起動して、フルワイプしたり、起動していた以前のバックアップに戻しましょう。
  • 起動すらしない
    →電源ボタンとボリュームキーをひたすら押し続けてみましょう。それでもダメなら、バッテリーを抜いてしばらく放置し、再度電源とボリュームキーをひたすら長押ししてBootloaderを起動してみましょう(Bootloaderを再度ロックして、修理に出すのも手です ※修理を断られる可能性もあります。ROM焼きとはそういう行為です)


<参考リンク>


 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Blogger Templates
Related Posts Plugin for WordPress, Blogger...