Busybox - Motorola Droid X2

My DX2 has been rooted using the Motorola One Click Root. Superuser is installed. Is busybox also installed during the root process?
I was reading something or other the other day about some customization that I was thinking of doing, but it stated that I should have busybox installed. So I didn't move forward with whatever it was doing because I wasn't sure busybox was installed on my phone during the root process.
Related...
What does busybox do or what is it used for?

Busybox is basically a pared down version of a bunch of common *nix utilities in one download. It's used so that you can easily install the command line functionality you need for scripts and applications without needing to manage and maintain a bunch of different utilities that have extraneous capabilities.

Related

[Q] Am I Root?

I installed Z4 mod and ran it and it says my g-tab is rooted. I have read that custom ROMS are pre-rooted. In my limited linux experience - being root gives you total control over the machine. I ran Terminal Emulator and cd / to get me to the top of the file structure. I tried to mkdir test and I was denied because the file system is read only. Next I went into the system folder because a lot of stuff in there looks familiar. I again tried mkdir test and was denied because the file system is read only. It would seem that to be root I would need a password and Z4 didn't offer to give me one or let me set it. Thinking further, I wonder if the file system is mounted for read only and that is why I can't create a new directory. When I am running the rom (Vegan) I can write there (understanding that I am writing to the sdcard that is mounted - presumably with RW access. So, what is all this rooting talk about then? What is the purpose of being root if you still do not have access to the file system?
You need Superuser.apk, as well. Think of Superuser as similar to Windows UAC, and rooting as making yourself an administrator. Even though you have root (admin) access, UAC (Supeuser.apk) still needs to let you through.
You also need "root aware" apps. Perfect example is Titanium Backup and that's usually my "litmus test" for verifying if I really have root or not on a device.
yup, in my limited rooting experience (droid1 and gtablet), after the process, there was always a new icon in the app tray entitled "superuser". i didnt have to install it separately, it showed up after the rooting process. if you don't have the superuser app, im betting the root process was unsuccessful.
my memory tells me i had some problems with z4root rooting my tablet, and i had to do it a few times before it actually worked. that was back in december tho, so i dont know if the current version of z4 is different than the one i used, and if so, if kinks were worked out...
so yeah, i probably helped none.
I always though z4root and Superuser were kind of a package deal.
I use them on my Cowon D3, as Cowon completely locks down their recovery process. boo to that.
rodzero,
With z4root you install it first. Then, you install a file manager program like "Root
Explorer" and when it comes up you click to "Allow" it. After that, you can go in
through Root Explorer and create and change R/O to R/W as needed. Same same
with Titanium Backup, once you have "allowed" it you can do what you need
to with the program.
Rev
More Investigation.
Thanks for the fast responses! I do have Superuser installed and it pops up from time to time when an app wants su access. Using terminal emulator, I worked my way into and what do I find but su! I ran su and got was granted su rights in the terminal. I felt pretty smug so I headed into the etc folder thinking I would make a simple change to the hosts file just to see if I could do it. I'm used to using nano in Ubuntu but no nano here. I tried vi (which I really don't know how to use) and I got some strange display but I don't think it was an editor. So, for the sake of closing the loop - if I wanted to edit the hosts file and add a new host - how would I do it. The Terminal Emulator now seems to be in the list to be granted su whenever I type it in. I know how to move around the file system. What kind of text editor would I invoke to actually alter the file? OK.... I went and downloaded TED and worked my way back to the hosts file, added a line but TED doesn't have su rights to save the file. So it looks like su exists but I don't see how to run an app in su mode except for terminal where I can invoke it by a text command. What's the missing piece to get TED to ask for su access?
Just a guess, but TED need to ask for elevation of privileges. It's probably an app issue.

[Q] what does rooting actually do ?

