2011年10月1日土曜日

Nexus S ルート化手順と各種ノウハウ

々なサイトにルート化手順が載っているが、複数のページに様々なノウハウが散らばっているのでここに整理する。

大雑把な手順は以下のとおりだ

  1. Nexus Sをデバッグ接続する
  2. bootloaderを起動
  3. recoveryにclockworkmodをフラッシュする
  4. recoveryを起動
  5. systemをマウント
  6. suとsuperuser.apkをNexus Sにコピー
  7. suのアクセス権限を変更

 フォントを変更する場合、recovery状態でPCからCUIを用いて変更する方法と、Android上でシステム領域を書き換え可能なファイラを用いて書き換える方法がある。

以下に箇条書きでノウハウを書き連ねる。

  • SDK Managerは起動時に一斉に各種パッケージをインストールしようとするが、ドライバとプラットフォームツールズだけで良い※。
  • 横着せずにtoolsplatform-toolsパスを通さないと途中で止まったりする。
  • アップデート時は再びclockworkmodからsuのアクセス権限を再設定するだけで良い。
  • アップデート時、フォントを置き換えている場合は元に戻す必要がある。戻さないとアップデートに失敗する。
  • ファイラを用いてフォントを置き換える場合、アクセス権限に注意。間違えると永久再起動ループに陥ったりする。他のフォントと同様のパーミッションにしてやれば良い。
0. 必要なファイルの用意、セットアップ
 ドライバをAndroid SDK | Android Developersから、clockworkmodのリカバリイメージをRom Managerから、Superuserを[APP] Superuser 2.3.6.1 - Now on the Market [2010-09-05] - xda-developersからダウンロード。SDK Managerを起動し、以下の画面が表示されたらキャンセル。
 Available packagesからAndroid Repository->Android SDK Platform-tools, revision 7とThird party Add-ons->Google Inc. (dl-ssl.google.com)->Google USB Driver package, revision 4にチェックを入れ、Install Selectedをクリック、手順に従ってインストールしてください。
その後、スタートメニューからシステム環境変数の編集を検索し、PATHの末尾に"android-sdk-windows\platform-toolsのフルパス;android-sdk-windows\toolsのフルパス;"を追記して下さい。C直下にandroid-sdk-windowsフォルダをおいた場合は以下のような感じになります。

1. Nexus Sをデバッグ接続する
 Nexus Sをデバッグ接続するにあたって、設定->アプリケーション->開発->USBデバッグをONにする必要がある。また、ドライバは先ほどSDKからダウンロードしたものを用いる。デバイスマネージャを開き、Android 1.0またはNexus Sと表示されているデバイスを右クリック、ドライバソフトウェアの更新を選択する。以下のスクリーンショットではウィンドウのタイトルがAndroid Composite ADB Interfaceになっているが、ここは違っていても構わない。
 コンピュータを参照してドライバーソフトウェアを検索します(R)をクリック。
 コンピューター上のデバイスドライバーの一覧から選択します(L)をクリック。
 ディスクを仕様(H)...をクリック。
 参照(B)...をクリックし、SDKからドライバを読み込み。
 互換性のあるハードウェアを表示(C)のチェックボックスをオフにし、Android Composite ADB Interfaceを選択し、次へ(N)をクリックし、手順に従ってドライバをインストール。

2. bootloaderを起動
 0. 必要なファイルの用意、セットアップ でSDK内のplatform-toolsフォルダとtoolsフォルダにパスを通してあると思うので、コマンドプロンプトを起動し、"adb reboot bootloader"と入力。

3. recoveryにclockworkmodをフラッシュする
 先ほどのドライバのインストールと同様の手順で、今度はAndroid Bootloader Interfaceをインストール。
 インストールできたら、コマンドプロンプトを起動しなおし、"fastboot oem unlock"と入力。アンロック画面が出るので、音量ボタンでYesを選択し、電源ボタンで決定。
最初にダウンロードしたclockworkmodのリカバリイメージのあるディレクトリに移動(cdコマンド等)し、"fastboot flash recovery ファイル名"と入力。拡張子まで忘れずに入力すること。

4. recoveryを起動
 音量キーでrecoveryを選択し、電源ボタンで決定。

5. systemをマウント
 同様に音量ボタンで移動、電源ボタンで決定。mounts and storage->mount /systemでsystemフォルダをマウント。

6. suとsuperuser.apkをNexus Sにコピー
 コマンドプロンプト側で最初にダウンロードしたsuperuserを解凍したディレクトリに移動、suとSuperuser.apkを同フォルダに置き、"adb push su /system/bin/"、"adb push SuperUser.apk /system/app/"と入力。

7. suのアクセス権限を変更
 "adb shell"、"cd /system/bin"、"chmod 6775 su"、"exit"と入力。

 以上でルート化は終了。フォントを変更する場合、このままの画面で変更する場合は、同じフォルダにフォントファイルも置き、"adb push DroidSans.ttf /system/fonts/"と入力してやれば良い。

2011/10/26追記
※Android SDK revision 14からfastbootが付属しなかったので古いSDKが必要。

2012/01/04追記
※Android SDK revision 16でfastboot復活してました。

0 件のコメント: