What's new
DroidForums.net | Android Forum & News

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

[HACKS] Root Droid 1 - regardless of OS version

just as i copied the update file over to my sd card i got an ota for FRG22D ... it said stuff about enabling flash download from market and misc security improvements, so i figured to install it. i have flash anyway.
so the phone is now FRG22D, can i still proceed with rooting ?
What part of your situation is not covered by the OP of this topic that is causing you to doubt whether or not the procedure is appropriate to your situation?

as i mentioned before i have never rooted. i am unsure of what the file transfer and flash process is doing to the phone

because asking that question seems to have displaced you somewhat, i will not trouble you again.
 
just as i copied the update file over to my sd card i got an ota for FRG22D ... it said stuff about enabling flash download from market and misc security improvements, so i figured to install it. i have flash anyway.
so the phone is now FRG22D, can i still proceed with rooting ?
What part of your situation is not covered by the OP of this topic that is causing you to doubt whether or not the procedure is appropriate to your situation?

as i mentioned before i have never rooted. i am unsure of what the file transfer and flash process is doing to the phone

because asking that question seems to have displaced you somewhat, i will not trouble you again.

Not at all. Quite to the contrary. In the time that this topic has been here I've continually edited the OP to try to make it cover the questions that come up frequently. I think most folks would prefer to have the OP answer their question rather than have to wait for an answer. Thus my effort to try to understand what I could add to the OP to help better cover your cause for concern.

I will give it a shot in my next post and if you tell me that covers it, I'll edit the OP to include some additional details.
 
What part of your situation is not covered by the OP of this topic that is causing you to doubt whether or not the procedure is appropriate to your situation?
as i mentioned before i have never rooted. i am unsure of what the file transfer and flash process is doing to the phone
I will give it a shot in my next post and if you tell me that covers it, I'll edit the OP to include some additional details.
You raise a valid concern here. The OP addresses what steps to do, and how to do them, but doesn't really tell why you're doing them or what the effect is.

Let me know if this is sufficient:

A little about what you're doing and why:

I assume you know why you want to root your phone or you probably wouldn't be here to find out how to do it. This section will not cover that topic. What we will cover, briefly, is why you're doing what you're doing -- and we'll discuss the typical components of rooting an Android phone in the process. This was covered very very briefly at the top [of the OP] but will be covered slightly less briefly now.

For us, the first piece of the puzzle is the recovery partition. This is an area that contains the recovery system. The recovery system is most often used to flash updates onto the phone. Normally such an update would be provided over the air (OTA) by your carrier, and after you accept it, the (recovery system of your) phone would install it. Most "stock recoveries" (which is how we refer to the original recovery system on the phone when it is new) will only install updates that have been signed by your carrier (or another trusted entity). There are various reasons for that which we shall not cover here. If we want to apply our own update (such as an update that will "root" the phone), then we've got a problem because your carrier doesn't want you to root your phone, so they certainly are not going to sign such an update, and if it's not signed, your stock recovery won't install it. So we need to replace the recovery with one that isn't quite so picky.

That's what the first part of the procedure (the part where we use RSD Lite to flash an SBF file containing nothing but a custom recovery onto the phone) does. Some pretty talented folks have written their own modified versions of the recovery system (the recovery system is open source so they had a good place to start) that ignores the signature checking and lets you flash on pretty much whatever you want. These custom recoveries enable other features too that we are not concerned with here. It is important to understand that, in order make our process work on any version of the OS (or "build" of the operating system, e.g. FRG22D) we want to replace only the recovery partition and not disturb the kernel, etc. The SBF provided in this topic does just that. It replaces your recovery system with SPRecovery, and nothing more. SPRecovery will then allow us to flash on unsigned updates which is how we'll "get root".

To "get root" on an Android phone you really only need a single file -- "su" -- with the right permissions. The operating system however isn't going to just let you put that file on there and grant those permissions, or else what point would there be in having permissions to begin with? Fortunately for us, when we boot our custom recovery, we're not running the operating system build that's on your phone, we're running the scaled back OS build that's part of recovery. And it is configured to let us have super user rights, and also happens to have access to the /system partition on your phone (which is the one we need to add our "su" file to in order to root it).

Now, if we just added su, and nothing else, we'd be rooted. Unfortunately, so would any other app that wanted to be. Any app that new to call su to try to "get root" would succeed and every app you ever put on your phone could do anything it wants. You probably wouldn't want that. So, the smart guys that wrote su for these phones wrote another utility called Superuser.apk. This piece allows you to review and approve (or deny) any requests for root authority, and, if you choose, it remembers your selection for next time. When an app asks su for super user rights, su first checks the database to see if the app is allowed to have those rights, and if it is, then it grants them, if it is explicitly denied to that app, it denies them, and otherwise it asks you what to do (and then denies the right if you don't respond before the timeout). Those two parts in combination provide an effective root control mechanism for the phone.

The last piece of the root puzzle is "busybox". In the Linux world (upon which Android is based) a lot of the tasks one may need to do "as root" are performed by one of dozens of external command line utilities. To save space and processing power, busybox was invented. It contains the most common of those utilities all in one executable. Then "symbolic links" (aka symlinks) are created to simulate the presence of the dozens of utilities as if each separate executable was there (when its really busybox pretending to be each of them and doing all the work). Many apps that require root will not function if busybox is not installed because they rely upon it to do what they need done. Some apps like Titanium Backup can optionally install their own copy to avoid this dependency.

While not technically part of the rooting puzzle, there is also the Flash Recovery Service (FRS). This service is installed by the OTA updates and is designed to keep your recovery partition from getting corrupted. Of course to your carrier, if you install a custom recovery, that is corrupted because it's not the one they want you to have. Each time your phone boots, FRS will check your recovery partition, and if it is "corrupted" it will attempt to flash it back to stock.

The update.zip in this procedure installs su, Superuser.apk, busybox, and disables FRS so that it all stays that way after each boot.

Would that alleviate your concern up front if I added it to the OP? Of course volumes could be written about each topic, but I have actually written volumes about each topic elsewhere, and I could provide links to those as well.

Please let me know.

Thanks for the feedback!
 
Moto, thank you so much for such a clear write up. I just got my first Android phone today (A Droid 1), and had been reading and scratching my head on how/why to root, what custom ROMs were (what a ROM was period), amongst all the other many questions I had. Coming from a BB, I wasn't scared of tinkering with the phone's software, just wasn't sure how to do it.

This write up made it very easy, and not scary at all. I've already rooted, and installed Sapphire 1.1. Thanks again!!
 
worked

Great Job. One small hitch. I had the grayed out start button in RSD too. Moving the file to c:\ solved my problem (I'm running windows 7, 32-bit)

Thanks so much. :)

Hal
 
If you're struggling with RSD Lite not "seeing" your phone...

If you're struggling with RSD Lite not "seeing" your phone...

Go back to the OP and in item #3 of "things you're going to need", be sure to download the drivers in the first set of links -- the 4.6.5 drivers. As originally written it had links to Motorola's page for the 4.2.0 versions which is what is referenced in lots of guides. Well, I just rebuilt my dev workstation and for the last hour have been struggling with -- wait for it -- my RSD Lite not being able to see my phone. I was getting pretty frustrated and saying to myself "are you going to have to go post in your own topic to ask for help with this?" Finally I booted my old hard drive and noticed that the drivers I had installed were a lot newer, so I reinstalled the newer drivers and voila - popped up right away.

On my old build I was running the newer drivers from dumb-phone hacking from before I ever even had my Droid (for BitPim I think) and so I had never needed to do the step of installing the drivers that everybody else lists in their guides (and never realized mine were that much newer).

I'm going to update any other posts of mine I can find and also let the Rescue Squad guys know as well. No amount of port swapping or any other trick in this topic would make my phone recognize in RSD Lite until I put on the 4.6.5 drivers, so I'm sure this has messed someone else up as well.

Just because I can't let a post have any chance of being a reasonable size -- all other USB functions worked fine -- USB tethering, ADB, mounting SD card, etc -- it was only the RSD Lite that had a problem. The phone (when in bootloader mode) was even showing up as "Motorola Flash Interface" in the Device Manager, but RSD Lite completely ignored it.

My build is Windows XP Professional SP2 for whatever "yeah, I have the same thing" value it may have.

Hopefully this helps save someone some aggravation somewhere.
 
Last edited:
This has become better than one-click for root, as it is all-build encompassing. Anyone remember DroidRootHelper when it first came out and SPRecovery was at like 0.10.x or so and was updating every or every other day? What a nightmare that one was.

And just for kicks, it couldn't hurt to add what you wrote in post 349 to the OP. Just MHO.
 
followed steps and it rooted. busybox not there. had to do it via titanium backup
Cool. I'm pretty sure I've not seen a "no busybox" yet. Did you get an error during the update.zip? Reason I ask is the busybox is installed with this command:

Code:
assert(run_program("/system/xbin/busybox", "--install", "/system/xbin"));
Since it's done via an "assert" the installer should report "fail" if it doesn't complete successfully.

What indicated to you that busybox was missing? I know Titanium Backup always prompts you to install their copy (assuming you hit the "Problems?" button as they recommend) even if you already have busybox, and even if your copy is identical to theirs (which in this case, it is, as I install the exact same one Titanium Backup does).

[Edited to add: also, Titanium doesn't install busybox for use by anything but itself - if you truly had no busybox after the process - which is unlikely - then even after letting Titanium copy on a version for its own use, you still don't have busybox available for general use.]

Lastly, did you see my response and attempted solution to your question? I have gone ahead and added it to the OP as Teddyearp seemed to second the notion, but if there is anything that should be added, let me know.
 
Last edited:
Jeez that was simple. Quick question Does "Tethering" still work? cause when i got frg22d from Verizon and i could not tether any more a price plan showed up instead of my webpage. If i go back to frg22b will it work again?
 
Jeez that was simple. Quick question Does "Tethering" still work? cause when i got frg22d from Verizon and i could not tether any more a price plan showed up instead of my webpage. If i go back to frg22b will it work again?
Under FRG22D if you turn on tethering and don't have a tethering plan you'll get that page. If you don't get the page under FRG22B, I wonder if you could just move a single "B" file to "D" to "fix" it, or if that would just let you use it without warning, but it is red flagging Verizon that you're doing it...
 
hey, I have a moto droid 1, and it has a factory fryo2.2 installed, i wanted to root it, then update it.
i read your write up and its genius! but im kind of a newb at this so is there any videos out there to help with this? or like someone that could do it in person? i have the update zip already saved to my sd card so all i need is to root this thing.... thanks!
 
tethering works fine!

I originally used easy root to set up my 2.2 on Droid 1. I downloaded the program "wireless tether" and everything worked fine. Then I foolishly said yes to the OTA FRG22D build. It killed root and the easy root program could not restore it.
I followed your procedure a few minutes ago and have gotten root permissions back with the OTA FRG22D software. (Yeah!!) tried my tethering program and it works perfectly and no screens come up from Verizon.
I have not touched the Tethering settings under "Wireless & Network Settings" so maybe that is why mine is working.

MotoCache1 - do you have a place we can send donations for all of the time you've put in on this?
 
hey, I have a moto droid 1, and it has a factory fryo2.2 installed, i wanted to root it, then update it.
i read your write up and its genius! but im kind of a newb at this so is there any videos out there to help with this? or like someone that could do it in person? i have the update zip already saved to my sd card so all i need is to root this thing.... thanks!
Post what city you're in -- maybe there's someone here that lives near you and would be willing to show you the ropes. It's really pretty simple (despite the 3000 word instruction post), but I can appreciate your apprehension.

There are a bunch of videos on YouTube you might find helpful, but this one: [video=youtube;9udWx-KXwGY]http://www.youtube.com/watch?v=9udWx-KXwGY"](linked video)[/video] is pretty decent other than the tail end. He doesn't tell you anything that's going to hurt you, but at the end, rather than just disconnecting when it says boot your phone manually, when RSD Lite says "rebooting your phone", hold up on the dpad like you do to go into the bootloader and let the phone boot into the bootloader instead of free booting. If you miss it and the OS boots, just wait until it's up, then power down, and then boot into the bootloader -- RSD Lite will wait. Then RSD Lite will say "PASS" - which gives you a warm and fuzzy that all is right with the world.

Hope that helps.
 
Last edited:
Back
Top