How to get root on Samsung Galaxy S II I9100

Warning: It was working for me. I'm not responsible if you break your device. You are doing this steps at your own risk. The installation of a modified firmware invalidates the manufacturer's warranty! You have been warned!

Why root? I want to use some advanced features like DroidWall(frontend for iptables), Titanium Backup, OpenVPN, so I need root.

What we need?

I used a linux PC and virtual Windows in VirtualBox VM. Please check that you are running Android 2.3.3.

Flashing the insecure kernel

  • Switch off your phone
  • Press and hold Volume Down+Ok and press the power button. You should see the download picture
  • Start Odin in the VM, select the in the PDA section the XWKDD_insecure.tar
  • Connect your mobile via USB tunneling and choose start after you see the com port in the odin frontend.
  • Wait for reboot…

Getting root

  • Install “Superuser” from Android Market
  • Unpack “system/bin/su” from su-2.3.2-efgh-bin-signed.zip
  • Push su to the mobile via adb:
/opt/android-sdk-update-manager/platform-tools/adb push su /sdcard/su
  • Start adb shell and remount the /system read write
/opt/android-sdk-update-manager/platform-tools/adb shell
mount -o remount,rw /dev/block/mmcblk0p9 /system
  • Copy su
cat /sdcard/su > /system/bin/su
chmod 06755 /system/bin/su
  • Remount /system read only and remove su from sdcard
mount -o remount,ro /dev/block/mmcblk0p9 /system
rm /sdcard/su
exit

That's all;-)

See also

Discussion

Enter your comment. Wiki syntax is allowed:
If you can't read the letters on the image, download this .wav file to get them read to you.