[Hero CDMA Android Development] theresthatguy:
If you have any suggestions on making this guide better or to correct any mistakes I may have made please let me know.

This guide is intended for any Linux OS and includes detailed instructions. It should work with another Linux OS although I have only verified these steps using Ubuntu 9.10 aka Karmic. includes detailed instructions. This will work with software versions 1.29.651.1 and 1.56.651.2 (aka Android 1.5). It will cover the steps necessary to root, flash the new recovery image, create a full backup. I am not responsible for any damage done to your phone using this guide. Root at your own risk.

Step 1: Download the Android SDK from http://developer.android.com/sdk/index.html The linux file is called android-sdk_r06-linux_86.tgz. Extract the files to your home user directory so that you now have the folder /home/USERNAME/android-sdk-linux. Please note you must replace USERNAME with your own.

Step 2: Download the asroot2 exploit file from http://xdaforums.com/attachment.php?attachmentid=244212&d=1257621154 Extract asroot2.zip to /home/username/android-sdk-linux/tools folder.

Step 3: Download the Hero recovery image from http://xdaforums.com/showpost.php?p=4898505&postcount=1g DO NOT OPEN. Simply place this file in /home/username/android-sdk-linux/tools as well.

Step 4: USB Debugging should be disable before connecting your phone via the USB cable. Connect your phone and now enable USB Debugging.

Step 5: Open a terminal found under Applications>Accessories>Terminal

Step 6: You will now enter a series of commands which I will place in code boxes to indicate the entire command.

A.

cd ~/android-sdk-linux/tools

B.

sudo su

C.

./adb push asroot2 /data/local/

D.

./adb shell

E.

chmod 0755 /data/local/asroot2

F.

/data/local/asroot2 /system/bin/sh

You should see an output that says:

$ /data/local/asroot2 /system/bin/sh

[+] Using newer pope_inode_info layout

Opening: /proc/857/fd/3

SUCCESS: Enjoy the shell.

#​

Now for a few last commands.

G.

mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system

H.

cd /system/bin

I.

cat sh > su

J.

chmod 4755 su

You are now officially rooted. A few more steps and you will have flashed the recovery image.

K.

exit

L.

exit

This will return the command line to ~/android-sdk-linux/tools.

M.

./adb push recovery-RA-heroc-v1.6.2.img /sdcard

N.

./adb shell reboot

This will cause to power off then back on automatically. Wait till the phone is fully booted to continue.

O.

./adb shell

P.

su

Q.

cd /sdcard/

R.

flash_image recovery recovery-RA-heroc-v1.6.2.img

FLASHING TO THE RECOVERY TAKES SEVERAL SECONDS-- BE PATIENT. ENTER THE NEXT COMMAND ONLY AFTER THE COMMAND PROMPT RETURNS TO THE # (ROOT SYMBOL).

S.

reboot recovery

Step 8: This is the last command; You may now close the terminal. It will cause your phone to boot into recovery mode; it should take no longer than 30 secs.

The third option on the list is "- Backup/Restore"; select it. Now, select the first option "- Nand backup". The phone will prompt you to press HOME to confirm which is want you want to do. The backup will begin. You will see the screen say, "Performing backup : .........." When done, the bottom of the screen will say "Backup complete!" and you will be given the menu options again. Go back to the main menu and select reboot system.

Step 9: Once your phone is fully booted, mount the sdcard. You will see a folder called "nandroid"; I highly recommend you copy this to your pc in case you lose your sdcard data or reformat it. Your phone is rooted, 100% backed up, and ready to install a custom rom if you wish!