• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

[Verizon] [HOW TO] Root the VZW/LTE Samsung Galaxy Nexus

scary alien

not really so scary
Mar 5, 2010
22,305
23,781
Indy
.
There is no "root exploit" required to root the Samsung Galaxy Nexus since it comes with an unlockable bootloader. So, this means that there is not soon likely to be a 1-click or easy rooting app to run that exploits something in Ice Cream Sandwich in order to root the phone.

Here are the basic steps that need to be done in order to root the GNex:

1. Unlock the bootloader (warning: this does wipe the internal "SD card" portion of your phone)
2. Gain write access to the /system partition
3. Install the root binaries (su / Superuser.apk)

Unfortunately, the biggest hurdle for folks using Microsoft Windows will be issues relating to getting the proper Samsung USB drivers installed and working properly. Please take note of the several options listed at the bottom of this post. For Mac and Linux users, this is fortunately not an issue.

The second biggest hurdle will be getting the adb and fastboot utilities installed and understanding how to use them.

Note: I did experience some hangs while using the fastboot and adb utilities when my USB cable was plugged-in to a USB 3.0 port; these issues disappeared when I reverted back to a USB 2.0 port.

Quick notes about adb / fastboot:
Rooting the Samsung Galaxy Nexus does require use of command-line utilities like adb and fastboot.

If you don't have both adb and fastboot installed anywhere, it might be easiest to download and extract the sdk-tools.zip file referenced in the "Mini-SDK" section of this thread ADB Guide to a folder on your PC of your choosing (take note of this folder/directory's name).

Note for Linux users: you might (probably will) have to resecure the adb and fastboot utilities after installing (i.e., chmod a+x adb and chmod a+x fastboot); additionally, you'll probably have to use the sudo utility when invoking these utilities; for example: sudo ./adb devices or sudo ./fastboot devices

These are two very different tools for use when your device is in a very specific mode:


  • fastboot

    - to use this utility, your phone must be in fastboot mode (also known as bootloader mode) which can be reached by powering-down your phone and restarting it by pressing and holding the volume-up AND volume-down AND the power buttons UNTIL you see the little green Android laying on his back with door on his chest open (you'll also see "Start" in big, green text at the top and "FASTBOOT MODE" in very small red text just below the Android

    - other ways to get into fastboot / bootloader mode:

    • when you are finally rooted, you can use an app like Quickboot and selecting "Bootloader"

    • when you do have fastboot working, you can also use the fastboot reboot-bootloader (Windows) or ./fastboot reboot-bootloader (Mac / Linux) command to re-launch the fastboot/bootloader mode

    - you can verify that you have fastboot USB connectivity by issuing a fastboot devices (Windows) or ./fastboot devices (Mac / Linux) from a command session wherever you have the fastboot utility installed

    - the output of an "fastboot devices" command should be look something like this:
    Code:
    sdk-tools> [B][COLOR="purple"]fastboot devices[/COLOR][/B]
    [COLOR="Blue"]<device serial #>   fastboot[/COLOR]
  • adb (Android Debug Bridge)

    - you can use the adb utility at two different times/modes on your phone:

    • when you are booted normally into Android and have enabled USB debugging (Settings -> System -> Developer options -> USB debugging (checked))

    • when you are booted into a custom recovery (like ClockworkMod); custom recoveries support adb connectivity so you can invoke a shell, push / pull files, etc.

    - you can verify that you have adb USB connectivity by issuing a adb devices (Windows) or ./adb devices (Mac / Linux) from a command session wherever you have the adb utility installed

    - the output of an "adb devices" command should be look something like this:
    Code:
    sdk-tools> [B][COLOR="purple"]adb devices[/COLOR][/B]
    [COLOR="Blue"]<device serial #>   device[/COLOR]
If you are a Windows user and you have trouble establishing connectivity when using these utilities, try installing a different set of USB drivers (see the list of USB drivers at the end of this post).
Your best bet will be to take your time, do your reading and research, and make sure you understand what you are about to do before doing it. Perusing the threads and posts here will go a long way towards letting you see what other issues folks have encountered.

Unlocking The Bootloader

*** Warning *** unlocking your bootloader will completely wipe your device's internal "SD card", so backup what you need / want to beforehand.

All of the rooting methods require that you have an unlocked bootloader. I've included this section here first and made reference to it in the root methods below it.

Code:
[SIZE="4"][COLOR="Red"][B]Note: be aware that the first reboot after you've unlocked the
bootloader (via [COLOR="Black"]fastboot oem unlock[/COLOR]) can take up to five (5) 
minutes to finish; you'll see two cycles of the boot animation 
before it finishes.[/SIZE][/COLOR][/B]

Since unlocking the bootloader does a factory reset, the dalvik-cache, etc. 
needs to be rebuilt upon reboot (this takes times); [U]just be patient and do [b][COLOR="Red"]not[/COLOR] [/b]
pull the battery...let the reboot complete.[/U]

[COLOR="Blue"]If you do/did get antsy and pulled the battery before the boot completed, 
just relock (fastboot oem lock) and unlock (fastboot oem lock) the device 
and then reboot.[/COLOR]

In addition to my notes / instructions (click the Show button below) for unlocking the bootloader, here are two other threads that might prove helpful to you:



Click the Show button below for in-line instructions to unlock the bootloader:
A. if you already have the Android SDK installed with both the adb and fastboot utilities, go ahead and skip to step B.

If you don't have both adb and fastboot installed anywhere, it might be easiest to download and extract the sdk-tools.zip file referenced in the "Mini-SDK" section of this thread ADB Guide to a folder on your PC of your choosing (take note of this folder/directory's name).

