[Nexus One Q&A, Help & Troubleshooting] BryceThomas:
I am attempting to get Cyanogenmod onto my Nexus One, but am running into far more problems than expected. The information on rooting Android devices seems heavily fragmented across the web and the tools unreliable. At least in my case, SuperOneClick has proven a complete misnomer. So I'd like to go back to basics - executing as many of the commands as possible from a Linux terminal to get the phone rooted/unlocked/whatever else has to happen to get Cyanogenmod installed. The two constraints I'm working with here are as follows:

1. The device is running Android 2.2.1 (I downgraded from 2.3.x using the PASSIMG method).

2. The power button on the device is broken, so any method which requires pressing/holding it is ruled out.

The problem I am having is that even after following Linux-centric guides, I get to the point of installing the SuperUser app followed by the ROM Manager app, but I'm never prompted to give ROM Manager superuser permissions and so can't flash the ClockworkMod recovery.

Below I describe the steps I've been taking so far, based on the "How To Root Nexus One Running Android 2.2.1 From Ubuntu Linux" guide (Google it, I can't post hyperlinks).

- Download/extract/move Nexus One Softroot files to same directory as adb

- From adb directory, execute the following commands:

sudo ./adb push psneuter /data/local/tmp/psneuter

sudo ./adb push busybox /data/local/tmp/busybox

sudo ./adb push su /data/local/tmp/su

sudo ./adb shell chmod 755 /data/local/tmp/psneuter

sudo ./adb shell chmod 755 /data/local/tmp/busybox

sudo ./adb shell chmod 755 /data/local/tmp/su

sudo ./adb shell cd /data/local/tmp ./psneuter

sudo ./adb shell

After executing sudo ./adb shell as above, I get the # prompt, which is purported to indicate that rooting was successful.

- Still following the guide, I then execute the commands which purportedly make root permanent:

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

cd /data/local/tmp

./busybox cp busybox /system/bin

chmod 4755 /system/bin/busybox

busybox cp su /system/bin

chmod 4755 /system/bin/su

exit

exit

- Again, still following the guide, I execute the commands which purportedly set the /system partition back to read-only:

sudo ./adb shell

su

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

exit

exit

- Now, I download the SuperUser app from the Android Market and open it to make sure it's running.

- Next, I download the ROM Manager app from Google Play (looks like it pulled a sneaky and upgraded from Android Market to Google Play here).

- I run ROM Manager and choose Flash ClockworkMod Recovery. I'm prompted to confirm the phone is a Google Nexus One and then ROM Manager runs for about 30 seconds (yellow program bar goes all the way) before spitting out An error occurred while attempting to run privileged commands!. And this is the point I am stuck at.

I should note that at no point am I prompted by the SuperUser app to give the ROM Manager app super user permissions. I don't restart the phone or do anything else throughout all of the steps I've described above, so I can't see any reason for root to have been lost at any point. In fact, if I execute the command sudo ./adb shell after all this, I still get the # prompt indicating root. And when I execute id afterwards, I get uid=0(root) gid=0(root) -- further confirmation of root. I really am stuck on this one. I've spent a lot of time digging through forum posts and online articles, but the signal to noise ratio is poor and I haven't been able to find anything that actually works. Can someone suggest where I am going wrong?