ひょんなことから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化時と挙動が変わってしまう可能性があることに注意。一時期流行った「自己責任」というやつです。