What is rooting?
You may have heard about people who "root" their Android phone. This article attempts to explain what that means, and why you might want to do it.
Important note: because the process for rooting varies according to the device, this article won't explain how to root your device. For that, you'll need to search Google, or communities such as XDA forums, for information specific to your device.
What "rooting" means
Rooting refers to the process of obtaining superuser access, also known as "root" access, on the Android operating system.
What does that mean? What's "superuser access"?
Modern operating systems have a security model in which different applications can run with different levels of access to the system. For example, most regular software runs with a low level of access, unable to modify important system files or configuration. This is a good thing, because it can reduce the damage to your system that an untrusted piece of software might do. It also means that if certain software has a bug and can be "hacked", it limits the amount of damage someone can do by hacking that piece of software.
When software needs to be able to modify the most important system files and configuration, it requires "superuser" access (also known as "administrator" access on operating systems like Windows).
The thing is, on an operating system like Windows or Mac, you (the user) are given the ability to grant this "superuser" (or "administrator") access to apps when they want to modify important systems files and configuration. When you buy an Android device, you don't have this ability. The manufacturer will have decided which important system apps should be allowed superuser access, and all other apps will be prevented from having that access, without a way for you to grant it.
"Rooting" is a way to give yourself such an ability: allowing you to grant superuser access to apps.
It's called "root" because Linux based operating systems give the username "root" to a user account that has superuser privileges.
Why would you want to do this?
To put it simply, rooting allows you to run apps that modify important system files and configuration that the manufacturer probably didn't want you to be able to modify.
- Android is built on top of Linux and other open source tools that often accompany Linux. These tools have a wealth of configuration options, many of which cannot be configured using the standard settings tool included with Android. This may include tweaks to system performance and network configuration. Rooting allows you to use apps that modify this configuration.
- Root access also allows for backup and restore apps to backup and restore data that would otherwise be inaccessible to non-root backup utilities. Utilities such as Titanium Backup rely on root access to backup a more complete amount of your data.
What are the drawbacks?
- Rooting your device may invalidate its warranty. In some cases, this may mean that you cannot make warranty claims for problems related to software. Or in some cases, it may invalidate your ability to make any warranty claims at all. This will vary according to where you live and the conditions of the manufacturer warranty.
- Granting superuser access to software increases the ability for software to damage your system if something goes wrong. This may occur if the software is untrustworthy, or if it's simply buggy or vulnerable to hacking.
- Circumventing the restrictions imposed on your device by the manufacturer makes it easier to do things that tamper with the ability of Android to work correctly, and in some cases it can be difficult to reverse, requiring a higher amount of technical knowledge.
Does it allow for installing different ROMs?
Rooting your device is not directly related to the ability to install different ROMs (different or modified versions of Android). In some cases, a method for installing a custom ROM on your device might require you to first root the device, but this is not always the case.
A lot of unofficial alternative ROMs come "pre-rooted", giving superuser access as soon as the ROM is installed.