hi. i can't believe i'm the first person to ask this but i've searched as best i can through these forums, and on google, and cannot find a definitive answer. there are lots of pages giving high level descriptions of rooting a phone like "gives admin access", "allows access to the root filesystem", etc. but, when you root a phone, what actually happens ? does it simply make the "su" binary available so that apps can call it to access the root user ? eg. i've got a samsung galaxy s2, if i install an insecure kernel, then add su to /system/xbin, and then reinstall a stock kernel, is that technically a rooted phone ? this is actually what i did on my phone, although i installed superuser and busybox from the market after adding su. i am aware that there are various threads in the sgs2 forums on how to root, i'm just using my phone as an example, i'm just trying to understand generically what is meant when someone says a phone has been rooted. cheers.
Full control over your system
Ability to alter system files. You can replace many parts of the "Android Core" with this including:
Themes
Core apps (maps, calendar, clock etc)
Recovery image
Bootloader
Toolbox (linux binary that lets you execute simple linux commands like "ls") can be replaced with Busybox (slightly better option)
Boot images
Add linux binaries
Run special apps that need more control over the system
SuperUser (lets you approve or deny the use of root access to any program)
Task Manager For Root (Lets you kill apps that you otherwise could not kill)
Tether apps (like the one found at [android-wifi-tether.googlecode.com])
<there are more but I cannot think of any right now>
Backup your system
You can make a folder on your sdcard and backup all of your .apk files to your sdcard (helps if an author decides to "upgrade" you to a version that requires you to pay to use the version you just had)
Relocate your (browser/maps/market) cache to your /sdcard
Relocate your installed applications to your /sdcard
Reboot your phone from the terminal app easily (su <enter> reboot <enter>)
Copied and pasted from google... it is your friend.
thanks for the response however, i'm trying to understand what actually changes on the phone when you root it, rather than simply the benefits of rooting a phone.
Carrot Cruncher said:
thanks for the response however, i'm trying to understand what actually changes on the phone when you root it, rather than simply the benefits of rooting a phone.
Click to expand...
Click to collapse
Unrooted phone is like logging on as user in a computer. By rooting you have "administrative" rights, just like using sudo command in Ubuntu. Some binaries which are important in gaining administrative rights are installed in the phone.
sent from my nokia 3210
If you come from Windows, you're familiar with the Administrator account. A user that can do everything on the system, as opposed to other users than only have limited privileges. In Linux, that account is called "root". That's all there is to it. It's a user that can do everything on the system.
@Panos_dm: Actually, it's *not* like using sudo. Sudo gives elevated privileges to your existing user account, whereas "root" is a whole separate account.
Nope, sudo actually switches users
i'm a linux user and have been a linux admin in the past so understand the difference between su and sudo. sorry to sound pedantic but i'm still not clear on exactly what happens when you root a phone, i.e. what exactly happens during the rooting process ?
It opens your phone to a whole new array of possibilities.
Sent from my HTC Sensation 4G using xda premium
Carrot Cruncher said:
but i'm still not clear on exactly what happens when you root a phone, i.e. what exactly happens during the rooting process ?
Click to expand...
Click to collapse
In a gist? The "su" binary and the Superuser.apk app get installed. Sometimes doing so requires exploiting a vulnerability via a trigger. Rageagainstthecage is a common trigger. I once had a link that explained what exactly rageagainstthecage does, but I don't have it anymore.
If you really want to know all the details, here's the script I used to root my Defy: http://pastebin.com/G3m9v4FQ
Hmm, I see the script contains a link to the explanation of what rageagainstthecage does. Cool.
many thanks for confirming my understanding of the process.

bash for Android?

Hey
There are a few threads about this but some are dedicated towards one device or updated. I'm looking for a way to install bash (along side with sh) to have a bit more flexability. Is there a "generic" updated version for all Andoid devices?
Thanks!
Noone has any idea or information?
afaik Android had both of them out of the box, as it's based on Linux.
Just install the "Terminal Emulator" and type "bash" or "sh" in to check.
Besides that sh is also available in "busybox".
Sent from my GT-I9100 using XDA
Root your device or install a pre-rooted ROM.
Rooting installs Superuser.apk to /system/app; su to system/bin (or xbin, depends) and busybox to system/bin (or xbin, depends). Busybox contains common linux utilities, including bash and Bourne (sh).
Fine, but if he doesn't want to root? Warranty maybe?
sh is in busybox, but bash isn't.
As far as I am aware, at least bash is included in Android from the beginning.
I have CyanogenMod and therefore busybox so I can't tell.
But the OP could just install the fret terminal emulator and check it.
Sent from my GT-I9100 using XDA
I'm using terminal IDE, available on market. Lots of stuff included, has bash 4.2.0. I like the fact that it runs 4 terminal sessions, so I can bounce (errr, swipe) back & forth.
No rooting required.

[Q] Howto upgrade the busybox properly ??