B. turn off (power down) your device

C. connect the USB cable between the phone and your PC if you haven't already

D. on your PC, start-up a terminal session (Windows Command Prompt for Windows; Terminal for Mac or Linux) and navigate to the directory/folder where the adb and fastboot utilities are located:

+ for Windows, you need to start-up a Windows Command Prompt (DOS window) and type the following (for example, assuming that your adb / fastboot files are in the c:\sdk-tools folder):

Code:
[B][COLOR="purple"]cd c:\sdk-tools[/COLOR][/B]

+ for Mac/Linux, start-up a Terminal session and type the following (for example, assuming that your adb / fastboot files are in the sdk-tools folder):

Code:
[B][COLOR="Purple"]cd sdk-tools[/COLOR][/B]

E. next, boot your phone into fastboot mode (press and hold both the volume-UP and volume-DOWN buttons and then press the power button)

F. if you are using Windows, install the appropriate Samsung USB drivers; note: there are several USB driver options listed at the bottom of this post; this one in particular worked very well for me and others:

[ADB/FB Driver] Naked Samsung Driver 1.7 - xda-developers

Here are some detailed notes that I took when I installed this driver on my system:
- download the Naked Samsung 1.7.zip driver referenced above

- extract that files contents to a folder like Naked Samsung 1.7

- connect your phone to your Windows PC via the USB cable

- fire-up your Device Manager:


  • Windows Start button
  • Control Panel
  • Hardware and Sound
  • select Device Manager from under the Devices and Printers section

- identify the Other devices section

- right click the Galaxy entry and select Uninstall

- right click the Galaxy entry and select Update Driver Software...

- select Browse my computer for driver software

- use the Browse... button and navigate to the folder where you extracted the Naked Samsung 1.7.zip file (make sure the Include subfolders checkbox is checked)

- browse to that folder name and click the OK button

- you'll be returned to the Update Driver Software - Galaxy screen; click the Next button

- you might see a red-tinted Windows Security warning saying "Windows can't verify the publisher of this driver software";

- that's okay, click the Install this driver software anyway section

- the driver software will then be installed

- after installation, you should see the window is now titled:
Update Driver Software - SAMSUNG Android ADB Interface and it will say "Windows has successfully updated your driver software", etc.

- press the Close button

- notice the the yellow warning icon is now gone and you now have a new SAMSUNG Android Phone section in the Device Manager window
and a SAMSUNG Android ADB Interface entry underneath it

- you should now be able to communicate with your device with adb or fastboot (when in the appropriate mode for each)
G. let's verify that fastboot can "see" your device

note: for simplicity's sake, I'm using the generic "fastboot" command name here; your fastboot utility might actually be named:

+ for Windows: fastboot.exe or fastboot-windows.exe
+ for Linux: fastboot or fastboot-linux
+ for Mac: fastboot for fastboot-mac

- from your PC, enter the following to verify that the fastboot utility can see your phone:

For MS/Windows:
Code:
[B][COLOR="Purple"]fastboot devices[/COLOR][/B] [COLOR="blue"]       (list connected devices)[/COLOR]

For Mac/Linux:
Code:
[B][COLOR="Purple"]./fastboot devices[/COLOR][/B] [COLOR="blue"]       (list connected devices)[/COLOR]

- you should see something similar to this:
Code:
sdk-tools> [B][COLOR="purple"]fastboot devices[/COLOR][/B]
[COLOR="Blue"]<device serial #>   fastboot[/COLOR]

J. next, you'll unlock the bootloader

*** Warning *** the next command (fastboot oem unlock) will completely wipe your device's internal "SD card"), so backup what you need / want to beforehand

Also, please note that after you issue the unlock command, you will be asked, on your phone, to acknowledge that you want the bootloader to be unlocked and that you understand that doing so will void your warranty. Use your volume rocker/keys to select the confirmation and press the power button to actually confirm.

For MS/Windows:
Code:
[B][COLOR="Purple"]fastboot oem unlock[/COLOR][/B]            [COLOR="blue"](unlock the bootloader)[/COLOR]

For Mac/Linux:
Code:
[B][COLOR="Purple"]./fastboot oem unlock[/COLOR][/B]            [COLOR="blue"](unlock the bootloader)[/COLOR]

J. That's it, your bootloader should now be unlocked and you are ready for your next step. You phone should still be in fastboot mode at this point.

If you simply wanted to unlocked the bootloader and now want to reboot your phone, you can issue a "fastboot reboot" (for Windows) or "./fastboot reboot" (for Mac/Linux) to reboot the device normally (note/warning: since unlocking the bootloader does a factory reset, your next reboot after unlocking will take about five minutes to complete--so be patient and wait for the boot animation to finish-up).

