.
Introducing the Samsung Galaxy Nexus root / un-root without needing to unlock your bootloader. Yep!
Note: it appears that this will only work for GNex phones running Android ICS 4.0.2--the exploit that this method utilizes does not seem to work for 4.0.4; if you use this method to gain root in 4.0.2 and wish to retain it later in 4.0.4, be sure to use a utility like my app Android Root Toolkit or OTA RootKeeper to save root in 4.0.2 so that you don't lose it when you install the 4.0.4 OTA.
I've had this posted in the VZW Galaxy Nexus root area for a little bit, but I've updated it with un-root options and support for Linux (32-bit) and Mac/OSX, so I thought I'd post it here in the GSM area too since it should work identically to the LTE version.
Download for the simple-gnex-root-unroot.zip package is located at the bottom of this post.
How to use:
Notes:
Credits / references:
simple-gnex-root-unroot.zip:
.....File size: ..........944,566 (bytes)
.....MD5 checksum: 2ebd6f0d58b26955d7b97d37fa1e0b36
Introducing the Samsung Galaxy Nexus root / un-root without needing to unlock your bootloader. Yep!
Note: it appears that this will only work for GNex phones running Android ICS 4.0.2--the exploit that this method utilizes does not seem to work for 4.0.4; if you use this method to gain root in 4.0.2 and wish to retain it later in 4.0.4, be sure to use a utility like my app Android Root Toolkit or OTA RootKeeper to save root in 4.0.2 so that you don't lose it when you install the 4.0.4 OTA.
I've had this posted in the VZW Galaxy Nexus root area for a little bit, but I've updated it with un-root options and support for Linux (32-bit) and Mac/OSX, so I thought I'd post it here in the GSM area too since it should work identically to the LTE version.
Download for the simple-gnex-root-unroot.zip package is located at the bottom of this post.
How to use:
1. Download simple-gnex-root-unroot.zip to your PC
2. Extract the contents of the above .zip file to a working folder on your PC
3. Start-up a command (Windows) or Terminal (Linux or Mac/OSX) session
4. Change to (cd) to folder (directory) location where you've extracted the simple-gnex-root-unroot.zip file's contents
5. For Windows PCs, make sure you have the proper USB adb drivers installed:
.....How to install the adb & fastboot USB drivers
6. Make sure you have USB debugging enabled on your device:
.....Settings -> Developer options -> USB debugging (checked)
7. Connect your phone to your PC via the USB cable
8. Run the desired script:
2. Extract the contents of the above .zip file to a working folder on your PC
3. Start-up a command (Windows) or Terminal (Linux or Mac/OSX) session
4. Change to (cd) to folder (directory) location where you've extracted the simple-gnex-root-unroot.zip file's contents
5. For Windows PCs, make sure you have the proper USB adb drivers installed:
.....How to install the adb & fastboot USB drivers
6. Make sure you have USB debugging enabled on your device:
.....Settings -> Developer options -> USB debugging (checked)
7. Connect your phone to your PC via the USB cable
8. Run the desired script:
- Windows:
to root:
Code:[COLOR="blue"][B]c:\temp> root-for-windows.bat[/B][/COLOR]
to un-root:
Code:[COLOR="blue"][B]c:\temp> unroot-for-windows.bat[/B][/COLOR]
- Linux (32-bit installs) / Mac (OSX):
note: there's a sudo invocation for the first adb command in the shell script; this will cause you to be prompted for entry of your administrator / root password (this is so that the adb daemon is started-up with the proper privileges to work on your Linux system); I'm not sure if this is necessary for the Mac/OSX system, so you might need to remove it from the script if needed
to root:
Code:[B][COLOR="Blue"]. ./root-unroot-for-linux-osx.sh[/COLOR][/B]
to un-root:
Code:[B][COLOR="blue"]. ./root-unroot-for-linux-osx.sh[/COLOR][/B]
Notes:
- this root exploit should work on any Linux kernel 2.6.39 and above; this means that it should currently work on both the GSM and the VZW LTE variants of the Samsung Galaxy Nexus (and indeed, several other devices running this Linux kernel; the key to using the exploit lies in using different hex values corresponding to the offset of the exit() function)
- this current root package I have assembled for you has been tested on a VZW (LTE/CDMA) Samsung Galaxy Nexus running Android 4.0.2 using both a Windows 7 and Linux 10.x PC; I believe that it should work on a Mac/OSX system, but I am unable to test that at this time
- it appears that the adb-linux binary included with this root package only works on 32-bit installs of Linux; I and another member were unable to get the adb binary to execute properly on a 64-bit install of Ubuntu 11.10 (it worked just fine on the 32-bit version)
- since this rooting package / method doesn't require you to unlock your bootloader, you don't have to risk that operation and its warranty implications; additionally, you could use an application like Titanium Backup to save your applications and their data/setup for easier recovery and re-setup later
- note that this rooting method does not allow you to install a custom recovery and therefore you will be unable to make a Nandroid backup, or install a custom ROM or theme or kernel--you would still need to unlock your bootloader to do these things
- you should also take all due precautions and care when undertaking any modifications to your phone (especially system-related apps) without having the protection of a custom recovery and a Nandroid backup; you always have the fall-back option of unlocking your bootloader and restoring back to stock, too: How to un-root (return to stock)
Credits / references:
- James Cushing's article over on rootzwiki.com which started me off on this little project:
Developers: Using Mempodroid to Obtain Root
- Jay Freeman, a.k.a, Saurik (cited in above rootzwiki article for the CVE-2012-0056 exploit implementation)
- Juri Aedla who discovered the CVE-2012-0056 exploit
- Jason A. Donenfeld's Linux Mempodipper exploit who wrote about the CVE-2012-0056 exploit in Hacker News
- Android exploit details
- mempodroid pre-compiled binary
- Dan Rosenberg's Droid 4 Exploit for the framework in pushing and enabling the root package
simple-gnex-root-unroot.zip:
.....File size: ..........944,566 (bytes)
.....MD5 checksum: 2ebd6f0d58b26955d7b97d37fa1e0b36