Pwn Your Phone
I've owned two different Android phones since they first were released, and I eventually rooted both of them. My Droid (original) was such a popular phone that rooting it was very simple. I used my rooted Droid until it wore out and rebooted every time I slid open the keyboard. My second Android phone, the Samsung Galaxy S2, is the phone I have right now. It actually was quite a bit more challenging to root, but in the end, I couldn't resist the lure of total control. Sadly, no amount of rooting can supply a hardware keyboard for my S2, but at least I can run whatever ROM I want on it now. Before I go into how to root an Android device, it's important to discuss why you might want to do so, or why you might not.
One of the most common questions I get via e-mail or Twitter is how to root an Android phone. As you can see by the size of the following article, that's not a question easily answered in 140 characters. So, in this article, I talk about rooting an Android device and then describe the process for installing a custom ROM. It's complex, sometimes frustrating, and it can be dangerous if you don't do your homework in advance. If that doesn't scare you off, read on.
What Is Rooting?
Rooting your phone simply means gaining access to the underlying Linux (Android) operating system with root privileges. It's basically the same thing as having sudo access to a Linux desktop. By default, your phone will give you only user-level privileges, which means you can't run programs requiring superuser access to the underlying system.
There is some confusion regarding what rooting actually gives you. If you root your phone, you'll still be running the same firmware. Your phone won't look any different, apart from a new app called "superuser", which will allow you to give certain applications elevated privileges. From a functionality standpoint, rooting your phone gives you the ability to run applications that wouldn't otherwise work, but it won't completely transform your phone like a custom ROM would do (more on that in a bit).
Rooting Your Phone, the Pros:
- Some useful apps, like backup apps, will work only with root access.
- Some apps, like Tasker, work with unrooted phones, but they do much more if your phone is rooted.
- Rooting is the first step toward installing new ROMs.
- Overclocking and underclocking are possible only with root access.
- Having a rooted phone implies some geek street cred.
Rooting Your Phone, the Cons:
- Rooting most likely will void your warranty.
- Some apps (Amazon video streaming, for example) will not work on a rooted phone.
- Rooting is the first step toward potentially bricking your device.
- Using some root-requiring apps (Wi-Fi tethering, for example) may cause fees from your wireless carrier.
I Want Root!!!
Unlike Apple's iPhone, the Android world is full of multiple vendors, multiple devices and multiple procedures for rooting. Heck, even my Samsung Galaxy S2 comes in different models for different carriers, all with slightly different ways to do things. There just isn't a single "way" to root an Android device. To add more frustration to the mix, the methods and even the feasibility of rooting often depend not only on the hardware, but also on the specific version of the Android OS installed on the hardware. For example, I upgraded my Galaxy S2 to the official AT&T version of Ice Cream Sandwich. For quite a while after that official upgrade was released, rooting wasn't possible for folks who upgraded using official channels. This means that before attempting to root your phone, it's important to research your exact model phone and the exact version of Android you're currently running.
Luckily for Android users, there is a large and active community of users for almost every device available. A quick trip to http://androidforums.com usually will turn up a thread dedicated to rooting a particular phone or tablet. Be careful with generic Google searches, because it seems there are unending blog posts and forum entries claiming to have the newest and best rooting methods. Unfortunately, those well-meaning blog posts aren't always updated when a less-dangerous or more-reliable method is developed. Sticking to sites like http://androidforums.com or http://forum.xda-developers.com is a good way to keep up on the latest developments with regard to the world of hacking and rooting.
But My Phone Looks the Same!
The superuser app is all well and good, but apart from opening up the possibility for root-requiring apps, rooting a phone doesn't change the way it looks. For that, you need a new ROM. Unfortunately, installing a custom ROM is a complex endeavor for some devices, and not all devices even support custom ROMs. What is a ROM, you ask? Basically, in the Android world, the terms "ROM" and "firmware" often are interchangeable. The actual Linux operating system with all its applications and sometimes kernel usually are packaged together in a downloadable ROM file for a particular phone or tablet. One of my favorite custom ROMs is the open-source CyanogenMod (Figure 1). Because hardware is so different across devices, it's important to get a ROM file specifically created for your exact model. This is one instance where buying a particularly popular phone is a boon, because those devices usually are supported first.
Figure 1. Even the boot screen of CyanogenMod is cool.
Rooting your phone will void your warranty and possibly cause other unforeseen problems. Once you go down the path of custom ROMs, like I discuss here, the likelihood of a bricked phone increases. A truly ruined phone or tablet is pretty uncommon anymore, but it's easy to get your device into a completely unusable state that takes hours and hours to try to undo. I'm a pretty tech-savvy guy, but getting CyanogenMod on my Galaxy S2 took several hours, and there were several times when I did something wrong and my phone was temporarily "bricked". Before you try to flash a custom ROM, make sure you understand the process!
Practical Task Scheduling Deployment
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.View Now!
|The Firebird Project's Firebird Relational Database||Jul 29, 2016|
|Stunnel Security for Oracle||Jul 28, 2016|
|SUSE LLC's SUSE Manager||Jul 21, 2016|
|My +1 Sword of Productivity||Jul 20, 2016|
|Non-Linux FOSS: Caffeine!||Jul 19, 2016|
|Murat Yener and Onur Dundar's Expert Android Studio (Wrox)||Jul 18, 2016|
- The Firebird Project's Firebird Relational Database
- Stunnel Security for Oracle
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- SUSE LLC's SUSE Manager
- Managing Linux Using Puppet
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Doing for User Space What We Did for Kernel Space
- Google's SwiftShader Released
- SuperTuxKart 0.9.2 Released
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide