9:51 PM
0
Step 1. Install the android sdk
I won’t go into this in detail. There are maintained & updated instructions at http://developer.android.com/sdk/installing.html#Installing

Step 2. Enable USB debugging on your phone

Turn on “USB Debugging” on your device.
On the device, go to Settings > Applications > Development and enable USB debugging.

Once this is complete, plug your phone into your computer via your USB cable.
Step 3. Get the files
The files are available in .zip and .tgz archives here. You don’t need both. The tgz is there for convenience for those who prefer it. Once you have the archive, unzip it somewhere that’s easy to get to from a command line.
Step 4. Edit the install file
I was hoping to automate this step so you didnt have to do it manually, but unfortunately stock android (at least 1.5) does not have the gnu-utils necessary to do this – so you’ll have to do it by hand… Thankfully, it’s not a terribly difficult process.
In your local terminal (on your computer, not on the device), run the following command:


adb shell mount

You will see a bunch of output that looks something like this 

rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mtdblock10 /phx/cp yaffs2 rw 0 0
/dev/block/mtdblock18 /phx/cpb yaffs2 rw 0 0
/dev/block/mtdblock17 /phx/bp squashfs ro 0 0
/dev/block/mtdblock15 /phx/csd squashfs ro 0 0
/dev/block/mtdblock14 /phx/ue squashfs ro 0 0
/dev/block/mtdblock11 /phx/logger yaffs2 rw 0 0
/dev/block/mtdblock7 /system yaffs2 ro 0 0
/dev/block/mtdblock9 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock8 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock12 /data/preload yaffs2 ro 0 0

I have highlighted the line you are looking for in this example. You want to find the line that shows the device that is mounted to /system. In this example, /dev/block/mtdblock7 is mounted to /system. Yours may be different, hence why we check to see what it is first. Once you have this value, open install.sh in your favorite editor (on Windows, I like Notepad++), there are instructions as to where to paste this value. Then save the file and close it.
Step 5. Push the files to the phone
In your local terminal, cd to the directory where you unzipped the files, then run the following commands

adb push Superuser.apk /sdcard/Superuser.apk
adb push busybox /sdcard/busybox
adb push su /sdcard/su
adb push rage /data/local/tmp/rage
adb push install.sh /data/local/tmp/install.sh
adb shell chmod 775 /data/local/tmp
adb shell chmod 755 /data/local/tmp/*

Step 6. Install ConnectBot
Pretty straightforward. Install ConnectBot from the android market. This method may work with other terminal apps, but I have not tested them. I had no luck getting this method to work over ADB.
Step 7. Execute rage
Open ConnectBot and connect to your phone, then issue the following command:

/data/local/tmp/rage

Step 8. WAIT
This has its own step because it’s really important. You have to wait. Be patient. I know, it’s hard, you’re excited, but don’t get all button happy. you’ll mess up the process. The process is complete when you see


[*] Forked %d childs.

(Where %d is replaced by the number of threads forked.)
Once you see this message, disconnect from ConnectBot.
Step 9. Check for root and install root utilities
Open ConnectBot and reconnect to your phone. Where before you saw the $ character indicating you were in userland, you should now see a # indicating that you are root. If you see the # character, congrats! You’re almost done and you may proceed. If you still see the $ character, something messed up and you need to backtrace your steps and figure out where you went wrong. If you are now root, issue the following command:


/data/local/tmp/install.sh

If all went well, this script should have executed with no output and no errors. If everything looks good, go ahead and sync/reboot your phone

sync
reboot

Step 10. Test your install
At this point, if all went well, your Motorola I1 should be rooted, rebooted and have all the utilities necessary to escalate to root on the command line or run applications that require root permissions. To be sure that it worked correctly let’s test it.
To test on your phone with ConnectBot, start ConnectBot, connect to your phone and issue the command

Su

To test from your computer, you can simply run:

adb shell su

0 comments:

Post a Comment