If you are not ready to reboot, but need to do other fastboot-related operations, then your phone is still in fastboot mode and ready for you.
- = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -

Wug's Galaxy Nexus Root Toolkit

Pros:

-- guides you through all the tasks
-- works for both GSM and LTE versions of the device

Cons: none, really

AF link and discussion:

http://androidforums.com/verizon-galaxy-nexus-all-things-root/477365-here-you-go-one-step-unlock-root-relock-unroot.html

Direct link:

Wug's Galaxy Nexus Root Toolkit

- = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -

ClockworkMod Method (courtesy of Koushik Dutta)

Pros:

-- simplest and fastest from what I've found
-- works for both GSM and LTE versions of the device
-- does not require a special (insecured) boot.img file

Cons: requires both adb and fastboot USB connectivity
Brief description:

- download su.zip flashable root package and proper version of ClockworkMod
- put phone in fastboot mode
- soft-boot or flash ClockworkMod custom recovery
- push the su.zip file to your phone via adb
- flash the su.zip root package in ClockworkMod to install root
- reboot phone

Resources

1. Download the su.zip flashable (via CWM) root package (note for Mac users: apparently in some browsers, .zip files get auto-unzipped / un-packed / extracted when you download; you don't want this to happen for the su.zip file; here's a link about preventing this: How would you stop Mac from automatically unzipping files? - MacRumors Forums)

Note: some users who have upgraded to Android 4.0.4 have reported that the above su.zip from the clockworkmod site does not give them root. You can use this file: View attachment su.zip (from su.zip - File Shared from Box - Free Online File Storage) instead which IS reported to work).

Note: if you are rooting Android 4.1.x / JellyBean, then use this version of the su.zip: http://db.tt/KJY5bFCv (link courtesy of iowabowtech)

Note: if you download the su.zip file directly from your phone to the /sdcard directory (folder), then you won't have to push it later via adb.

2. Download the version of ClockworkMod appropriate / specific to your carrier:



Instructions

A. unlock your bootloader (see the Unlocking The Bootloader section above)

B. make sure you phone is connected with the USB cable to your PC

C. place both the su.zip and the selected ClockworkMod recovery .img file in the directory with your fastboot and adb utilities

D. next, boot your phone into fastboot mode (press and hold both the volume-UP and volume-DOWN buttons and then press the power button)

E. start-up a command prompt (Windows) or Terminal (Mac / Linux) session as outlined in the Unlocking The Bootloader section above and change to the folder / directory where your fastboot utility, adb utility, su.zip, and selected recovery .img file are located

Note for Windows users: we will be using both the adb and the fastboot utility below, so you'll need to make sure you have USB drivers installed that will recognize your device while in both modes. The [ADB/FB Driver] Naked Samsung Driver 1.7 - xda-developers works very well and there are other USB driver options listed at the bottom of this post.

F. now, at this point, we will start-up ClockworkMod custom recovery; we can either soft-boot (load it from your PC into your phone's memory; this method will not replace the currently installed recovery partition on your phone) or flash it (overwrite the currently installed stock recovery image on your phone):


  • to soft-boot (does not flash / overwrite) your currently installed recovery image:
    Code:
    For MS/Windows:
    
    - command for [COLOR="Red"][B]Verizon / VZW CDMA[/B][/COLOR] recovery:
    
    [COLOR="Purple"]fastboot [B]boot[/B] recovery-clockwork-5.5.0.4-toro.img[/COLOR]
    
    For Mac/Linux:
    
    - command for [COLOR="Red"][B]Verizon / VZW CDMA[/B][/COLOR] recovery:
    
    [COLOR="Purple"]./fastboot [B]boot[/B] recovery-clockwork-5.5.0.4-toro.img[/COLOR]
    
    ###
    
    - your phone should now boot into ClockworkMod custom recovery
  • to flash / overwrite your currently installed recovery image:
    Code:
    [B]For MS/Windows[/B]:
    
    - command for [COLOR="Red"][B]Verizon / VZW CDMA[/B][/COLOR] recovery:
    
    [COLOR="Purple"]fastboot [B]flash recovery[/B] recovery-clockwork-5.5.0.4-toro.img[/COLOR]
    
    [B]For Mac/Linux[/B]:
    
    - command for [COLOR="Red"][B]Verizon / VZW CDMA[/B][/COLOR] recovery:
    
    [COLOR="Purple"]./fastboot [B]flash recovery[/B] recovery-clockwork-5.5.0.4-toro.img[/COLOR]
    
    ###
    
    - after you've flashed the recovery, use the [B]volume keys[/B] to change the 
    green "[COLOR="Green"]Start[/COLOR]" arrow/banner to the red "[COLOR="Red"]Recovery mode[/COLOR]" one
    
    - select that mode by pressing the [B]power button[/B]--that will actually 
    launch the new custom recovery
G. after you see ClockworkMod custom recovery appear on your phone

- okay, if you haven't already put the su.zip file in the /sdcard, then we'll need to push (send) it over to your phone from the PC; there is an issue that I finally figured-out that ClockworkMod won't mount the /data partition (and therefore, your /sdcard directory that's symbolically linked to the /data/media folder) until you've done this sequence at least once:

