NokiaのE90に関連した備忘録です。いつまで続くかな?
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Xperia Playにプリロードされたアプリが邪魔になってきたのでなんとか削除できないか調べてみました。

手っ取り早くroot化すればあとは何とでもなるのですが、恒久的なroot化はとある事情でできないため一時的なroot化で対応出来る方法を探してみたのでその備忘録として記録しておきます。

まず、ブートローダーのアンロックをしないでroot化出来る方法を探すと、

[04/Jan][ROOTING/UNROOTING] Xperia 2011 Easy Rooting Toolkit [v4.0](zergRush Exploit)

というツールが見つかりました。

そこで、ここからツール本体の DooMLoRD_v4_ROOT-zergRush-busybox-su.zip をダウンロードしました。

このzipファイルを展開すると、その中にrootを奪取するプログラムの zergRush や、su、Superuser.apk、busybox などが入っており、runme.bat がすべての作業を自動的に行なってくれるバッチファイルで、この中身を見ることで大体の手順がわかりました。

恒久的なroot化は望んでいなかったので、そこでやりたい事だけを手動で行うことにしました。


すべての作業はPCからXperiaを操作するため、adbが使える状態になっていることが前提です。

1.必要なプログラムをXperiaに転送する
  コマンドプロンプトから以下のコマンドを実行します。

  adb shell mkdir /data/local/tmp    
    root化されていない一般ユーザー権限で触れるディレクトリーは/data/localだけなのでここにワークディレクトリーを作成します。

  adb push zergRush /data/local/tmp/
    root奪取のコマンドzergRushをワークディレクトリーに転送します。

  adb shell chmod 777 /data/local/tmp/zergRush  
    zergRushに実行権限を与えます。

  adb push busybox /data/local/tmp/
    Linuxの各種コマンドを一つにまとめたbusyboxをワークディレクトリーに転送します。

  adb shell chmod 777 /data/local/tmp/busybox 
    busyboxに実行権限を与えます。


2.rootの奪取と/systemのリマウント
  コマンドプロンプトから以下のコマンドを実行します。

  adb shell /data/local/tmp/zregRush
    zregRushを実行してrootを奪取します。
    すると、以下のようなメッセージが表示されます。

    [**] Zerg rush - Android 2.2/2.3 local root
    [**] (C) 2011 Revolutionary. All rights reserved.

    [**] Parts of code from Gingerbreak, (C) 2010-2011 The Android Exploid Crew.

    [+] Found a GingerBread ! 0x00000118
    [*] Scooting ...
    [*] Sending 149 zerglings ...
    [+] Zerglings found a way to enter ! 0x10
    [+] Overseer found a path ! 0x000151e0
    [*] Sending 149 zerglings ...
    [+] Zerglings caused crash (good news): 0x2abcccc4 0x0054
    [*] Researching Metabolic Boost ...
    [+] Speedlings on the go ! 0x6fd193d3 0x6fd39667
    [*] Popping 24 more zerglings
    [*] Sending 173 zerglings ...

    [+] Rush did it ! It's a GG, man !
    [+] Killing ADB and restarting as root... enjoy!

    rootの奪取に成功すると、adb shell を実行した際のコマンドプロンプトが $ から # に変わりrootで接続できたことがわかります。

  adb shell /data/local/tmp/busybox mount -o remount,rw /system
    /system/appの中のプリロードアプリを削除するために/systemをrw(リード・ライト)モードでリマウントします。
    Androidにもmountコマンドはあるのですが、サブセットのためremountオプションが使えず、busyboxで提供されるmountを使います。
    busyboxは1つ目の引数に実行したいコマンドを書きますので、この場合はmountコマンドが実行されます。2つ目以降の引数はmountコマンドに対する引数となります。


3.プリロードアプリの削除
  /systemに対する書き込みができるようになったので、必要のないプリロードアプリをrmコマンドで削除していきます。


今回の手順で奪取したroot権限はAndroidを再起動すると使えなくなります。
そこで、手順2からやり直すことになるのですが、一度実行すると/data/local/tmpの下に、boomshとshという2つのファイルが出来上がっているので、先にこれらのファイルを削除してから実行することになります。


スポンサーサイト
コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://hnaokixyz.blog109.fc2.com/tb.php/88-84e266ea
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。