If you want to take the most out of your Samsung Galaxy S2 smartphone, you will surely want to root it as you can get cool things like free wifi tethering, overclocking your phone’s CPU, make complete backup of your ROMs and more.
For Mac OSX, you can use Heimdall instead of ODIN, please see How to Use Heimdall for OSX Video.
This is for Gingerbread ONLY, for ICS root method, see How to Root Galaxy S2 on ICS!
For Jelly Bean root method, see How to Root Galaxy S2 on Jelly Bean!
Update: There’s a new Root Method for ALL Galaxy S2!
Looking for Sprint Epic 4G Touch Root? Check out Epic 4G Touch Root.
Looking for AT&T Galaxy S2 Root? Check out AT&T Galaxy S2 Root.
Looking for T-Mobile Galaxy S2 Root? Check out T-Mobile Galaxy S2 Root.
This method currently only works on Windows-based systems.
Here’s how to root Galaxy S2 Android smartphone:
Step 1. First, go to Settings->About Phone to find out the model number of your Galaxy S2, you should get something like GT-I9100_XWKF1.
Step 2. Put your phone into downloading mode by powering your Galaxy S2 off. Then hold down Volume Down, Home button, and the Power button together until you get an option to enter downloading mode. Hit Volume Up to enter downloading mode and connect your Galaxy S2 to your computer via USB cable.
Step 3. Go to this download page and download appropriate insecure and original kernel files. Unzip these zip files.
Step 6. Run Odin3 v1.83.exe, you should get a YELLOW box displaying COM port. If you don’t, make sure to double check that you have connected your Galaxy S2 to your computer via USB cable and installed Samsung Kies software.
Step 7. Hit the PDA button and find the insecure file you downloaded earlier such as “T-I9100_XWKF1_insecure.tar“.
Step 8. Hit the Start button and it should start flashing the insecure kernel. This is required so you can get temporary root access to install permanent SuperUser files on your Galaxy G2.
Step 9. When it reboots, make sure USB Debugging is checked on under Settings->Applications->Development then run S2 Root.exe in the galaxys2root folder.
Step 10. Hit the “Root Device” button.
*Note – to Unroot later, run this program again and hit unroot on rooted stock ROM. Make sure to backup your rooted stock ROM!
Step 11. Your phone should reboot. Check to see if you have SuperUser app. If you don’t, try running the root program again (Do Step 10 again). (I had to.)
Step 12. If you do have SuperUser app, congratulations! You have ROOTED your Galaxy S2 phone!
Step 13. You can now reflash the original kernel back. Power off your phone and go back into downloading mode by holding down Volume down, Home button, and Power button then hit the Volume Up button.
Step 14. Open up ODIN program again, hit PDA button, and choose the original kernel file you downloaded earlier such as “GT-I9100_XWKF1_original.tar“.
Step 15. Hit Start.
Step 16. Your phone will reboot.
Step 17. If you want to backup your current rooted ROM (I highly advise you to do this) and also install new ROMs, you will want to flash Clockwork Recovery. You can do this by powering off your phone again and go back into downloading mode by holding down Volume down, Home button, and Power button then hit the Volume Up button.
Step 18. Open up ODIN and hit PDA button, then select GT-I9100_ClockworkMod-Recovery_22.214.171.124.tar file in the galaxys2root folder.
Step 19. Hit Start.
Step 20. Your phone should reboot.
Step 21. Any time you want to access your ClockworkMod Recovery, power off your phone then hold down Volume Up, Home button, and the Power button.