Here's a quick breakdown of the process. (For a more in-depth guide, please check out this page
1/ Find correct insecure kernel for our current ROM firmware version
2/ Use ODIN and insecure kernel to root phone
3/ Download CyanogenMod (and optional extra google apps) and place on SD Card
4/ Backup current ROM
5/ Install CyanogenMod
Right, so let's get down to it!...1/ Find correct insecure kernel for our current ROM firmware version
Finding the correct insecure kernel version is easy, simply go to Settings -> About phone -> Kernel Version. Note the string present there
Example (yours will almost certainly be different): 18.104.22.168-I9100XXKG1
What matters most (KG1) in this case, is in bold. Then find the matching file under the download section of this thread
Example (yours will almost certainly be different): CF-Root-SGS2_XX_OXA_KG1
The XX and OXA identifiers are not that important. Usually a "KG1" kernel is a "KG1" kernel, and that is that. Sometimes (pretty rare) it happens there will be multiple different kernels with the same name in different firmwares, that are actually different. If this happens, they are usually only very minor changes and you should expect them to still be fully compatible. The "XX" and "OXA" identifiers are there so the very advanced users can deduce which full firmware the insecure kernel file was taken from.
Don't worry too much, just find the matching download and use it.2/ Use ODIN and insecure kernel to root phone
- Download ODIN
then install it.
- (USB) Disconnect your phone from your computer if it is connected.
- Start ODIN.
- Click the PDA button, and select CF-Root-xxx-vX.X.tar
- Put your phone in download mode by powering down the handset, then press power+volume-down+home buttons all at once. Hold down until download mode screen shows.
- (USB) Connect the phone to your computer.
- Make sure repartition is NOT checked.
- Click the START button.
- Wait for the phone to reboot.
- Done (shouldn't take more than ~30 secs).3/ Download CyanogenMod (and optional extra google apps) and place on SD Card
- Download your preferred version of CyanogenMod.
- Optional: Download the Google Apps for the device
. (select the one that matches your CM version!).
- Place the CyanogenMod update.zip file on the root of the SD card.
- Optional: Place the Google Apps .zip on the root of the SD card also. 4/ Backup current ROM
Now you're rooted, it's a good idea to backup the current ROM (with apps, settings, etc) before installing any custom ROM. If you want to retain your apps and settings when installing a new ROM, use Titanium Backup (not covered in this guide).
- Boot into recovery mode by powering down the handset, then press power+volume-up+home buttons all at once. Hold down until recovery mode screen shows.
- Once the device boots into recovery mode, use the side volume buttons to move around and the power button to select.
- Select backup and restore.
- Select backup (this may take some time).
- Once the backup has finished, select +++++Go Back+++++
Now, you can always boot into recovery and restore the current ROM, should anything go awry with our CyanogenMod install.5/ Install CyanogenMod
- Select the option to Wipe data/factory reset.
- Select the option to Wipe cache partition.
- Select Install zip from sdcard.
- Select Choose zip from sdcard.
- Select the CyanogenMod update.zip.
- Optional: Install the Google Apps by performing steps 7 - 9 again and choosing the Google Apps update.zip.
- Once the installation has finished, select +++++Go Back+++++ to get back to the main menu, and select the Reboot system now option.
CONGRATULATIONS!!!! The Samsung Galaxy S II should now boot into CyanogenMod.
PS: Massive thanks to the Steve Kondik and the CyanogenMod team for a great ROM, and humongous thanks to Chainfire for his guides/downloads/work.