HTC Jでの暫定的な root権取得のメモ

★ このtmprootの取り方は、OTA適用前の方法です。
最新のバージョンでは使えないのでご注意ください。

★→OTA適用後のroot取得はHTC速報さんのページを参考に!
★ HTC J Valente : root化について (HTC速報Dev)

 ここで書いた内容を実行して問題が発生した場合も、当Blogでは、
 一切の責任を負いませんので、実施される方は心して実行願います。

HTC J ISW13HT で 暫定的にrootが取れたのでメモを書いておきます。

基本的にLinuxが分かる人向けです。

流れとしては、/dataのパーミッションを変更して、local.propの書き込みを
可能にさせた後、「ro.kernel.qemu=1」でエミュレータモードにする方法と
なります。

◯ /dataにシンボリックリンクを貼る

/data/local/tmp を renameして、/data/local/tmp > /dataへの
シンボリックリンクを貼ります。

$ adb shell mv /data/local/tmp /data/local/tmp.org
$ adb shell ln -s /data /data/local/tmp

実行結果を確認
$ adb shell ls -ld /data/local/tmp
lrwxrwxrwx shell    shell             2012-06-01 01:22 tmp -> /data

$ adb reboot

◯ /data/local.propを書き込む

/dataのパーミッションが書き込み可能になってるはずなので、
local.propへ、ro.kernel.qemu=1を書き込む

$ adb shell ls -ld /data
drwxrwx--x shell    shell             2012-06-01 01:30 data

$ adb shell "echo ro.kernel.qemu=1 > /data/local.prop"

$ adb shell cat /data/local.prop
ro.kernel.qemu=1

$ adb reboot

これで、adb shellを打てばroot状態でログイン出来ます

元に戻したい場合は、"/data/local.prop" と "/data/local/tmp" を
削除して、/data/local/tmp.orgを元に戻せばOK.

$ adb shell rm /data/local.prop
$ adb reboot

$ adb wait-for-device
$ adb shell rm /data/local/tmp
$ adb shell mv /data/local/tmp.org /data/local/tmp
$ adb reboot

今の所、何がTriggerかわからないですが、すぐにハングアップ/再起動します
機内モードでも同じ状態です。あとロック画面出てこなくなるので、adb以外から
操作不可能でした。

▼追記 6/1

充電中はSleepしない+機内モードにした状態にしておくと、ハングアップなどは、
発生せずに、adb経由での操作は行えました。ただし、SENSEのロック画面の
解除が出来ないので、スマートフォン本体での操作は出来ない状況のままでした。
(No lockなりでLockしない状態にしておけば良いのかもしれません。)

Android root権なしのフルバックアップ/リストア

ICS(Android4.x)では、adbコマンドでbackupがある程度出来るようです。
adbコマンドが使える環境であれば、rootになれる必要は無い様です。

adbのヘルプ抜粋

adb backup [-f <file>] [-apk|-noapk] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>]
adb restore <file>           - restore device contents from the <file> backup archive

 

adbが使用可能な環境を整えた後、こんな感じで実行すれば良いみたい。

■backup

c:> adb backup -f  20120528.bak  -apk -shared -all

コマンド実行後、スマートフォン側でパスワードの設定を求められます。
-apk -all -sharedオプションの場合は、結構時間がかかるようです。

■restore

c:> adb restore  20120528.bak

完全なフルバックアップ/リストアではなくて、一部リストア出来ない内容も
あるようです。Widgetとかは貼り直しになります。

sdcard(本体ストレージ)についても基本的にアプリのデータのみのバックアップ
となります。他のデータは別途自力でバックアップですね。

日本国内機はrootが取れない、取れても一時rootな機器が多いので、この夏以降の
ICS機器は、adbでバックアップを取る機会が増えるかもしれないですね。
#アプリで同じ事が出来るようになると良いのですが。