Rooting Android

From Android Wiki

(Difference between revisions)
Jump to: navigation, searcha
m (fhtagn)
(Undo revision 1079 by Try OP9 (Talk))
Line 1: Line 1:
-
fhtagn
+
==Start and connect to telnetd==
 +
This has been tested and is known to work on [[OTA Updates|RC19 and RC29]] on the G1. This has been patched in RC30 so if you have RC30+ you need to [[Root For RC30|downgrade to RC29]] first.
 +
 
 +
#Restart your phone
 +
#At your phones desktop hit the <enter> key twice and then type "telnetd" and press <enter> again
 +
#Download an [http://android-dls.com/files/apps/Telnet.apk Android Telnet client] and connect to localhost. If you are unable to connect, try steps 1 and 2 over again until you can.
 +
#you now have root!
 +
 
 +
Alternatively if you have adb installed, you can use adb to forward a local port on your linux host to a port on the phone. This avoids the need to install a terminal on the phone:
 +
 
 +
# At your phones desktop hit the <enter> key twice and then type "telnetd" and press <enter> again, then on your desktop:
 +
adb forward tcp:9988 tcp:23
 +
telnet localhost 9988
 +
 
 +
If your phone is not found by ADB, please refer to [http://androidcommunity.com/forums/f4/how-to-install-apps-using-adb-4482/ this page] for information how to enable debugging-mode on G1.
 +
 
 +
==Add busybox==
 +
#[http://android-dls.com/files/apps/busybox.xxx download busybox by tapping and holding (long pressing) this file] and choosing save link to your sd card (using android browser)
 +
#remount system as read-write
 +
#*<pre> mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system</pre>
 +
#copy and rename busybox.asc to /system/bin/busybox
 +
#*<pre>dd if=/sdcard/download/busybox.asc of=/system/bin/busybox</pre>
 +
#make it executable
 +
#*<pre>chmod 4755 /system/bin/busybox</pre>
 +
#go there
 +
#*<pre>cd /system/bin/</pre>
 +
#this gives you cp (great for making more symlinks)
 +
#*<pre>busybox cp -s busybox cp</pre>
 +
#start sh (this is busybox sh and has more commands and is easier to use)
 +
#*<pre>busybox sh</pre>
 +
 
 +
You will not need to create any more symlinks if you plan on installing any recent JF update as he has done this for you.
 +
 
 +
P.S. If you have adb running you can paste this in to do all of the previous commands at once (much faster).
 +
<pre>
 +
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
 +
dd if=/sdcard/download/busybox.asc of=/system/bin/busybox
 +
chmod 4755 /system/bin/busybox
 +
cd /system/bin/
 +
busybox cp -s busybox cp
 +
busybox sh
 +
</pre>
 +
 
 +
==Protect your root==
 +
New updates from google are geared at taking all of this away from you. You should now install one of JF's modified roms so you can [[Keeping Root|keep root after you update]]. It is recommended that you do not merely block updates and stay at your current version because some bugs (especially the [[G1 Root Bug Explained|root bug]]) can pose a serious risk to security and privacy if left un-patched.

Revision as of 01:50, 2 August 2009

Start and connect to telnetd

This has been tested and is known to work on RC19 and RC29 on the G1. This has been patched in RC30 so if you have RC30+ you need to downgrade to RC29 first.

  1. Restart your phone
  2. At your phones desktop hit the <enter> key twice and then type "telnetd" and press <enter> again
  3. Download an Android Telnet client and connect to localhost. If you are unable to connect, try steps 1 and 2 over again until you can.
  4. you now have root!

Alternatively if you have adb installed, you can use adb to forward a local port on your linux host to a port on the phone. This avoids the need to install a terminal on the phone:

  1. At your phones desktop hit the <enter> key twice and then type "telnetd" and press <enter> again, then on your desktop:
adb forward tcp:9988 tcp:23
telnet localhost 9988

If your phone is not found by ADB, please refer to this page for information how to enable debugging-mode on G1.

Add busybox

  1. download busybox by tapping and holding (long pressing) this file and choosing save link to your sd card (using android browser)
  2. remount system as read-write
    •  mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
  3. copy and rename busybox.asc to /system/bin/busybox
    • dd if=/sdcard/download/busybox.asc of=/system/bin/busybox
  4. make it executable
    • chmod 4755 /system/bin/busybox
  5. go there
    • cd /system/bin/
  6. this gives you cp (great for making more symlinks)
    • busybox cp -s busybox cp
  7. start sh (this is busybox sh and has more commands and is easier to use)
    • busybox sh

You will not need to create any more symlinks if you plan on installing any recent JF update as he has done this for you.

P.S. If you have adb running you can paste this in to do all of the previous commands at once (much faster).

mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
dd if=/sdcard/download/busybox.asc of=/system/bin/busybox
chmod 4755 /system/bin/busybox
cd /system/bin/
busybox cp -s busybox cp
busybox sh

Protect your root

New updates from google are geared at taking all of this away from you. You should now install one of JF's modified roms so you can keep root after you update. It is recommended that you do not merely block updates and stay at your current version because some bugs (especially the root bug) can pose a serious risk to security and privacy if left un-patched.

Personal tools