2011年8月16日火曜日

IS01 OSアップデート顛末記 - root化

BB16の root化 は、コチラを参照。

■IS01 OSアップデート顛末記 - BB16でroot奪取!





下記サイトの内容に従い、root化を進める。

■PASTEBIN「IS01 BB31 root取得について」

以下引用。


■大まかな流れ
(1)/data/system/packages.xmlを書き換えることで、system権限で起動する
Terminal Emulatorアプリケーションをインストール。

(2)Terminal Emulatorから、/cache/recoveryファイルを作成

(3)nandunlockを登録

(4)NANDロック解除後、NANDを書き換え





■/data/system/packages.xmlを書き換えることで、system権限で起動する

1./dataが777なので、/data/systemをmvし、adbから作ってあげる
この操作はPCから実行する。

(1)コマンドプロンプトを起動し、展開したフォルダの中にある[platform-tools]
フォルダにカレントディレクトリを移動する

(2)下記コマンドを実行する
adb shell
$ cd /data
① $ busybox/cp -a system system2
② $ busybox/mv system system-
③ $ busybox/mv system2 system
④ $ chmod 666 system/packages.xml

①実行時、[permisson denied]メッセージが大量に表示されるが、無視する
http://marijuana.ddo.jp/is01/index.php?moddir=treebbs&action=dump&perpage=10&start=10
②、③は問題なく終了するはず
④が成功すればOK。


2.同様に/data/appもshellユーザーで作成する。この操作もPCから実行する。

(1)下記コマンドを実行する。
adb shell
$ cd /data
$ busybox/mv app app-
$ mkdir app


3.VpnFaker.apk(Terminal Emulatorのプログラムをパッケージ名のみ書き換えたもの)を
  adbでpushする

(1)[VpnFaker.apk]を下記URLからダウンロードし、[platform-tools]に格納する。

(2)PCより下記コマンドを実行する。
adb push VpnFaker.apk /data/app

4.packages.xmlを書き換える

(1)下記コマンドを実行し、[packages.xml]をPCにコピーする。
adb pull /data/system/packages.xml

(2)下記を書き換える。
--------------------------------------------------------
<変更前>
<package name="com.android.server.vpn" codePath="/system/app/VpnServices.apk" system="true" ts="1262271600000" version="4" sharedUserId="1000">
<sigs count="1">
<cert index="3" />
</sigs>
</package>
--------------------------------------------------------
<変更後>
<updated-package name="com.android.server.vpn" codePath="/system/app/VpnServices.apk" ts="1262271600000" version="4" sharedUserId="1000">
<sigs count="1">
<cert index="0" />
</sigs>
</updated-package>
<package name="com.android.server.vpn" codePath="/data/app/VpnFaker.apk" system="true" ts="XXXXXXXXXX" version="1000" sharedUserId="1000">
<sigs count="1">
<cert index="0" />
</sigs>
</package>
--------------------------------------------------------
※ [ts=XXXXXXXXX]の値は、VpnFaker.apkのタイムスタンプから、下記URLで算出する。

(3)変更後、[packages.xml]を書き戻す。
adb push packages.xml /data/system

(4)再起動する

(5)Terminal Emulatorより下記コマンドを入力する。
id
→ uid=1000(system) gid=1000(system) と表示される。

■Terminal Emulatorから、/cache/recoveryファイルを作成

(1)Terminal Emulatorより下記コマンドを入力する。
$ cd /cache
$ rm -r recovery
$ ln -s /dev/tunctrl recovery

(2)再起動する。


■nandunlockを登録

(1)下記URLよりNANDロック解除ファイルをダウンロードする
■hotfile

(2)ダウンロードした[nandunlock]を[platform-tools]に格納する。

(3)PCより下記コマンドを入力する。
adb push nandunlock /data/local/
adb shell chmod 555 /data/local/nandunlock


■NANDロック解除後、NANDを書き換え

(1)Terminal Emulatorより下記コマンドを入力する。
① $ cd /data/local
② $ ./nandunlock
③ $ flash_image recovery bb12_boot.img
※ [bb12_boot.img]は書きたい任意のis01のブートイメージ




「NANDロック解除後、NANDを書き換え」の③以外、すべて実施した。
その結果、下記画面となり、いくつか表示されないアイコンが現れた。


先行きに不安を感じつつも、次に進む。

0 件のコメント:

コメントを投稿