From Android Wiki
Start and connect to telnetd
- Restart your phone
- At your phones desktop hit the <enter> key twice and then type "telnetd" and press <enter> again
- 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.
- 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 this page for information how to enable debugging-mode on G1.
- 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
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
- copy and rename busybox.asc to /system/bin/busybox
dd if=/sdcard/download/busybox.asc of=/system/bin/busybox
- make it executable
chmod 4755 /system/bin/busybox
- go there
- this gives you cp (great for making more symlinks)
busybox cp -s busybox cp
- start sh (this is busybox sh and has more commands and is easier to use)
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.