Related
May NOT work for 2.3.3, if attempting on 2.3.3 use old part 1! - Will wipe all data though
Windows ONLY!
Hey guys, rooted my Nexus S today, and decided to write a thorough, detailed guide on how I did it, as none of the guides I had found had everything detailed. I came across a few problems, and all of this is in the guide. I successfully completed it on my Nexus S running 2.3.2, so any version below that will also work.
The original guide was made by AllGamer, and can be found here. I followed this guide, and added things when I found it was needed
The full guide with everything (including links, pictures) can be found on my site, Complete Android.
New info: Upon finding another thread over at XDA (http://forum.xda-developers.com/showthread.php?t=931865) it has been realized that you can root your Nexus S without unlocking the bootloader, and therefore not loosing your data on the SD card. Part 1 for the new method is still the same, but choose the new Part 2!
WARNING: Rooting your device will wipe all data off it, so you will loose EVERYTHING! Make sure you backup all important data first. Only applies to old Part 2 (fastboot oem unlock method), but it is still a good idea to backup important information!
Click to expand...
Click to collapse
What you will need:
Nexus S (obviously)
Android 2.3 SDK
USB Cable
PDAnet (for drivers)
Clockwork Recovery Image
Superuser
Part 1
Download the Android 2.3 SDK (or direct from Google here, 32MB).
Once it has finished downloading, unzip it, and run the SDK manager.
Select whatever components you wish to install, but you MUST make sure you install Google USB Driver (Available packages > Third party Add-ons > Google Inc. Add-ons > Google Usb Driver package, revision 4) otherwise this guide will not work!
We must now install the Google USB Driver, or the phone will not be recognised as a device other than a mass storage device.
Connect your Nexus S to your computer, and put it in USB storage mode.
Put it in USB Debugging Mode (Settings > Applications > Development > USB Debugging)
Windows should now recognise your Nexus S when you plug it in, and ask to install drivers. It probably won’t find anything, so we need to help it manually.
(Installing drivers manually varies between Windows versions, so please refer to http://developer.android.com/sdk/win-usb.html if you are having trouble). Launch Device Manager (you can find it in Control Panel), find Other Devices, and listed under that heading, you should find Nexus S. Right click, and select Update Driver Software. Click Browse my computer for driver software, find your SDK folder, then the google-usb_driver folder inside it, click OK, then Next. This should install the USB driver successfully. Reboot your computer.
Power off your Nexus S, connect it to your computer via USB cable, and boot it into the Bootloader Interface (you can do so by holding down the Power and Volume Up buttons at the same time).
It should say LOCK STATE – LOCKED, in white just above the green Android. You are now ready to move on!
Part 2 - Fastboot oem unlock method - WIPES ALL DATA!
We now need to install PDAnet on our PC so that Windows can see our Nexus S when we are using the Command Prompt. Install PDAnet from here, select Samsung when asked about the Manufacturer, allow the driver to be installed (because the driver is unverified, don’t worry about this!). Follow along with any other instructions. You should be set now.
With the latest SDK version, some tools have been relocated to another directory, so we need to make a copy and move them back. Navigate to the directory where you unzipped the Android SDK file in part 1. Inside it, go to the platform-tools folder, and copy both AdbWinApi.dll and AdbWinUsbApi.dll. Go back to the main Android SDK directory and find the tools folder. Paste these two files in there, and we are all ready to use ‘fastboot oem unlock’ (the rooting command) now.
Open a command prompt window (Start > Run > cmd.exe).
Change to the tools directory within your Android SDK folder by using the following command (without the quotes and replacing *YOUR SDK* with the path to your Android SDK folder) ‘cd c:\*YOUR SDK*\tools’.
Make sure your Nexus S is still in the Bootloader Interface (refer to step 9, part 1 of it isn’t).
Now in the command prompt, type in (without the quotes) ‘fastboot oem unlock’.
Now turn your attention to the phone, and read through the new information displayed on the screen. Using the Volume keys select Yes, then press the Power button. This will WIPE EVERYTHING! I bear no responsibility for any lost data on your phone!
If everything is successful, on your phone, the LOCK STATE should now read UNLOCKED, and on your computer, the command prompt window should say something like this:
Download the Clockwork Recovery image (here if you don’t already have it) to your Android SDK tools folder (*Android SDK*\tools).
Rename the newly downloaded Clockwork Recovery image to ‘recovery.img’ (no quotes).
Now we need to flash it to our Nexus S, so enter this command into the Command Prompt (make sure it is in the Androis SDK tools folder!) ‘fastboot flash recovery recovery.img’ (without the quotes).
If all is successful, the Command Prompt window should look something like this now:
Download the superuser app to the Android SDK tools folder.
Power on your Nexus S, leaving it connected to USB.
Mount the USB storage, and drag and drop the superuser .zip file you just downloaded into the root of the internal SD card (so Computer > *Device Name*, not in any other folders!). It should look something like this:
Power off the Nexus S, and return to the Bootloader Interface (step 9, part 1).
Select Recovery using the Volume buttons, then the Power button.
The phone should reboot into Clockwork Recovery, but if not don’t panic, just repeat steps 9-12, including downloading a new copy of the file (mine only worked the second time around, don’t worry!)
Using the Volume buttons and Power button, select install zip from sdcard.
Select choose zip from sdcard.
Select the su-version#-signed.zip file you downloaded earlier and apply it.
Select yes (there are lots of nos).
Confirm it says something like this: install from sdcard complete
Select Go Back.
Select Reboot. (You will now also have an unlocked padlock when you boot up)
Done! You now have to set up your phone again like when you first got it, but it will be rooted now.
New Part 2 - Does NOT wipe everything - Keeps a locked bootloader
Make sure Part 1 is completed.
Make sure you have downloaded the Clockwork Recovery file and the Superuser file.
Move the Clockwork Recovery file to your tools folder within the Android SDK folder, and rename it to recovery.img (for simplicity).
Connect your Nexus S via USB to your computer and mount it as USB storage. Copy across the Superuser file to the top level of your sdcard. (So the first window you see, not in any other folders. The sdcard is just where all the files are stored, don't worry about it too much for now).
We now need to install PDAnet on our PC so that Windows can see our Nexus S when we are using the Command Prompt. Install PDAnet from here, select Samsung when asked about the Manufacturer, allow the driver to be installed (because the driver is unverified, don't worry about this!). Follow along with any other instructions. You should be set now.
With the latest SDK version, some tools have been relocated to another directory, so we need to make a copy and move them back. Navigate to the directory where you unzipped the Android SDK file in part 1. Inside it, go to the platform-tools folder, and copy both AdbWinApi.dll and AdbWinUsbApi.dll. Go back to the main Android SDK directory and find the tools folder. Paste these two files in there, and we are all ready to use 'fastboot boot' (the boot image command) now.
Open a command prompt window (Start > Run > cmd.exe).
Change to the tools directory within your Android SDK folder by using the following command (without the quotes and replacing *YOUR SDK* with the path to your Android SDK folder) 'cd c:\*YOUR SDK*\tools'.
Make sure your Nexus S is still in the Bootloader Interface (refer to step 9, part 1 of it isn't).
We now need to use the 'fastboot boot' command to load Clockwork Recovery onto our Nexus S. In the command prompt, type in the following (but without the quotes, as always) 'fastboot boot recovery.img'
Once you are in Clockwork Recovery (it may take a couple of tries, don't panic, just redownload Clockwork Recovery, and complete steps 3 and 10, part 2) it should look something like this:
Using the Volume buttons and Power button, select install zip from sdcard.
Select choose zip from sdcard.
Select the su-version#-signed.zip file you downloaded earlier and apply it.
Select yes (there are lots of nos).
Confirm it says something like this: install from sdcard complete
Select Go Back.
Select Reboot.
Done! You should still have all your data present on your phone, and have root access!
Notes
As AllGamer said in his tutorial:
It’s normal to lose the recovery after the reboot, the steps to flash the CW recovery needs to be repeated every time you want to access the CW recovery.
This is due the build in protection in 2.3
As some one pointed it out on another topic, the good thing about this is that you’ll never lose the stock recovery of 2.3, thus minimizing the chance of a bricked phone.
If you want to the CW recovery to remain permanently, you’ll need to rename /etc/install-recovery.sh to something thing else
Click to expand...
Click to collapse
Keep this in mind! It's not because you did something wrong
Also, some root apps require BusyBox to be installed, as I found out with Titanium Backup, so once you set up your Nexus S again, head on into the Market, and download BusyBox. It installed fine on my Nexus S this way, and now TB works fine.
I hope this is the best, most thorough guide you will find on rooting the Nexus S. Enjoy! Feedback is appreciated, and I will help out if you need any extra help.
Your guide has been wonderful however I'm stuck on part 2, step 4. I tried writing in the path to my directory and they keep giving me whatever I wrote in the command prompt "is not recognized as an internal or external command, operable program or batch file"
"Change to the tools directory within your Android SDK folder by using the following command (without the quotes and replacing *YOUR SDK* with the path to your Android SDK folder) ‘cd c:\*YOUR SDK*\tools’."
This is how my command prompt looks like when I first open it. "C:\Users\Du>"
and this is what I typed in the command prompt: "Downloads\android-sdk_r09-windows\android-sdk-windows"
^^^I did exactly what you said above and nothing is happening. I don't know whether I'm writing in the directory wrong or what. Please help me out thanks
Your guide is nice, however as shown in distortedloop's stickied Root & Recovery thread, fastboot oem unlock is not required for rooting & flashing. We no longer have to lose all our sdcard data when first rooting and/or flashing a ROM.
Other than that, this seems to be a nice amendment of Allgamer's sticked root & recovery thread. I'm sure it will be useful to many.
STARSCR33M said:
This is how my command prompt looks like when I first open it. "C:\Users\Du>"
and this is what I typed in the command prompt: "Downloads\android-sdk_r09-windows\android-sdk-windows"
^^^I did exactly what you said above and nothing is happening. I don't know whether I'm writing in the directory wrong or what. Please help me out thanks
Click to expand...
Click to collapse
Ok so if you want to change directories in the command prompt, you need to use the command
Code:
cd
So in your case I would type in
Code:
cd c:\Users\Du\Downloads\android-sdk_r09-windows\android-sdk-windows\tools
That way is fool proof, however you could take a shortcut, because you are already in the Users/Du folder (because of how it looks when you first open it), you could just type in
Code:
cd Downloads\android-sdk_r09-windows\android-sdk-windows\tools
Hope that helps
ravidavi said:
Your guide is nice, however as shown in distortedloop's stickied Root & Recovery thread, fastboot oem unlock is not required for rooting & flashing. We no longer have to lose all our sdcard data when first rooting and/or flashing a ROM.
Click to expand...
Click to collapse
I think this way is a cleaner approach personally, but hey choice is good That's what Android is all about
EDIT: New approach added, now there is choice and easyness for all
Other than that, this seems to be a nice amendment of Allgamer's sticked root & recovery thread. I'm sure it will be useful to many.
Click to expand...
Click to collapse
Thanks
Jonathon Grigg said:
I think this way is a cleaner approach personally, but hey choice is good That's what Android is all about
Thanks
Click to expand...
Click to collapse
I'm not sure that wiping all your data pointlessly is "cleaner."
It's not even clear what exactly the oem unlock of the bootloader really does for us, since you can get into clockwork recovery without that step. Once you're in clockwork you pretty much own the phone. I'll be interested to see if someone can use clockwork to flash a new boot image once rooted without the unlock; if so I can't see any reason to unlock the bootloader. That said, mine is unlocked, and I like it that way, but many won't root for fear of losing data on the phone.
Even if you end up having to do the oem unlock in the long run for some activities you want to do, it seems that rooting, then installing Titanium and backing up your apps and app data fully is a better way to go than just losing all your data (any app that doesn't store its data on the sdcard) that can't be backed up without root would be a lot less painful than WIPING everything on the phone, including the sdcard.
It's not worth arguing about, but I think any method that is including the oem unlock step should at least mention that that step can be skipped. How many people will go through the pain of a wipe that they didn't need to because they didn't see that there was an option without it. I guess that's there own fault for not doing enough searching on their own...
Anyways, nice and thorough effort. I'm sure many will benefit from your additions to AllGamer's tutorial.
distortedloop said:
I'm not sure that wiping all your data pointlessly is "cleaner."
It's not even clear what exactly the oem unlock of the bootloader really does for us, since you can get into clockwork recovery without that step.
Click to expand...
Click to collapse
I have been wondering that myself. My guess is that for the average user you don't need to, but maybe it's for real power users who build their own ROM which has been fully modded or something, I'm not sure.
but many won't root for fear of losing data on the phone.
Click to expand...
Click to collapse
I definitely agree with that, and your guide is probably the best way for those people!
Even if you end up having to do the oem unlock in the long run for some activities you want to do, it seems that rooting, then installing Titanium and backing up your apps and app data fully is a better way to go than just losing all your data (any app that doesn't store its data on the sdcard) that can't be backed up without root would be a lot less painful than WIPING everything on the phone, including the sdcard.
Click to expand...
Click to collapse
Exactly, this is one of the better uses for both methods. I already had to wipe my phone twice due to Samsung CS so I'm used to it Although it does give you a chance to clear out the apps you don't need. Doing that I noticed better battery life on my phone.
It's not worth arguing about, but I think any method that is including the oem unlock step should at least mention that that step can be skipped. How many people will go through the pain of a wipe that they didn't need to because they didn't see that there was an option without it.
Click to expand...
Click to collapse
I wasn't going to argue I'm happy to adjust my tut to include something about this, after all it was aimed at more beginners.
EDIT: Added a new part to my tutorial based on your guide, just includes some more detail. Thanks again.
Thanks distortedloop
This is awesome cause i relocked my bootloader i really just needed root. Thanks!
Edit oops lost track of tabs open.
I think we can use this method to unlock oem without wiping data.
boot cw -> full backup -> unlock and flash cw (wipes data) -> restore backup (got ur data back and oem unlocked)
the only problem i can think of is that restoring backup would re-lock oem again but i am not sure of that.
i can't try this right now but if someone could, please give feedback.
Jonathon Grigg said:
I wasn't going to argue I'm happy to adjust my tut to include something about this, after all it was aimed at more beginners.
EDIT: Added a new part to my tutorial based on your guide, just includes some more detail. Thanks again.
Click to expand...
Click to collapse
Nicely done. Thanks.
sam4free said:
I think we can use this method to unlock oem without wiping data.
boot cw -> full backup -> unlock and flash cw (wipes data) -> restore backup (got ur data back and oem unlocked)
the only problem i can think of is that restoring backup would re-lock oem again but i am not sure of that.
i can't try this right now but if someone could, please give feedback.
Click to expand...
Click to collapse
That's what I suggesting a couple of posts above (root without unlock to at least make a backup of user data).
Restoring a titanium backup would not re-lock the phone. A nandroid restore might, depends on what all it imaged and restores, but it's so easy to re-root, that doesn't seem like a big deal.
Jonathon Grigg said:
Download the Android 2.3 SDK (or direct from Google here, 32MB).
Click to expand...
Click to collapse
Looks like you forgot to add the link in your copy pasta.
AtomicPC said:
Looks like you forgot to add the link in your copy pasta.
Click to expand...
Click to collapse
I've been working on it I just wanted to get it up here as soon as I could That's why I mentioned that the full guide is available on my website. I'm going back to school today, so I don't really have too much time for changing links now. Besides, most people on XDA should know how to look at the 'What's needed' part
Sent from my Nexus S using XDA App
Jonathon,
Thank you for posting this detailed guide to rooting without losing your data! I do have a question. As you've probably heard, there are a few updates coming soon and if they are like they were on the N1, they always broke root. So getting root back was tricky unless I "unrooted" before applying the update. Using your method, is it easy to "unroot"? Thanks!
No problems
As for your problem, I never actually had a N1 so I don't exactly know why that would happen. So far from the 2 updates available to NS owners it seems like the OTA update does break root but it appears to be the same to get it back again. Can someone confirm this? I haven't been through an update with my root yet.
As for unrooting, if you haven't unlocked the bootloader (so you have followed the new part 2) I think it is just a case of finding a stock image (I think there's a GRH78 one around here somewhere) and booting into Clockwork Recovery and flashing it. That should remove root and then also give you a notice to install the GRH78C OTA update so you get the latest version.
I think that is what you meant? If you did unlock the bootloader (using the original part 2) then I think you just have to follow the same steps as I mentioned just then but afterwards go back into the bootloader interface and run 'fastboot oem lock' and it should be right.
Sent from my Nexus S using XDA App
Question on Part 2- step 1.
Code:
# We now need to install PDAnet on our PC so that Windows can see our Nexus S when we are using the Command Prompt. Install PDAnet from here, select Samsung when asked about the Manufacturer, allow the driver to be installed (because the driver is unverified, don’t worry about this!). Follow along with any other instructions. You should be set now.
Why above step is required if one already installed USB Driver for Nexus S and "ADB devices" command can find the device ?
On Allgamer thread didnt ask to repeat installing USB driver ?
What purpose for the pdanet driver ?
I dont want to put redundant drivers into my system which may interfere each other during flashing process.
hmanxx said:
Why above step is required if one already installed USB Driver for Nexus S and "ADB devices" command can find the device ?
On Allgamer thread didnt ask to repeat installing USB driver ?
What purpose for the pdanet driver ?
I dont want to put redundant drivers into my system which may interfere each other during flashing process.
Click to expand...
Click to collapse
When I tried to use the fastboot command with my Nexus S connected, it would hang and not do anything, despite leaving it for about 5 minutes. I searched online, and found the PDAnet solution, so I don't know what the difference is exactly. All I found the Google SDK USB drivers to do is enable you to see your device in Device Manager, however you could try it without the PDAnet drivers, and let me know what happens!
Thanks
Thanks for the prompt reply.. I tried out the google driver..it doesnt work under fastboot. I eventually get the fastboot enabled driver..that could explain why the pdanet driver required.
After i installed the fastboot enabled driver, i could test the connectivity under fastboot with "fastboot devices"
thanks going to try out rooting..i just want simple root access..without wiping data is a ++ ..
I managed to run fastboot boot recovery.img...going into clockwork menu..apply the superuser.zip.(for froyo version)..till completion..no word of failure..
However after rebooting, su and SuperUser.apk are not installed.( I used adb to check the system/app and system/bin folder.
Edit- manage to root properly after system mounting .
Just a note..to properly complete the rooting, one need to apply mounting then mount system before applying the Superuser.zip install from sdcard.
Prior to step 11, you may want to add the following steps for folks having problem to get the superuser.zip to install properly.
Originally Posted by droidmage
So all you guys who are having trouble getting root inside the rom, When your in recovery before you flash the superuser.zip file select -- mounts and storage -- then --mount /system -- then flash the .zip file and reboot
Click to expand...
Click to collapse
Thanks for the extra bit of info, I will attempt to add that in when I get a bit more time on my hands. when I did it it seemed to work fine so thanks for discovering that!
Enjoy your rooted phone
Sent from my Nexus S using XDA App
PLEASE MAKE SURE YOU READ EACH STEP IN ITS ENTIRETY BEFORE DOING IT.
Table of Contents:
--1.0-Installing ADB
----1.1 Downloading the SDK
----1.2 Installing and Extracting the SDK
----1.3 Installing the Necessary USB Drivers
----1.4 Loading up ADB and Detecting Devices
--2.0 Installing GAPPS, The Newest Vending.APK (Market) or any APK for that matter.
----2.1 Installing the newest Vending APK (A.K.A Market Place)
----2.2 Installing the latest Google Applications (GAPPS)
--3.0 Help
Click to expand...
Click to collapse
Hey guys, I have noticed quite a few people have been having some problems with installing ADB and Google Applications on their newly loaded ROMs that don't have the GAPPS pre-installed. Well I am going to make this post to try and help some of those that are having a little bit of trouble. So please bare with me, as this is my first "Tutorial" post here at XDA. If you see any errors with this tutorial please let me know so I can make the appropriate changes ^_^
STEP ONE: Installing ADB
First thing is first, the method in which I will be showing you how to install GAPPS will be using ADB. If you don't know what Android Debug Bridge (adb) is it is simply a versatile tool lets you manage the state of your Android device. If you already know what ADB is and already have it installed feel free to skip to step 2.
-The Prerequisites for ADB-
1.1 Downloading the SDK
In order to gain access to using the ADB tool you need to first download the android SDK.
If you do NOT plan on developing any software for the AOSP you can skip to step 1.3 and download and install IOMonsters Easy ADB USB Driver installation. It contains a STRIPPED down version of the SDK which include the necessary components for using ADB. However, if you want to be on the safe side and download the whole sdk keep reading
The newest SDK can be found here:
http://developer.android.com/sdk/index.html
Click to expand...
Click to collapse
1.2 Installing and Extracting the SDK
For you windows users out there after you have downloaded the SDK for windows (preferably the .EXE) you are going to want to change the installation location to "C:\android-sdk-windows" or the paths you need to enter below will be different.
Now, once you have verified that the C:\android-sdk-windows folder exists you need to run the SDK Manager.exe - If you have any trouble with the SDK Manager downloading files try clicking Settings and choose "Force https:// sources to be fetched"
1.3 Installing the Necessary USB Drivers
NOTE: If you plan on NEVER using ADB over USB you can install the WirelessADB widget Go to market, and search for ADB Wireless. Install the app and run it.
Now that you have the SDK downloaded and extracted it is time to Patch the USB Driver files. Thank GOD for IOMonsters Easy USB (DRIVER ONLY) Pack. To use this tool you will need to download it. To do so you can choose from the following links:
http://legacyschool.us.to/nookdev/nook-usb-installer.rar
http://r00tyou.com/android/tools/nook_usb_driver.zip
Click to expand...
Click to collapse
I have noticed that for some people simply executing the "install.exe" from the USB drivers folder does not work. For me I had to run the install.exe and when that was finished I ran the "DPInst64.exe" NOTE: THE ONLY REASON I RAN THE DPInst64.exe WAS BECAUSE I AM USING A 64 BIT OPERATING SYSTEM. IF YOU ARE RUNNING A 32 BIT OPERATING SYSTEM PLEASE USE "DPInst.exe"
For those of you who do NOT want to download the ENTIRE Android SDK please refer to IOMonsters thread about installing and using the Easy ADB Drivers and SDK Tool:
http://forum.xda-developers.com/showthread.php?t=910008
Click to expand...
Click to collapse
1.4 Loading up ADB and Detecting Devices
Now that you have ADB up and running, and your computer is recognizing your nook through USB (or ADBWireless) it is time to load up the ADB tool and see if we can get your computer to find your device. To do so, please make sure your device is plugged into the computer via the proper USB cable. After that you are going to need to open the command prompt. To do so, click start and run, or for windows vista and up you click start and in the search bar type "cmd" and hit enter.
Once the windows console is opened you are going to need to type:
cd C:\android-sdk-windows\platform-tools
Click to expand...
Click to collapse
(assuming you installed the android-sdk in the root of C: - If not just replace it with the path of your sdk folder)
After you have successfully changed to the platform-tools directory proceed by issuing the following command:
adb devices
Click to expand...
Click to collapse
If you see the following output you are in good shape:
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
[Your device is listed here]
Click to expand...
Click to collapse
If not, please make sure you have your device plugged in, and the USB Drivers are functioning. If you are still at a loss at this step, feel free to PM me and I will assist you the best I can.
2.0 Installing GAPPS, The Newest Vending.APK (Market) or any APK for that matter.
This process of installing can be used for any APK you have on your computer and you want pushed over to your device.
2.1 Installing the newest Vending APK (A.K.A Market Place)
If all you want is the market, you can download the newest market APK from my webserver.
http://www.r00tyou.com/android/tools/Vending(new).apk
Click to expand...
Click to collapse
To push it to the device simple connect the device to your computer using ADB and type the following in the console:
adb devices
adb install \path\to\the\downloaded\apk\Vending(new).apk
Click to expand...
Click to collapse
Wait for it to successfully transfer over and install.
Viola, you have the newest market APK.
2.2 Installing the latest Google Applications (GAPPS)
For those of you who want the newest GAPPS, you can download the file from the cyanogen website and push over the whole gapps bundle.
To do this, simply download the latest GAPPS from here:
http://wiki.cyanogenmod.com/index.php?title=Latest_Version#Google_Apps
Click to expand...
Click to collapse
Again, using ADB type the following commands:
adb shell mount -o remount,rw /dev/block/mmcblk0p5 /system
adb push [the path to your SDK tools folder]\system system/
adb reboot
Click to expand...
Click to collapse
The console will show the progress of what apps are being transferred over and installed. Once it is done rebooting it will prompt you for logging in to your Google account to setup your device. You can simply skip this (Tapping in each corner of the screen starting from the top left going clockwise) or you can proceed with the setup process.
Hope that helps
3.0 Help
If you have encountered an error while following this tutorial PLEASE PM me and I will list some common errors/problems here and make the necessary changes to this tutorial.
Problems/Solutions:
DISCLAIMER: I AM IN NO WAY RESPONSIBLE FOR ANYTHING THAT HAPPENS AS A RESULT OF FOLLOWING THESE INSTRUCTIONS. I ASSUME THAT EVERYONE READING THIS HAS SOME SORT OF KNOWLEDGE WITH HANDLING THIS DELICATE PROCESS.
will be looking this over later.
Thank you
Your welcome Please post some feed back and anything you run into while following the steps ^_^
Reneg4d3 said:
2.2 Installing the latest Google Applications (GAPPS)
For those of you who want the newest GAPPS, you can download the file from the cyanogen website and push over the whole gapps bundle.
To do this, simply download the latest GAPPS from here:
http://wiki.cyanogenmod.com/index.ph...on#Google_Apps
Again, using ADB type the following commands:
Code:
adb shell mount -o remount,rw /dev/block/mmcblk0p5 /system
adb push [the path to your SDK tools folder]\system system/
adb reboot
The console will show the progress of what apps are being transferred over and installed. Once it is done rebooting it will prompt you for logging in to your Google account to setup your device. You can simply skip this (Tapping in each corner of the screen starting from the top left going clockwise) or you can proceed with the setup process.
Hope that helps
Click to expand...
Click to collapse
WRT the installation of latest gapps, can we use (gingerbread based) CM7 gapps with (eclair based) rooted stock?
met67 said:
WRT the installation of latest gapps, can we use (gingerbread based) CM7 gapps with (eclair based) rooted stock?
Click to expand...
Click to collapse
It might be backwards compatible, that I am not sure of. However, I tried using the eclair apps on the gingerbread ROM and it put me in a boot loop. I am not sure if that was just coincidence that I just so happened to push the gapps over or not, but when I reinstalled and pushed the gingerbread gapps over I did not get put in a boot loop, the boot loop consisted of the device booting up, it hit the screen where you tap the droid, then it would flash, and the CM7 loading screen would appear. It would continue to do this until I re-flashed the device.
Excellent post. All the steps seemed pretty straight forward. I couldn't install the vendor API, but at this point I'm thinking that something is wrong with my permission set. I'll go over the list again and see what I may have missed.
If you are stuck on anything please feel free to let me know. It is also a possibility that some of the steps are incorrect as I typed them out from memory
nookie froyo emmc
i'm not familiar with adb other than the method i rooted my evo with back in august so now i'm trying it with your guide (THANKS!!!)
after failing to install every version of vending.apk i have access to with root explorer, even putting marketupdater.apk in /system/apps.
It will open for a split second and then disappear so im giving up on the root explorer method. i attempted to adb install the version you have listed (the vending.apk single) and i get INSTALL_FAILED_ALREADY_EXISTS
so i removed the vending.apk and marketupdater.apk from /system/apps and then removed vending-1.apk from data/app (dunno how it got there but i found it and removed it). i try installing with adb again, i get INSTALL_FAILED_MISSING_SHARED_LIBRARY. did i remove an important file? i am now trying to install the gapps but am unsure exactly where i should put my gapps.zip and if i should unzip it first?
the link for the gapps you gave didnt show which version to download for nook color so i grabbed the hdpi for cm6, correct?
Edit, found my problem, i was trying to install wrong market, i grabbed the market i will link below from Here and then i adb install it and it installed
hmm, keeps FC. lemme wipe and try again
Ok, it appears I didn't compensate for a small variable when writting the tutorial. IF you want to install ONLY the new vendor.apk DO NOT push the whole GAPPS bundle over, simply download the vendor.apk from my website located here:
http://www.r00tyou.com/android/tools/Vending(new).apk
And push the Vendor(new).apk over by itself after RENAMING the old vendor.apk to something like vendor.apk.old then rename Vendor(new).apk to vendor.apk and run the installation.
If you need more help, or are still having problems feel free to send me a pm or post here.
Sent from my Droid using Tapatalk
mmmm, same FC to me, i can't restore the old market, via adb or via root explorer... eclair default rom here...
Can't the new market apk just be side loaded?
C:\Users\Kris>adb install C:\users\kris\downloads\vending(new).apk
2036 KB/s (2123059 bytes in 1.018s)
pkg: /data/local/tmp/vending(new).apk
Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]
What's this about?
thereddog said:
C:\Users\Kris>adb install C:\users\kris\downloads\vending(new).apk
2036 KB/s (2123059 bytes in 1.018s)
pkg: /data/local/tmp/vending(new).apk
Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]
What's this about?
Click to expand...
Click to collapse
Nevermind.. I just pushed gapps and got the market that way
Mariohyeah said:
mmmm, same FC to me, i can't restore the old market, via adb or via root explorer... eclair default rom here...
Click to expand...
Click to collapse
So what is the EXACT process that you are doing? And what is causing the FC? It's weird because I just retried this and I got it working :\
Does this tutorial work for DeeperBlue's HC 3.0 on microSD cards?
Hi,
Does this tutorial work if I have DeeperBlue's HC 3.0 preview v4 on a microSD card on NC? Or does it only work on internally rooted NC's? I'm encountering at the android market the error message "There are no android phones associated with this account. Please sign in with a different account". Have tried various things but not the ADB installation thing. I did download and install the android.vending_2.2.6.apk but still getting same message when trying to install something from the android market. Do I need ADB or could it be some wrong setting the "My Market Account" or "My Account"? Thanks in advance for any help!
Randy
Does this tutorial work for DeeperBlue's HC 3.0 on microSD cards?
Somehow my post repeated. Sorry.
Thank you so much for the Iomonsters! Finally after 2 days of trying it fixed my adb.
met67 said:
WRT the installation of latest gapps, can we use (gingerbread based) CM7 gapps with (eclair based) rooted stock?
Click to expand...
Click to collapse
Would like to know too as the CM7 version is not working for me on my Nook Simple Touch, will try CM6....
i root my nook touch and can't access market and have not any file managers (installed my devices);i follow steps &
i installed usb-driver but
software can't recognize device;
and this error
please help me
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
[Your device is listed here]
showed nothing
Man, I just want to say, You are awesome! Nice tutorial it worked from the first time!
If you are looking for how to get back to stock Bell, go HERE.
Disclaimer: I have not tested this on anything but my phone. This is a development section of a hacking website. Make backups. Know what you are doing.
Credits:
Brut.all for apktool
edgan for 2nd-init
designgears for aroot inspiration.
xda for being a source of info.
Requirements:
Windows 7 or Ubuntu 10.10+ (10.10 and 11.04 tested)
Java installed. (For applymods, it uses apktool)
Running Phone, not in recovery mode, etc.
Tips:
Don't factory reset please if something goes wrong, it just erases your personal settings, it doesn't write to the system partition. It also deletes your data partition, making it harder to get back to stock.
Early usb mode, turn your phone on while holding down the lower volume button, when it says fastboot, release and press volume down repeatedly until it says early usb enumeration, then press up volume. It takes 30 seconds or so before adb is ready.
Version 9:
Download it here.
What's new:
Added support for 2nd-int (WIP, tested on stock Bell only)
shsu updated to allow a super user to become a super user, acts like sh in that case.
fixed linux install_recovery.sh and uninstall_recovery.sh scripts to use shsu instead of remaining using su. Ditto with ApplyMods.sh
Boot animation now smaller, using jpegs instead of png files, no difference in appearance.
Version 8:
Download it here.
What's new:
Added full phone backup and full restore phone options to the menu. It will download a backup if there is none found.
root script more universal, tries psneuter first, then gingerbreak.
Early usb recovery updated, now uses a tmpfs for system, also mounts /sdcard and /sdcard-ext.
Deodexed French 2.1.1 files incorporated.
Misc fixes
Version 7:
What's new:
New Menu script for windows and linux in the top folder, double click Menu and enter options.
ApplyMods and other scripts updated to use /data/local/tmp/system, this means I can update system.tar.gz and add folders to be copied into system.
Early USB enumeration recovery option. (experimental but useful as is)
Fixed bugs in windows scripts. Can't get user input from bat file while in a parenthesis block apparently.
Bloat backed up to sdcard now
root and unroot scripts updated with more prompts for rebooting phone.
Version 6:
What's new:
Support for Telstra 1.4.2.
ApplyMods can create signed update.zips now, Create_update.bat updated. both using basic ready made scripts in main bin folder instead of creating them on the fly, CR LF issues.
Updated root and unroot scripts, more fool proofing, has to be Bell stock firmware (psneuter doesn't work on telstra).
Includes basic boot animation, and mod for Bell apn on telstra firmware. (Have to reset to default under access point names in settings.)
transparent status bar, yellow tinted white for text color, matches front buttons somewhat.
Version 5.1:
Features:
Works under Linux and Windows 7
Includes root and no ads scripts
Patch system for applying modifications.
What's new:
New scripts for doing mods, fixes issues with patch 9 images.
Updated root and unroot scripts, more fool proofing.
New RestoreSystemPartition script
Custom apktool for more [hopefully] bug free installations.
How to use:
Extract archive, keeping folder structure intact.
run a command prompt/terminal (There is a link to one in the windows folder)
run root.bat or root.sh from the linux or windows folders, depending on which one you are using.
Turn the phone off after that is done and turn it back on again.
The rest of the scripts shouldn't be run with psneuter affecting the phone.
run ApplyMods.bat (.sh) [OPTIONAL] This applies webtop hack and translucent status bar, translucent notification drop down, etc. Select update system.tar.gz.
run install_bell_deodex.bat or .sh
System image of stock Bell.
Mirror of above
Cheers!
Very nice! Looks good!
Will try this when I get home
Sent from my Motorola Olympus
So what is the benefit of this? Will I be able to theme my device with some of the themes that are available? Or should I play it safe and wait for a bell. Sbf to leak before I try anything and brick my phone again lol thanks in advance
EDIT: i see that you have included soft_brick.bat is it the same as this one http://forum.xda-developers.com/showthread.php?t=982859 because that one did not work for me thanks again
Sent from my MB860 using XDA Premium App
cool, i'll try this tomorrow when i don't still have a ****load to do and only 5 hours to sleep
nice to see a Bell dev here!
Also I just wanted to say major props for the crazy awesome idea of doing over-the-air download and installation. Really smart and original.
Atrices, just so you know
NFHimself said:
Hi,
(What is the plural of Atrix?)
Click to expand...
Click to collapse
Can I run this on my mac? Sorry relatively new to adb
Sent from my Motorola Olympus
you could run it on a mac, just had to edit the script a bit.
Hi,
So what is the benefit of this? Will I be able to theme my device with some of the themes that are available? Or should I play it safe and wait for a bell. Sbf to leak before I try anything and brick my phone again lol thanks in advance
Click to expand...
Click to collapse
I wouldn't try theming with ATT files, I would take what was done to them and apply them myself to the deodexed files here. There may or may not be differences that are not obvious. I am never really sure if there is any benefit to this stuff, it's fun to do, about it.
EDIT: i see that you have included soft_brick.bat is it the same as this one http://forum.xda-developers.com/showthread.php?t=982859 because that one did not work for me thanks again
Click to expand...
Click to collapse
The soft_brick.bat script is specific to the folders I am using for transferring data to /system/app and /system/framework. It tries to get root via psneuter, mounts system read write, deletes dalvik-cache files, and tries to copy the files already on the phone to the right folders. It could be that just one file caused the phone to crash mid copy and copying it again will fix things. This avoids trying to do a usb data transfer of all the files which you don't have time to do otherwise. I was also thinking that install-recovery.sh would be a good place to do this, (and then clobber it later with the init.d hack) but I couldn't find setprop and I wasn't in need enough to select a file to use as a semaphore.
Can I run this on my mac? Sorry relatively new to adb
Click to expand...
Click to collapse
It would be easier to do it all from a sh script really, and that would likely be more compatible with a Mac.
Also I just wanted to say major props for the crazy awesome idea of doing over-the-air download and installation. Really smart and original.
Click to expand...
Click to collapse
Thanks!
Cheers!
maledyris said:
Atrices, just so you know
Click to expand...
Click to collapse
Thanks, a lot, really, 10 chars..
How do I recover from a softbrick from this? Thanks.
Before anything is done, all the files are extracted to /data/local/tmp/app and /data/local/tmp/framework. If you run into problems put the phone into fastboot/early usb enumeration mode (see here) and run soft_brick.bat (.sh for linux)
Quote:
A soft brick, in this case, is when you make a bad edit to your framework files and the phone won't fully boot and starts flashing a red LED at you.
There is one catch, you only get about 1-2min to do all of this before the phone reboots on its own. If that happens, do SuperOneClick steps again and continue where you left off. Better yet, build a script to do it all for you
Power off your device
Enter Fastboot:
Hold Volume down + power until you see Fastboot at the top left
Use volume down to scroll down to "Early USB Enumeration" (only shows one item at a time, if you pass it, keep going down, up selects)
Press Volume up to select
This is the message I get when i run the batch file.
This is of course when invoking Early USB Enumeration.
Wait for the count down to finish ...
'TIMEOUT' is not recognized as an internal or external command,
operable program or batch file.
clearing Dalvik cache..
rm failed for /data/dalvik-cache/[email protected]*.dex, No such file or directory
rm failed for /data/dalvik-cache/[email protected]*.dex, No such file or director
y
rm failed for /data/dalvik-cache/[email protected]*.odex, No such file or directory
rm failed for /data/dalvik-cache/[email protected]*.odex, No such file or directo
ry
reinstalling apps
cp: cannot stat '/data/local/tmp/app/*': No such file or directory
reinstalling framework..
cp: cannot stat '/data/local/tmp/framework/*': No such file or directory
done.
The timeout message means you are running a version of windows without timeout, see adeo thread.
The lines for rm just mean there are no files to delete in the Dalvik-cache, which is normal, you should see that the second time around.
The cp lines are saying that there are no files in /data/local/tmp/app (/framework).
So, that's unusual, in order to get soft bricked using my script you would to have copied files from /data/local/tmp to /system, and if you are bricked would be unable to delete the files afterword.
sequence:
cd /system
cp /data/local/tmp/app/* app/
sync
reboot now
**brick**
So, how are the /data/local/tmp/app files being deleted?
No clue. I'm not sure what to do here? Is my phone permanently bricked? Any other way to recover from this? The one thing that could have gone wrong is I tried installing from my behind my works firewall. Maybe I could not download the proper files.
No, you are soft bricked, you only made a change (that I know of) in system files.
Were you rooted before you tried this?
If you copy the soft_brick.bat files and change the last line to be adb.exe shell ls -R /data/local/tmp, what do you get?
Basically, it sounds like to need to get the files copied over to data/local/tmp, how they are missing/inaccessible is odd. So, create a script to copy the files over bit by bit, might take a while but it should be able to be done.
EDIT:
Do this:
from command prompt:
adb.exe shell ./data/local/tmp/psneuter
wait a few seconds
type this:
adb shell ls -l -R /data/local/tmp
if psneuter fails, it isn't in /data/local/tmp, which is also odd.
I was rooted before this. So I should attempt all these commands while Early USB Enumeration right? That doesn't give me much time Lol.
OK, here's the output.
C:\bell_deodex>adb.exe shell ./data/local/tmp/psneuter
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
property service neutered.
killing adbd. (should restart in a second or two)
C:\bell_deodex>adb shell ls -l -R /data/local/tmp
/data/local/tmp:
-rwxr-xr-x root root 585731 2011-01-09 02:02 psneuter
-rw-r--r-- mot_tcmd mot_tcmd 4 2011-03-30 21:00 ap_tcmd.pid
C:\bell_deodex>^A
And sorry to be a pain. How would I create the script? What are the files that need to be copied? Are they included in your script?
Currently Beta:
THIS IS UNTESTED. I don't have my Atrix anymore, so I need volunteers to test this for me. Ideally, whoever can test this will have access to a PC to reflash the SBF. If you are willing to do so, please run the beforedebug and afterdebug versions and PM me the output
Some Notes:
- As this is Ririal's script translated to bash (see here: http://forum.xda-developers.com/showthread.php?t=1016060), this shouldn't work on Bell Atricies
- Since RSDLite is a windows only program, it is not possible to flash the SBF back to 1.2.6 on a Mac as far as I know. In other words if you've upgraded already, you're out of luck until you can find a PC to flash back to 1.2.6
PS: Since the method I used to turn the scripts to executables last time caused some PATH issues, I've decided to leave this as .sh files
Instructions:
1) Download the zip and decompress it to the Desktop
2) Make sure you're Atrix is hooked up w/ ADB debugging enabled
3) open up a terminal (What follows will be instructions to run)
cd ~/Desktop/aRootMacV2
./beforedebug.sh
4) Run the update on your phone( Settings -> About phone -> System updates)
5) Back to the terminal
./afterdebug.sh
6) Make sure to allow the SU request on your phone when prompted
Once this has been tested to make sure it's working correctly I will update this thread with more thorough instructions. In the mean time if you don't have a PC, make sure not to update.
Download: http://www.mediafire.com/?djxt3d8j519yk9m
Thanks for this. Ill try to get a pc so I can downgrade and test this.
Sent from my MB860 using XDA Premium App
I get this when trying to run beforedebug.sh
new-host-5:aRootMacV2 AJ$ /Users/AJ/Desktop/aRootMacV2/beforedebug.sh
-bash: /Users/AJ/Desktop/aRootMacV2/beforedebug.sh: /bin/bash^M: bad interpreter
EvilEvo said:
I get this when trying to run beforedebug.sh
new-host-5:aRootMacV2 AJ$ /Users/AJ/Desktop/aRootMacV2/beforedebug.sh
-bash: /Users/AJ/Desktop/aRootMacV2/beforedebug.sh: /bin/bash^M: bad interpreter
Click to expand...
Click to collapse
the "bad interpreter" message is caused by ^M (Windoze carriage returns) being embedded in the script file. If you do this
Code:
cat beforedebug.sh | tr -d '\r' > beforedebug.sh.new
cp beforedebug.sh.new beforedebug.sh
that should do the trick.
At the risk of jacking phoneixx's thread, I had done something similar for Mac based on Ririal's GladRoot and DesignGears aRoot.
There actually is an SBF flasher for Linux and Mac found on OPTICALDELUSION's blog.
I had originally posted this on AndroidCentral but since XDA is the site of record then I guess it should go here too
(I tried to link to the OPTICALDELUSION blog and AndroidCentral article but the XDA spam filter won't let me post a link to an outside site until I have 8 more posts, lol. I may make some more posts elsewhere and edit this post to include the proper links )
_____________
Hello, all of you frustrated Mac users out there!
This method is tested on my MacBook Pro (10.6.6)
Linux users should be able to use this if they replace the copy of adb that is in the zip file with the appropriate executable from Linux version of the SDK. If you know enough to run Linux then you can do that on your own
Warning -- AT&T Atrix only! No Bell!
So you're on 1.5.7 -- let's root it!
Part A -- Revert software back to 1.26
1. Download this file and unzip it (Deposit Files)
2. Make sure your phone is FULLY CHARGED
3. Turn off your phone
4. Remove your SIM card and SD card if you have one
5. Turn your phone ON and hold the Volume UP button
6. It will say “Starting RSD protocol support” at the top of the boot screen
7. Connect your phone to the computer via USB
8. Run the downgrade.sh script. This will reflash your phone to 1.26 so that we can gain root access.
9. it can take up to 5 minutes to flash depending on your computer speed. My MacBook Pro takes just under 4 minutes. If you get any errors that look something like
>> uploading RDL03: 0.0%usb_bulk_write -5
>> uploading RDL03: failed at 00000000/00300000
!! failed
>> rebooting
usb_bulk_write -104
Don't get nervous! That happens occasionally. Just run the script again.
10. Phone will reboot and it takes longer than usual to come up
11. disconnect USB and power down.
12. Put your SIM and SD cards back in
13. Power up and verify that you are running 1.2.6 in Settings -> About Phone. You'll have to reenter your Motoblur account info.
Part B -- Root it!
14. Enable USB debugging (Settings -> Applications -> Development).
15. Connect your phone and set USB Connection to 'None'.
16. cd to the aRoot directory and run aRoot.sh and follow the on-screen directions
If you see this:
…
Getting temporary root access...
mmap() failed. Operation not permitted
…
then the rooting operation failed. Try running the aRoot.sh script again. If it fails manually run this:
./adb kill-server
If it keeps failing you may not have flashed back to 1.26 successfully. Start again.
17. Verify that there are no errors before updating.
18. Go to Settings -> About phone -> System updates
19. Follow the on-screen instructions. First download the update (you will need a Wi-Fi connection for this), then it will prompt you to install.
20. The update will reboot the device and install itself. If this part fails it's because you are not on stock 1.2.6 firmware. Start over and read the directions.
21. When it boots back up, verify USB debugging is still on. Some users report that disabling and re-enabling USB debugging solves a few issues with the script detecting your device (Settings -> Applications -> Development).
22. Run afterupdate.sh
23. Make sure you allow the superuser request on your phone or it WILL fail.
24. All done! Enjoy your rooted Atrix on 4.1.57!
thanks to
OpticalDelusion (OPTICALDELUSION)
DesignGears([SCRIPT] aRoot for Atrix 4G [ root - init.d - sideloading - tethering ] - xda-developers)
Ririal ([SCRIPT] GladRoot v4 (Bell 0.37.4, AT&T 1.26/1.52/1.57 Supported) - xda-developers)
Kennethpenn ([GUIDE] Flash SBF to Motorola Atrix 4G - xda-developers)
On GNU/Linux, I get mixed results with a HTC One and mtpfs and the like. I followed that wiki page: URL wiki.gentoo.org/wiki/MTP , and updated it at the same time... The whole thing is eplained here: URL forums.gentoo.org/viewtopic-t-988160-highlight-.html
It is my first Android phone, so I am sure of nothing at that time. To summarize, when mounting it with plain mtpfs, I get 2 main directories in the mount point, "/media/HTC/Internal memory" and /media/HTC/Playlists", and some directories which have files in them look empty. After more try and retry, it look like when it is a directory along with files, I can see both the directory(ies) and the files, but as soon it is only files, I cannot see them.
But other implementation "seam" to work fine. As example, with simple-mtpfs, I get the whole phone hierarchy directly at the mount point, and all the files are here. So I use them.
I succeded to unlook it. But before to try to put new stuffs in it like ROMs and Kernels, I want to try to make a backup. I read tons of threads, but more I read more I am lost for now. So, a simple question. I get my phone mounted in ~/HTC. I coppied all the files from ~/HTC to ~/BacktupHTC. If my phone let me to copy them back into the phone, will it be a reliable way to restore the complete phone?
I didn't try at that time, I prefer to be careful and ask before. It look like the file hierarchy I get is some kind of emulation of the real file hierarchy of the phone.
I also get adb to work:
Code:
#
adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
HT36WW906579 device
Code:
#
adb backup -apk -shared -all -system -f backup20140417.ab
Now unlock your device and confirm the backup operation.
This solution will not back up and restore contact, SMS or calendar information, according to what is on https android.stackexchange.com/questions/28296/full-backup-of-non-rooted-devices
Is it some Linux application I can use to browse the content of the ab file I get with this?
But I have one more question. As it is possible to mount the phone via simple-mtpfs, it must be possible in theory to use classical backup tools like rsync. Is it possible or not?
If I try and that fail, what is the risk?
Well, I get rsync to work, but it look like, without to install a Recovery, it is not possible to make a full backup. I get the same files with rsync than with adb or simple-mtpfs. So next step for me will be to install a new Recovery.
I am done with the installation of the Recovery. I made 2 backups and installed my first ROM, the MaximusHD.
It work great. :good:
Now, I could begin to write an Android on GUN/Linux guide for complete Android dummies.