- > from the main ClockworkMod Recovery screen / menu
- > select install zip from sdcard
- > that will take you to the Apply update from .zip file on SD card screen / menu
- > select choose zip from sdcard
- > you'll see a slight pause while the /data partition is mounted
- > now, you'll see a list of files on your /sdcard in the Choose a zip to apply screen
- > don't choose anything right now, navigate to +++++Go Back+++++ to return to the previous menu
- > hang here on the Apply update from .zip file on SD card screen / menu for now

- next, you'll need to push (send) the su.zip (flashable root package) to your phone's internal memory ("SD card"):

Code:
[B]For MS/Windows[/B]:

[COLOR="purple"]adb push su.zip /sdcard/[/COLOR]       [COLOR="Red"](notice the trailing forward slash)[/COLOR]

-- or --

[COLOR="purple"]adb push su.zip /data/media/su.zip[/COLOR]

[COLOR="Blue"](I included the second version of this command because the first didn't work 
for me at times (CWM wasn't always "seeing" the file I just pushed))[/COLOR]

[B]For Mac/Linux[/B]:

[COLOR="purple"]./adb push su.zip /sdcard/[/COLOR]      [COLOR="Red"](notice the trailing forward slash)[/COLOR]

-- or --

[COLOR="purple"]./adb push su.zip /data/media/su.zip[/COLOR]

[COLOR="Blue"](I included the second version of this command because the first didn't work 
for me at times (CWM wasn't always "seeing" the file I just pushed))[/COLOR]

###

here's what the output looks like on my Windows PC:

c:\gnex\sdk-tools> [B]adb push su.zip /sdcard/[/B]
[COLOR="blue"]4346 KB/s (1126078 bytes in 0.253s)[/COLOR]

H. next, we'll need to navigate in ClockworkMod to flash the su.zip root package

navigation tips:

- use the volume key / rocker to navigate
- use the power button to select an entry

what to do:

note: if you've already navigated in ClockworkMod to the Apply update from .zip file on SD card screen / menu, then you can skip this next line and go right to the "choose zip from sdcard" entry, otherwise:

- select the "install zip from sdcard" entry

- select the "choose zip from sdcard" entry

- navigate to the bottom of the displayed menu options, you should see your "su.zip" entry there; select it

- after you flash the su.zip file, navigate to the "*****Go Back*****" entry; select it to return to the prior menu screen

- navigate back again to the first / main screen

- select the "reboot system now" entry

I. when you phone finishes rebooting, you should now have root :)
- = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -

Superboot Method (courtesy of Paul O'Brien of MoDaCo)

Pros:

-- simpler method for rooting (installs root binaries for you)
-- works for both GSM and LTE versions of the device

Cons: you'll still need to use fastboot to unlock your bootloader (if you haven't already)
This method automates the installation of the su / Superuser binaries for you; click the "Show" button below for details on how this works:
I unpacked the boot.superboot.img file into its kernel and ramdisk components and saw that the init.rc script (in the ramdisk) was modded to invoke the /superboot/superboot.sh script which temporarily remounts /system as read/write and installs/secures the su binary and the Superuser app.
The only caveat about using the Superboot method is that you'll still have to unlock your bootloader (if you haven't already) with the fastboot oem unlock command which Superboot cannot directly address.

This means you'll still need to follow the instructions in the section Unlocking The Bootloader above.

Reference

[MOD] 30 Nov r3: Superboot - rooting the GSM + LTE Galaxy Nexus

-- or --

30 Nov r3: Superboot - rooting the GSM + LTE Galaxy Nexus

Resources

Superboot R3: r3-galaxynexus-superboot.zip

File size (bytes): 6,080,107
MD5 checksum: c827e540aa0262adc2ded86a91c68492

Reference this thread for information on checking MD5 sums: MD5 Verification

Instructions (also see the instruction threads above)

A. download the Superboot zip file (r3-galaxynexus-superboot.zip) above and extract to a directory

B. boot your phone into fastboot mode (press and hold both the volume-UP and volume-DOWN buttons and then press the power button)

C. choose your installation platform to run the installation script:

- Windows:

+ double click the install-superboot-windows.bat file

- Mac:

+ open a Terminal window to the directory containing the files
+ type chmod +x install-superboot-mac.sh
+ type ./install-superboot-mac.sh

- Linux:

+ open a Terminal window to the directory containing the files
+ type chmod +x install-superboot-linux.sh
+ type ./install-superboot-linux.sh

Note for VZW LTE Galaxy Nexus phones: it appears that the boot.superboot.img file, when used on the VZW LTE Galaxy Nexus, might hang (it did for me, but not for others; I suspect I just didn't wait long enough) and not finish booting. It will, however, get the root apps (su / Superuser.apk) installed and root your phone. You'll just need to do a battery-pull and restart after waiting a few minutes after executing the above installation scripts.
--------------------------------------------------------------------------------------------------------

-=< Root Warning / Disclaimer >=-
Quick note / disclaimer: as always, you are ultimately responsible for any root-related activities on your phone. You should understand not only the benefits of rooting, but also any possible consequences (voided warranty, boot-loops, bricking, etc.) that might occur as a result of your root-related actions.

AndroidForums.com / Phandroid.com, its owner, and staff are not liable for any root actions you might undertake as a result of information used from this site.

Reading, researching, understanding, and carefully following the published steps and instructions can go a long way towards helping to make your rooting efforts a successful one.
-=< Credits (Peter Alfonso / Paul O'Brien / XDA's davioxx) >=-
All credit goes to the following folks (I'm just re-summarizing what has already been developed and published by them):

* Peter Alfonso for the insecure boot.img file which allows the system partition to be remounted in read/write mode so that the root programs may be installed.

* Koushik Dutta for ClockworkMod and his many other contributions

* Paul O'Brien of MoDaCo and XDA for Superboot

* davioxx at XDA for his [HOWTO] Root Your Stock Galaxy Nexus - xda-developers thread

* Free Your Android - How to Root the Samsung Galaxy Nexus (Manual Method)
-=< Windows USB drivers >=-
(alternative versions contributed / suggested by various people):
I'll keep updating this list as members report their success with various versions.

ADB/FB Driver Naked Samsung Driver 1.7 [ADB/FB Driver] Naked Samsung Driver 1.7 - xda-developers

(the one above worked great for me on Windows 7 Professional, 64 bit)

fastboot / adb (courtesy of 1wayjonny): Naked Samsung Driver 1.4.8.0.zip

fastboot (courtesy of Gyannea): Galaxy_usb_driver.zip

fastboot (courtesy of jocke.anell): usb_driver.zip (good reports for this one)

adb (courtesy of Gyannea): SAMSUNG_USB_Driver_for_Mobile_Phones_1.4.8.0.exe

(tip: click on the link that says "Softpedia Secure Download (US) [EXE]")

adb: Samsung_USB_Driver for_Moblie_Phones_v1_4_6_0.exe

adb: http://junefabrics.com/android/driver.php

Still having USB connectivity issues after having tried the drivers above? Try a different USB port on your computer and/or a different USB cable (sometimes its NOT the software ;)). Good luck!
-------------------------------------------
Cheers and thanks!
 
OK, I've got a technical question. It seems as though the easiest way for now is to either flash CWRecovery or boot recovery CWRecovery, then use the provided "su.zip" file to finish the job. However, my goal is to install busybox at the same time.

A tiny bit of background, I sort of know how to make custom "update.zip" files (at least for the A855/OG Droid), I have template files and guides to do so. With these 'template' files, there is always a path that goes like this:
Code:
META-INF/com/google/android/
and contained therein are usually two files:
Code:
update-binary
updater-script
and it is the "updater-script" file that I know how to manipulate.

However with the "su.zip" file posted here, in the root directory is a META-INF folder and another .zip file starting with "Superuser". If you follow the path to the end in the root META-INF directory, all you find is an "update-binary" file. If you open the "Superuser[etc.].zip" file in the root, then you find the stuff I'm used to seeing; again down to the end of the "META-INF" path, i.e. a "updater-script" file.

Obviously this "su.zip" file works, but how? Is this an update contained in ICS, or the CWRecovery for the i515? I guess what I'm saying is why have a modified "update-binary" that is going to then further install another "update.zip" style file. Is this needed? Or could I just create my own "update.zip" style file to install via CWRecovery; su, Superuser.apk, and busybox through the "updater-script" commands that I am used to?
 
Upvote 0
OK, I've got a technical question. It seems as though the easiest way for now is to either flash CWRecovery or boot recovery CWRecovery, then use the provided "su.zip" file to finish the job. However, my goal is to install busybox at the same time.

A tiny bit of background, I sort of know how to make custom "update.zip" files (at least for the A855/OG Droid), I have template files and guides to do so. With these 'template' files, there is always a path that goes like this:
Code:
META-INF/com/google/android/
and contained therein are usually two files:
Code:
update-binary
updater-script
and it is the "updater-script" file that I know how to manipulate.

However with the "su.zip" file posted here, in the root directory is a META-INF folder and another .zip file starting with "Superuser". If you follow the path to the end in the root META-INF directory, all you find is an "update-binary" file. If you open the "Superuser[etc.].zip" file in the root, then you find the stuff I'm used to seeing; again down to the end of the "META-INF" path, i.e. a "updater-script" file.

Obviously this "su.zip" file works, but how? Is this an update contained in ICS, or the CWRecovery for the i515? I guess what I'm saying is why have a modified "update-binary" that is going to then further install another "update.zip" style file. Is this needed? Or could I just create my own "update.zip" style file to install via CWRecovery; su, Superuser.apk, and busybox through the "updater-script" commands that I am used to?

Ted,

Actually, things are a little different than what it first seems (;)) re. what is going on with this particular flashable su.zip file. There are two very interesting little twists that the authors of this file have implemented and there's nothing unusual involving ICS or even ClockworkMod.

The first twist is the Superuser-3.0.7-efgh-signed.zip file contained within the su.zip. It is a little bit of a red-herring in that while it is indeed a flashable .zip file on its own (at your own risk, of course), it is simply a payload file for the overall su.zip file and it is from here that the su binary and the Superuser.apk file is taken from (and where you would put a busybox if you were so inclined).

The second twist is the real beauty: the update-binary that "belongs" to the su.zip file is actually a shell script and not a compiled binary file at all. It is this file that controls the actions of what takes place when the su.zip file is being flashed--all without the need for the usual updater-script file.

Let me know if you want me to post the one I built and tested with up here...just remember if you do build a "traditional" flashable script that I think CWM now uses the edify format vs. the old ammend format.

Cheers!
 
  • Like
Reactions: teddyearp
Upvote 0
Ted,

Actually, things are a little different than what it first seems (;)) re. what is going on with this particular flashable su.zip file. There are two very interesting little twists that the authors of this file have implemented and there's nothing unusual involving ICS or even ClockworkMod.

The first twist is the Superuser-3.0.7-efgh-signed.zip file contained within the su.zip. It is a little bit of a red-herring in that while it is indeed a flashable .zip file on its own (at your own risk, of course), it is simply a payload file for the overall su.zip file and it is from here that the su binary and the Superuser.apk file is taken from (and where you would put a busybox if you were so inclined).

The second twist is the real beauty: the update-binary that "belongs" to the su.zip file is actually a shell script and not a compiled binary file at all. It is this file that controls the actions of what takes place when the su.zip file is being flashed--all without the need for the usual updater-script file.

Let me know if you want me to post the one I built and tested with up here...just remember if you do build a "traditional" flashable script that I think CWM now uses the edify format vs. the old amend format.

Cheers!
Sean, ah yes, now I see.

For the readers, this may get way over your head, but if you are so inclined you can learn as well . . . . however, much reading before posting should be a requisite.

Scary, the reason I asked, as you well may know, is because in other 'update.zip' style files, the 'update-binary' file was just that, in binary code. But I have had great success using notepad++ to view/edit/modify the 'updater-script' file to my liking and purposes. But now you have enlightened me. The 'update-binary' file in the root /META-INF/com/google/android directory of this particular file is in fact a script that one can view via notepad++.

And for future reader/learners. 'Google' Notepad++, install it, learn how and when to use it, and profit.

Read more, post less.

So that said, even though you say it's not an ICS, nor a CWR thing, I guess I will go ahead and modify the /META-INF/com/google/android/updater-script file within the Superuser-3.0.7-efgh-signed.zip file to include an install of busybox as well. As that is my whole goal. No sense rooting your phone without installing busybox at the same time.

That is why I made my own reservation in this thread in post #4, hehe.

Oh and p.s. to scary and the readers. I only know the 'edify' format as that is why it is now called 'updater-script'. With 'ammend' it was called 'update-script'.
 
Upvote 0
@scary:

After further looking at your CWRecovery method, I see that you have two different commands to 'push' the "su.zip" file to the phone:
adb push su.zip /sdcard/ (notice the trailing forward slash)

-- or --

adb push su.zip /data/media/su.zip

You have a disclaimer/comment about the second command saying it worked better, however, if you modified the first command to be:
Code:
adb push su.zip /sdcard/su.zip
wouldn't that work just as well and negate the need for the second command?

Just saying/asking . . . .
 
Upvote 0
@scary:

After further looking at your CWRecovery method, I see that you have two different commands to 'push' the "su.zip" file to the phone:


You have a disclaimer/comment about the second command saying it worked better, however, if you modified the first command to be:
Code:
adb push su.zip /sdcard/su.zip
wouldn't that work just as well and negate the need for the second command?

Just saying/asking . . . .

Ted,

I experienced many instances while testing the root methods and particularly the one where you flash the su.zip from CWM where pushing the su.zip to the "/sdcard" mount, with and without the filename, didn't make the filename show-up in the list of files that CWM showed as available for flashing.

Using the alternate path when the first worked (or just doing both) always made the file show-up.

I'm thinking that there's some reason why CWM is not always able to get the mount point for "/sdcard" installed by the time one tries to flash a file (perhaps due to its very large size? Dunno).

I might do some testing and watching the recovery.log file to see if there's anything reported in there that would tell the tale.

Cheers!
 
Upvote 0
@scary: Thanks for putting up with my incessant questions about the SCHi515; especially since i have yet to get this device in my hands.

Unless I see a Motoroogle Developer device available when I finally have the funds to buy this one (~30 days from now), I hope to be able to 'pay it forward' with my own hands on experience(s). And if it goes that way, maybe I/we can figure out where exactly on the phone's internal storage is the partition that CWR 'sees' as "/sdcard/".
 
Upvote 0
@scary: Thanks for putting up with my incessant questions about the SCHi515; especially since i have yet to get this device in my hands.

Unless I see a Motoroogle Developer device available when I finally have the funds to buy this one (~30 days from now), I hope to be able to 'pay it forward' with my own hands on experience(s). And if it goes that way, maybe I/we can figure out where exactly on the phone's internal storage is the partition that CWR 'sees' as "/sdcard/".

Ted,

Hey, no problem...this is a fun device to research with and play around with...

As far as the wonky SD card mount issues in ClockworkMod goes, we do already know that /sdcard is soft-linked to /data/media:

Code:
shell@android:/ # [COLOR="Purple"][B]ls -a -d -l sdcard[/B][/COLOR]
[COLOR="Blue"]lrwxrwxrwx root root 2011-12-30 02:35 sdcard -> /mnt/sdcard[/COLOR]

This happens in the normal Android's init.tuna.rc file here:

Code:
[COLOR="Blue"]on early-init
        export EXTERNAL_STORAGE /mnt/sdcard
        mkdir /mnt/sdcard 0000 system system
        # for backwards compatibility
        [COLOR="Red"]symlink /mnt/sdcard /sdcard[/COLOR]
[COLOR="Black"] .
<snip>
 .[/COLOR]
# create virtual SD card at [COLOR="black"][B]/mnt/sdcard[/B][/COLOR], based on the [B][COLOR="black"]/data/media[/COLOR][/B] directory
# daemon will drop to user/group system/media_rw after initializing
# underlying files in /data/media will be created with user and group media_rw (1023)
[COLOR="red"][B]service sdcard /system/bin/sdcard /data/media 1023 1023[/B][/COLOR]
        class late_start
[/COLOR]

This results in this service running in Android:

Code:
1|shell@android:/ # [COLOR="Purple"][B]ps | grep -i sdcard[/B][/COLOR]
[COLOR="Blue"]media_rw 122 1 988 360 c01bfc00 400f3438 S /system/bin/sdcard
[/COLOR]shell@android:/ #

that is NOT found running in ClockworkMod custom recovery--indeed, the "virtual SD card" service is not found in the init.rc file of the ramdisk that's packed with CWM and it appears that /sdcard is simply soft-linked to /data/media (although I can't see an obvious place in the ramdisk or in Koush's code where this is done).

Hope that helps :).

