SATOXのシテオク日記

~ふもっふ、ふもふも~

Nexus 5をRoot化してみる

ひょんなことからNexus 5/Android OSのRoot権限を奪取する必要があり、やってみたのでメモメモであります。過去にもいろいろやったことはあるんですけどね……。

1. Android SDKのインストール
みんな大好きAndroid SDKのサイトからSDKをダウンロードして、任意の場所に展開します。

■Android SDK

 
SDK(Windows)に含まれているadb.exeやfastboot.exeにアクセスすることになるので、それらがある「sdk\platform-tools」にパスを通しておくとどこでも実行できて楽ちんです。
システムのプロパティ>環境変数「PATH」に「sdk\platform-tools」のフルパスを加えました。
 
2. USB Driverのインストール
Android SDKに含まれるSDK Maneger、もしくは以下の指示に従ってUSB Driverをインストールします。

■Google USB Driver | Android Developer

 
3. 開発モードを有効にする(USBでデバッグ接続)
設定の項目から「端末情報」を選択。
「ビルド番号」の項目を複数回タップすると「開発向けオプション」が有効になります。
開発向けオプションの「USBデバッグ」にチェックを入れると、PCとのUSBデバッグ接続が有効になります。

> adb shell

で、Nexus 5上のシェルにアクセスなんかできていれば成功です。

4. TWRPのセットアップ
以下のサイトから「openrecovery-twrp-2.6.3.0-hammerhead.img」というようなイメージファイルをダウンロードします。

■TWRP Team Win Recovery Project

実機の電源をオフにし、ボリュームダウンキーを長押しします。
ここで現れるのが「FASTBOOT MODE」という画面です。
ボリュームキー上下がメニューの選択、電源ボタンが決定に割り当てられています。
この「FASTBOOT MODE」時に、コマンドラインから以下を入力します。

> fastboot oem unlock

これで任意のイメージファイルインストールのロック機構(LOCK STATE)が解除(UNLOCK)されます。
もし元(LOCKED)に戻したい場合は以下。

> fastboot oem lock

このLOCK STATEがUNLOCK状態の時に以下のコマンドを入力します。

TWRPのイメージファイルをインストールします。
インストールが終わったら実機のFASTBOOT MODEからRecovery modeを選択して実行。するとTWRPが起動します。
TWRPには「Install」「Backup」「Restore」などのメニューがあり、念のためシステムイメージをBackupしておきましょう。
Backupは実機のストレージ内に保存されますので、念のためPC側にバックアップしたファイルを転送しておくと安全です。
また、これまでインストールしたアプリケーションが消えたら困るという場合は、別途アプリケーションもバックアップしておきます。
 

5. SuperSUで実機のRoot権限を取得する
SuperSUはRoot権限を管理するソフト。Root権限を持つユーザーをSuperUserを言うんです。
というわけで「SuperSU」というアプリケーションをインストールします。
Google Playにも登録されていますが、今回はzipファイルからインストールします。

■CF-Root download page

現在の最新は「UPDATE-SuperSU-v1.99r3.zip」でした。
こいつを端末のわかりやすいところにコピーしておきます。
FASTBOOT MODEの「Install」メニューからzipファイルを選択して端末にインストールします。
次にいつも通り端末を起動すれば「SuperSU」がインストールされているかと思います。
これでばっちりRoot権限が必要な処理を行うことができます。

■SuperSU - Google Play

 
6. どうしよう、Android OSが起動しないという場合
Android Developersのサイトに工場出荷時のイメージファイルが登録されています。

■Factory Images for Nexus Devices

FASTBOOT MODEにして、PC上から

fastboot flash recovery <イメージ名>

TWRPと同様の要領でイメージをインストール(上書き)します。
実はこんなイメージファイルのお世話になんかならないぜ、と思っていたのですが、イメージのバックアップでなぜかエラーとなり、さらにAndroid OSが全く起動しなくなって結構焦りました。
 
これでLinuxのシステム管理者のごとく自由にファイルの読み書きが可能です。
当然、メーカーのあずかり知るところではなくなり、非Root化時と挙動が変わってしまう可能性があることに注意。一時期流行った「自己責任」というやつです。