Galaxy NexusのRootキットとしては、Superboot r4 GSMが有名です。大抵のサイトはこちらを使用した方法を紹介しています。
Zipファイルを展開して、Windows用のバッチファイルをダブルクリックするだけでRoot化が完了するツールです。
早速、何をしているか、バッチファイルを展開してみると・・・
fastboot-windows.exe boot boot.superboot.img
たったこれだけ・・・
つまり同梱されているboot.superboot.imgをブートしているだけです。実際に動いているのはこのimgファイルですね。
ただ、このimgファイルをWindowsで展開するのがやっかいで、
- Cygwin(Linux環境のコマンドプロンプトみたいなもの)
- Unyaffs(imgファイルのファイルシステム”yaffs2”を展開するプログラム)
が必要です。・・・面倒なので、当方では実施しません。
(ただ、この環境さえあれば、バックアップした各イメージファイルから必要なファイルだけを抽出したり出来ます。また、Android端末単体での展開ツールもあります)
・・・気を取り直して、ChainsDD氏が配布しているツール、Superuser-3.0.7-efghi-signed.zipのupdater-scriptを見てみましょう。全てのツールはこれを元に作成していますし♪
ui_print("***********************************************");
ui_print(" Superuser 3.0.7 for Android 2.0-3.2");
ui_print("***********************************************");
show_progress(1.000000, 0);
ui_print(" Mounting SYSTEM...");
run_program("/sbin/busybox", "mount", "/system");※1
set_progress(0.100000);
ui_print(" Deleting SYSTEM:bin/su...");
delete("/system/bin/su");※2
set_progress(0.200000);
ui_print(" Deleting SYSTEM:xbin/su...");
delete("/system/xbin/su");※2
set_progress(0.300000);
ui_print(" Extracting files to SYSTEM...");
package_extract_dir("system", "/system");※3
set_progress(0.400000);
ui_print(" Setting SYSTEM:bin/su permissions to 06755...");
set_perm(0, 0, 06755, "/system/bin/su");※4
set_progress(0.500000);
ui_print(" Creating SYSTEM:xbin/su symbolic link...");
symlink("/system/bin/su", "/system/xbin/su");※5
set_progress(0.600000);
ui_print(" Unmounting SYSTEM...");
unmount("/system");※6
set_progress(0.900000);
ui_print("Install complete. Enjoy!");
set_progress(1.000000);
※マーク以下はこちらで書き込んだものです。
このzipファイルをインストールする時には、
※1:busyboxを起動して、システムをマウント(編集可能な状態)にする
※2:元々配置されているsuファイルを削除する
※3:同梱されているsystemファイルを/systemに展開する
※4:suファイルにパーミッションを付加する
※5:/system/xbin/suというシンボリックリンクを配置する
※6:システムをアンマウントする
という順序を踏んでいます。
busyboxの導入がないので、各自で(マーケットなどから)導入する必要がありますね。
Galaxy NexusをRoot化する時は、せっかくなのでコマンドを手打ちしてみようと思います♪