Hi,
I tried to upgrade the busybox with different manner (busybox, busybox installer, manual installation from xda), but no one works properly.
Each time i broke the original Archos busibox, so i lose the adb shell.
Can someone explain to me the good way to upgrade the busybox?
Thanks.
SirOch
Hi,
Nobody to explain a clean upgrade of the busybox?
cheers
SirOch said:
Hi,
Nobody to explain a clean upgrade of the busybox?
cheers
Click to expand...
Click to collapse
Google? also XDA has a great search feature have you tried that? :silly: Any particular reason why you want/need to upgrade busybox?
Hi,
As i said, i tried the different busybox installers and the installation was ok, but i each time, i lost the shell from adb.
That's just my problem.
So i just want to understand why the upgrade of the busybox broke the original archos busybox?
Moreover some application need to have other busybox installed.
Regards.
David
SirOch said:
Hi,
As i said, i tried the different busybox installers and the installation was ok, but i each time, i lost the shell from adb.
That's just my problem.
So i just want to understand why the upgrade of the busybox broke the original archos busybox?
Moreover some application need to have other busybox installed.
Regards.
David
Click to expand...
Click to collapse
Ahhh right, the quest for knowledge Your problem is as much to do with adb ( /sbin/adbd to be precise ) as it is to do with busybox, firstly you've probably wiped out the symlinks in /bin, especially /bin/sh which is the location that adbd on archos looks to run the when you do adb shell from your desktop. This is not the default location which just about every other android OEM adheares ,that is /system/bin/sh.
If you are going to upgrade the archos busybox be aware that a large number of symlinks back to /bin/busybox exist not only in /bin but also in /usr/bin /usr/sbin
Archos for reasons I still haven't fathomed, really went to town on restructuring and customized Android on the platform level.
A little tip if you've got more question, to save you bumping threads , which really does upset some folks round here... you'll probably get more more if you add more details, such as error messages etc. Saying " i lost the shell from adb." doesn't really help anyone who might be able to offer assistance. There about 10 different ways adb can fail to connect, Did the device disappear from the list or report as offline. or even come up with the message "- exec '/bin/sh' failed: No such file or directory (2) -".??
Hopefully that's helped.
Hi SirOrch,
i don't know why you loose your adb shell, but concerning busybox... the things on Archos tablets are like this:
Basically on a non rooted device we got a squashfs image mounted read only.
This image contains the stock busybox compiled by Archos (sharing system's uclibc) with limited functionality,
but containing enough tools to handle the daily job.
The path to this busybox is "hard-coded" as well. It's location is /bin which is the second entry in the path environment.
You might check that by typing printenv in your console.
The first entry should be /data/local/bin on your device.
So if you like to replace stock busybox with an advanced one, you should make sure that it will be installed to /data/local/bin.
Often there's no need to use all this apk Android Market stuff to get a proper busybox installation.
Sometimes it's little better to really understand what's happening under the hood.
Most busybox app's are statically linked, because with a static binary you don't have to take care of the device's libc or uclibc.
So you might easily extract on of the apk's or get one from xda-developers.
There are many floating around in the end.
If got one push it to /data/local/bin with adb.
You might need softlinks in this directory as well. This could be done by hand as well.
Anyway if you are a lazy person, who doesn't care about what's happening, go to the market install busybox.
Then check at /data/local/bin if it is there.
If it got installed elsewhere, some commands will still use stock busybox.
Extended commands might then use the installed one.
So check it out...
EDIT:
... aaaargh again simultaneous posting.
scholbert
Hi gentlemen,
Thanks for your help and sorry to forget to give you the error message i had:
the message was : - exec '/bin/sh' failed: No such file or directory (2) -
After investigation i found my mistake:
- In manual mode, i forget to change the ownership of busybox to root in /bin.
- when i tried to use any application from the market, the busybox was well updated in /system/xbin but the application also delete the busybox in /bin and don't change the symlinks in /bin. That's explain why adb shell won't work.
Regards.
SirOch

[Q] Help rooting omap5 running 4.2.2

As title, I'm trying to root a development board running 4.2.2. I do have root access and put busybox and su, but my problem is that whenever I start apps that require root access, superuser never gives me prompt asking whether root access is allow (yes, my setting in Superuser is to prompt for every apps that require root), as a result, the app would not run reporting that my device is not rooted. As an example, when I trying to run droidvncserver, it would tell me "could not start server", but if I start it as root on a shell, it would run and start server, this leads me to think that droidvncserver is not requesting root access or Superuser does not know that droidvncserver needs root access. I'm pretty sure I'm missing something in my system, but what is it. All this works on a rooted phone, but not on the development board. I've read through some of the rooting script for other phones, mostly include remounting /system as rw and put busybox and su onto the system, and that's what I've done on the board, but there's just no connection between those root-require apps and superuser. Anyone knows what I'm doing wrong/missing?

Categories

Resources