Cheers!
 
Upvote 0
For some strange reason, whenever I go into "choose zip from sdcard" I get
Code:
Couldn't open directory.
No files found.
I've tried both push methods you listed, but I get the same result with both. If it makes any difference, I'm on a Mac and I used the flash method for CWM.
 
Upvote 0
For some strange reason, whenever I go into "choose zip from sdcard" I get
Code:
Couldn't open directory.
No files found.
I've tried both push methods you listed, but I get the same result with both. If it makes any difference, I'm on a Mac and I used the flash method for CWM.

Wow...I just keep seeing more and more folks having problems with seeing their SD card files while in ClockworkMod...:thinking:

Can you just try restarting CWM and seeing if they show-up?

There is a spot that I've seen in the CWM recovery.log file that shows CWM will wait for 20 seconds to allow the mount for the SD card to finish, but since its really just symlink to the /data/media area, that shouldn't take long (unless its really taking a long time for /data to be mounted).

Dunno...try restarting CWM and see if the su.zip file (I'm assuming that's what you're trying to flash) is now present.

Let us know...thanks!
 
Upvote 0
Wow...I just keep seeing more and more folks having problems with seeing their SD card files while in ClockworkMod...:thinking:

Can you just try restarting CWM and seeing if they show-up?

There is a spot that I've seen in the CWM recovery.log file that shows CWM will wait for 20 seconds to allow the mount for the SD card to finish, but since its really just symlink to the /data/media area, that shouldn't take long (unless its really taking a long time for /data to be mounted).

Dunno...try restarting CWM and see if the su.zip file (I'm assuming that's what you're trying to flash) is now present.

Let us know...thanks!

Nope :/, same thing.

Code:
ClockworkMod Recovery v5.5.0.4
Couldn't open directory.
Couldn't open directory.
No files found.
 
Upvote 0
Nope :/, same thing.

Code:
ClockworkMod Recovery v5.5.0.4
Couldn't open directory.
Couldn't open directory.
No files found.

Wow....don't know what to say...you've got the same version of CWM that I do, 5.5.0.4...are you sure its the VZW/LTE version of CWM? (I'm fishing for any other differences here...).
 
Upvote 0

Yep, that's the right one...

How about this...try rebooting back into CWM and give it a minute or two before trying the "chooze zip from sdcard" thing...

Maybe it just needs more time for the mount of /data to finish...?

I'm pretty sure the early times that I had problems with testing of trying to push the su.zip file to the SD card, I was doing things pretty quickly and tried to invoke that function pretty soon after I started-up CWM.
 
Upvote 0
Yep, that's the right one...

How about this...try rebooting back into CWM and give it a minute or two before trying the "chooze zip from sdcard" thing...

Maybe it just needs more time for the mount of /data to finish...?

I'm pretty sure the early times that I had problems with testing of trying to push the su.zip file to the SD card, I was doing things pretty quickly and tried to invoke that function pretty soon after I started-up CWM.

Nope, that doesn't work either. :/
Well, looks like I won't be able to root. Bleh.
 
Upvote 0
Nope, that doesn't work either. :/
Well, looks like I won't be able to root. Bleh.

You might want to re-flash CWM...maybe (long-shot), you've got a bad download / flash, etc. Can you check the MD5 of the file that you downloaded?

File name: recovery-clockwork-5.5.0.4-toro.img
MD5: b2d31c29b7ef785f9c0802a12264d322
File size: 5,263,360 (bytes)

Easy way would from ROM Manager (there's a free version) where you can flash and then launch CWM from there, too.

Other than that, I'm pretty stumped...
 
Upvote 0
You might want to re-flash CWM...maybe (long-shot), you've got a bad download / flash, etc. Can you check the MD5 of the file that you downloaded?

File name: recovery-clockwork-5.5.0.4-toro.img
MD5: b2d31c29b7ef785f9c0802a12264d322
File size: 5,263,360 (bytes)

Easy way would from ROM Manager (there's a free version) where you can flash and then launch CWM from there, too.

Other than that, I'm pretty stumped...

Its possible, I can't even get my phone to boot now, it just loops to the "Google" screen with the open padlock repeatedly. I'll try reflashing CWM and hope for the best.

I took it back to stock and I'm reactivating it right now. I might give it another go later tonight, but I'm a tad skeptical now. Thanks for the help.
 
Upvote 0
While I don't have the device yet, and I don't know exactly how far 'back to stock' you took it, but I have read that if you get bootloops, go ahead and boot into recovery and do a factory data reset. That should fix the booting problem. Then you will have to re push the su.zip file, since it will have been wiped. Then try again.

Or there's the manual method(s).

good luck
 
Upvote 0
I don't even use push for this phone most times. Hook up phone, locate the device Galaxy Nexus and drag/drop the zip into an open area of the storage. They show up in cwr as contents of "SD card". I don't know much about osx but it works nicely on a windows machine. Might give that a shot if you're having push problems.
 
Upvote 0
I don't even use push for this phone most times. Hook up phone, locate the device Galaxy Nexus and drag/drop the zip into an open area of the storage. They show up in cwr as contents of "SD card". I don't know much about osx but it works nicely on a windows machine. Might give that a shot if you're having push problems.

Wow! I just had a revelation when reading your post, iowabowtech!

It made me think about what I did last night when I was discussing the /sdcard mounts and /data partition clears with Yeahha...

Okay, I think I might have figured-out the issue with pushing files to the /sdcard and why it doesn't work at times.

Here's the deal: the /data partition is not mounted until you've navigated to the Apply update from .zip file on SD card menu and you have selected the "choose zip from sdcard" entry!

You'll notice a slight delay the first time you enter that menu--that's when the /data partition is mounted.

So, you can make sure your symlinked /sdcard is mounted by making it to the Choose a zip to apply menu, selecting "+++++Go Back+++++", pushing your .zip file, and then re-selecting "choose zip from sdcard", your file will be present.

I'm thinking that when you push the file to /sdcard or to /data/media too early, i.e., before /data is actually mounted, that file is lost because its actually being done in the ramdisk and not in the proper /data partition.

It all makes sense now, LOL, I'll update my notes and instructions to reflect this.

I should have seen this earlier and it all fits and is consistent with the behavior that I have observed (and re-tested).

Cheers!
 
Upvote 0
While I don't have the device yet, and I don't know exactly how far 'back to stock' you took it, but I have read that if you get bootloops, go ahead and boot into recovery and do a factory data reset. That should fix the booting problem. Then you will have to re push the su.zip file, since it will have been wiped. Then try again.

Or there's the manual method(s).

good luck

All the way back, locked bootloader, stock OS, etc.
I got it figured out and I'm rooted and good to go. It was a really stupid mistake on my part that made it not work. For some reason I'm not surprised. :p
 
Upvote 0
Wow! I just had a revelation when reading your post, iowabowtech!

It made me think about what I did last night when I was discussing the /sdcard mounts and /data partition clears with Yeahha...

Okay, I think I might have figured-out the issue with pushing files to the /sdcard and why it doesn't work at times.

Here's the deal: the /data partition is not mounted until you've navigated to the Apply update from .zip file on SD card menu and you have selected the "choose zip from sdcard" entry!

You'll notice a slight delay the first time you enter that menu--that's when the /data partition is mounted.

So, you can make sure your symlinked /sdcard is mounted by making it to the Choose a zip to apply menu, selecting "+++++Go Back+++++", pushing your .zip file, and then re-selecting "choose zip from sdcard", your file will be present.

I'm thinking that when you push the file to /sdcard or to /data/media too early, i.e., before /data is actually mounted, that file is lost because its actually being done in the ramdisk and not in the proper /data partition.

It all makes sense now, LOL, I'll update my notes and instructions to reflect this.

I should have seen this earlier and it all fits and is consistent with the behavior that I have observed (and re-tested).

Cheers!


Ok I got it pushed through. But when I try to flash su.zip it says:

--installing: /sdcard/su.zip
Finding update package...
Opening update package...
Installing update...
E:Error in /sdcard/su.zip
(Status 0)
Installation aborted.

Any advice?
 
Upvote 0
Ok I got it pushed through. But when I try to flash su.zip it says:

--installing: /sdcard/su.zip
Finding update package...
Opening update package...
Installing update...
E:Error in /sdcard/su.zip
(Status 0)
Installation aborted.

Any advice?

Jake,

Are you on a Mac or did you unpack the su.zip before transferring it to your phone?

It also could be a bad / incomplete download of that file...that's usually the message you get when the su.zip is not "pristine".

Let me know...we'll figure it out.
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones