Keeping Root

From Android Wiki

(Difference between revisions)
Jump to: navigation, searcha
(Using pre-modified RC30)
Line 11: Line 11:
#Unzip the file and copy (or adb push) recovery_testkeys.img to /sdcard
#Unzip the file and copy (or adb push) recovery_testkeys.img to /sdcard
#Download the modified update (Do not unzip it!):
#Download the modified update (Do not unzip it!):
-
#*USA Version ('''MD5= 68eec9a22747accc3d51076ad465505f'''):
+
#*USA Version ('''MD5= 811603424e91f6d669f4586d40497b93'''):
-
#**[http://android-dls.com/files/jf/update_TC4-RC30_full_xda-dev_v1.2.xxx JesusFreke's RC30 v1.2 .xxx file] G1 Downloadable link ([[Android Browser File Types|rename to .zip]])
+
#**[http://android-dls.com/files/jf/JFv1.3_RC30.xxx JesusFreke's RC30 v1.3 .xxx file] G1 Downloadable link ([[Android Browser File Types|rename to .zip]])
-
#**[http://android-dls.com/files/jf/update_TC4-RC30_full_xda-dev_v1.2.zip JesusFreke's RC30 v1.2 .zip file] Non G1 download, no need to rename
+
#**[http://android-dls.com/files/jf/JFv1.3_RC30.zip JesusFreke's RC30 v1.3 .zip file] Non G1 download, no need to rename
-
#*UK Version ('''MD5= e51d85b6e754179ed5fb43c4b08d47be'''):
+
#*UK Version ('''MD5= 753c4de568e7cba0f1f57e69dd0afbd4'''):
-
#**[http://android-dls.com/files/jf/update_TC5-RC8_full_xda-dev_v1.2.xxx JesusFreke's UK RC8 v1.2 .xxx file] G1 Downloadable link ([[Android Browser File Types|rename to .zip]])
+
#**[http://android-dls.com/files/jf/JFv1.3_RC8.xxx JesusFreke's UK RC8 v1.3 .xxx file] G1 Downloadable link ([[Android Browser File Types|rename to .zip]])
-
#**[http://android-dls.com/files/jf/update_TC5-RC8_full_xda-dev_v1.2.zip JesusFreke's UK RC8 v1.2 .zip file] Non G1 download, no need to rename
+
#**[http://android-dls.com/files/jf/JFv1.3_RC8.zip JesusFreke's UK RC8 v1.3 .zip file] Non G1 download, no need to rename
#copy (or adb push) this file to /sdcard/update.zip - Make sure that if you copy over USB that you unmount before unplugging
#copy (or adb push) this file to /sdcard/update.zip - Make sure that if you copy over USB that you unmount before unplugging
#*tip: If you are on windows, and have the "hide file extensions for windows" option turned on, once you rename the file to update.zip, make sure you only see "update", and NOT "update.zip". Because if you see "update.zip", it means that it's really named update.zip.zip, and the phone won't be able to find it
#*tip: If you are on windows, and have the "hide file extensions for windows" option turned on, once you rename the file to update.zip, make sure you only see "update", and NOT "update.zip". Because if you see "update.zip", it means that it's really named update.zip.zip, and the phone won't be able to find it

Revision as of 09:26, 2 January 2009

These methods can only be done on RC29 or lower. If you are already on RC30 this will NOT work for you and you must wait for the next root exploit to be found.

Using pre-modified RC30

JesusFreke has created a pre-modified version of RC30 (RC8/UK) that you can use if you do not wish to manually edit it yourself.

If you copy files over USB to /sdcard remember to unmount before unplugging the USB.

  1. Download the modified recovery image (MD5= 312f279dc5d6abd2086c003175bb7afe):
  2. Unzip the file and copy (or adb push) recovery_testkeys.img to /sdcard
  3. Download the modified update (Do not unzip it!):
  4. copy (or adb push) this file to /sdcard/update.zip - Make sure that if you copy over USB that you unmount before unplugging
    • tip: If you are on windows, and have the "hide file extensions for windows" option turned on, once you rename the file to update.zip, make sure you only see "update", and NOT "update.zip". Because if you see "update.zip", it means that it's really named update.zip.zip, and the phone won't be able to find it
  5. Copy the recovery image to the /system partition:
    1. mount -o remount,rw /dev/block/mtdblock3 /system
    2. cd /system
    3. cat /sdcard/recovery_testkeys.img > recovery.img
    4. flash_image recovery recovery.img 
  6. Turn off phone
  7. Turn back on the phone and let it boot normally (don't go into recovery mode yet)
  8. Once the phone finished booting, turn off the phone again (yes, you really should let the phone start up normally once. Don't skip this)
  9. Hold down power and home to enter recovery mode
  10. At the exclamation point and phone image hit Alt-L look for test-keys on the second line. If missing, the above steps failed and you should hold Home and Back to reboot and start over. If not, continue.
  11. Press Alt+S. The system will proceed to verify the image and install it. When done, it will say to reboot by pressing Home + Back.
  12. Press Home + Back. The system should show an open box and arrow into phone, then an arrow onto a chip, then reboot twice.

This will give you an rc30 that has 'su' for gaining root access. (Not quite the same thing you get with the manual steps below.)

More information and updates can be found on the original thread at XDA-Developers

Manually modifying your own RC30

  1. Download the recovery image:
    1. .xxx file- G1 downloadable link (rename to .zip)
    2. .zip file: Non G1 download, no need to rename,
  2. Flash the recovery image
  3. Unzip the FULL RC30
  4. Replace the /system/recovery.img with the one from step 1.
  5. Copy /system/bin/sh to system/bin/rootshell, and make the following changes to META-INF/com/google/android/update-script (or download a modified copy from a trusted source)


Add this to the end of the first line, which should start with: assert getprop("ro.build.finger.......

|| getprop("ro.build.fingerprint") == "generic/htc_dream/dream/trout:1.0/TC3/eng.jesusfreke.20081105.164210:eng/test-keys"


Then after:

set_perm_recursive 0 2000 0755 0755 SYSTEM:bin

Add:

set_perm 0 2000 04755 SYSTEM:bin/rootshell

BACKUP anything from /system as it will be formatted. Do -not- use the 4 meg rc30 patch, as it will brick your device at this stage.

Resign with the utility provided in the zip file from step 1, copy it to your SD card, enter recovery, and pray. If it works, you can run the following from the terminal app (not pterminal) /system/bin/rootshell

  • in terminal (as root) do:
mv /system/etc/security/otacerts.zip /system/etc/security/otacerts.zip.nothankyou

It is not yet known if this last step is needed, but better safe then derooted

This has been successfully tested, but as always, perform these steps at your own risk.

Personal tools