Saturday, February 4, 2012

Got root?

If you're not familiar with Unix, root is the equivalent of the windows administrator account.  If you actually are familiar with Unix, please forgive me for putting it that way :-P

What does that have to do with your phone?  Good question.  Android is based on Linux.  It's a multiuser system, with restricted user accounts and an unrestricted root account.  All applications are "sandboxed" through their user account's privileges, which roughly translates as "use the device, don't mess with it".  And that's good, as you don't want the latest Angry Bird app you installed to wipe your contact data or format your SD card.

But if you're a power user, you may want to do more than just install apps that will fill the screen and play sounds.  Maybe you want to install apps that actually require root privileges to run, like DroidWall or Titanium Backup.  Maybe you want to customize your system beyond what's available in the settings menu, like changing the splash screen, or installing a whole different ROM (that's a copy of the whole OS, that replaces the one provided by your device manufacturer). Or maybe, just being the power user that you are, you want to satisfy your curiosity, look inside those forbidden directories and tune things to your liking.  That device is yours, isn't it?  Why would you be prevented to do as you please with it?

Acquiring root privilege on your android device, or "rooting" it, can be a more or less challenging process depending on your device manufacturer, model, and firmware version.  If you're lucky, it's as simple as downloading an application to your phone, running it and pressing the magic button.  Or you may have to reboot into download mode, replace the kernel (that's the heart of the OS), put your device in debug mode and use PC software to enable the root account through it's USB connection.  And if you're really unlucky, the manufacturer just provided a firmware upgrade that breaks all know rooting methods.  Then you can either wait for some kind hacker to provide a new rooting method for it, or find a way to downgrade to a previous "unsecured" version.

What's the end result?  A new program, called su (for Switch User) controlled by a "SuperUser" application.  When an app wants to break free of it's restriction, it calls su and you'll be prompted by SuperUser to allow or deny access.

From that point on, you're free.  You can mess with your system or replace it altogether.  If you're familar with the Unix shell, you can login and play around.  I strongly advise that your first step be doing a complete backup, using an application such as ROM Manager (if your device's supported).  Then install a "normal" backup app, like Titanium Backup, and start backing up your configurations and applications data.  That way, if things turn for the worst, you'll be able to get back on your feets without pain.  I speak from personal experience here...

Want to know more? Just ask below

1 comment: