First things first. I have a couple of pre-requisites contained in these two other guides here listed below. One is to change a couple of settings on your phone, and the other is for you to get and install the drivers and Android Debugging Bridge (adb) on your computer. You WILL need to have adb to complete this process. There is NO way around it. So here they are and they'll open in seperate windows/tabs so you don't lose your place:
- The settings guide
- The drivers and ADB guide.
OK, done with all that? Next let's get the other software and files needed to complete the process. I should also point out that the main part of this process must be done on a Windows OS, I personally still only use Windows XP Pro SP3, for which most of this software still plays nicely with. Ok, here they are:
- RSD Lite 4.6 Do NOT try this with any other version of RSD lite.
- The flash file for use with the above. (SPRecovery_ESE81.sbf, credit to [mbm] of DroidMod)
- A .zip file with the su binary and Superuser.apk (ESE81RootingFiles.zip)
Now after you download the above three files to your desktop, I would extract the contents of the third one and place the su and Superuser.apk files in the same directory as you have adb.exe in from the second guide in step one above. Next, I would suggest installing RSD Lite 4.6 and then rebooting your computer, just in case. Moving on . . .
Now power off your phone, slide open the keyboard and then press and hold the 'up' key on the d-pad. Now power your phone on. Your phone should show a very simple screen; near the top it should say "Bootloader", 2C6C, ready to program etc. You are in bootloader mode. You can go ahead and close the keyboard. Now go ahead and start RSD Lite. Then plug your phone into your computer. Your phone will now show USB connected and your computer will probably show that it's installing some more drivers, it's a good idea to wait for this to finish. Once that's done, here's where we get to the good part:
In RSD Lite, press the button that has "..." in it (yes, that's three periods).
Another window will open for you to navigate to a file.
Find the "SPRecovery_ESE81.sbf" file and then click on the "open" button.
You should see some information about the file fill the window in RSD Lite.
Now, go ahead and click the "start" button.
RSD Lite will start to show a progress bar, your phone will show something like being hacked (mbm).
Once this process is done, your phone will reboot, and once it's done fully rebooting and even though the progress bar within RSD lite may not be finished, it is OK to unplug your pyhone and quit RSD Lite, even though it may give a warning message. Just make sure that your phone has FULLY rebooted first, then you unplug your phone from your computer, and then quit RSD Lite in that order and you should be fine.
Alrighty then. As it was pointed out to me, you can quit right here and install any custom ROM that is SPRecovery and Android 2.1 compatible, Otherwise if you want to finish rooting yourself and do your own custom setup, then this is where you NEED to use adb and follow the commands very specifically. Your phone is not yet 'rooted', but ready to be so. Now power your phone off, then slide out the keyboard and while holding down the 'x' key, power it back on. You 'should' be booting into the recovery menu, and most importantly the SPRecovery 0.99.3b menu. There should be a "mount" sub-menu and using the up/down button on the side of your phone and the camera button to select, navigate to the 'mount' menu and then mount system. Plug your phone back into your computer if you haven't already. On your Windows machine, open a command prompt and navigate (i.e. "cd") to the folder where you have put the "adb.exe", "su", and "Superuser.apk" files. If for some reason all of these files are not in the same folder/directory (i.e. use the dos 'dir' command to verify) FUCKING STOP YOU missed something, go back and read a bit slower, this is not a twitter feed. If all is well, here's the commands:
- abd push su /system/bin/su
- adb push Superuser.apk /system/app/Superuser.apk
- adb shell "/system/bin/chmod 6755 /system/bin/su"
- adb shell "/system/bin/chmod 644 /system/app/Superuser.apk"
Now go ahead and unplug your phone from your PC and power cycle it, (i.e. reboot it). Your phone should be fully 'rooted'. "But wait, there's more!"
Please don't stop. My other rooting guide includes intalling busybox. Why? Because they go hand-in-hand. In other words, 'rooting' your phone without right away installing busybox is a failure waiting to happen. Trust me. So let's finish 'er off, but you do need this one last file to download ("busybox.zip"). Go ahead and extract the one file in it, named just plain "busybox" (no extension). Plug your phone into your computer, and on your phone select the "mount USB" option. Then select the "view Files" option on your computer. Copy the busybox (binary, no extension) to the "removable" (i.e. the sdcard on your phone) folder on your computer. Then on your phone, select "unmount USB". Now, go ahead and open a command prompt on your windows machine and navigate again to the foleder where the adb.exe file resides. And now for the commands to finish this part of the process off:
- su (if this is the first time using this command, your phone will have a pop-up window asking for your permission, select yes and your prompt should change from a "$" to a "#", if not, you haven't done the root correctly, SO STOP RIGHT HERE!)
- mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
- mkdir /system/xbin (I prefered to put busybox here, separate from the rest, but still in the $PATH on your phone)
- cd /system/xbin
- cat /sdcard/busybox > busybox
- chmod 755 busybox
- busybox --install . (the "." period is intentional, this is the command that makes it fully installed 'native')
- mount -o remount,ro -t yaffs2 /dev/block/mtdblock4 /system
- exit (at this point, your prompt should change back to a "$")
And after that last command, you should be presented with various info about busybox. If not, then you probably did something wrong, refer to my Introduction article. Now, for me, whether I was using a Terminal Emulator on my phone, or the adb shell on my computer and had seen that I had installed busybox successfully (per the info messages), I would enter the following commands:
Now, your phone will reboot and you will be presented with a 'stock' looking phone, all your data will be intact and/or any home replacement apps should still be intact, and on the surface, it will not look any different. But it is. Where you go from here is entirely up to you and 'maybe' further guides by me.