Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,728,048 Members 45,916 Now Online
XDA Developers Android and Mobile Development Forum

[GUIDE] Booting an Android System when only Recovery is at your disposal

Tip us?
 
catherall
Old
(Last edited by catherall; 1st April 2012 at 01:58 AM.) Reason: Added testing for fried emmc
#1  
Member - OP
Thanks Meter 51
Posts: 48
Join Date: Jan 2012
Post [GUIDE] Booting an Android System when only Recovery is at your disposal

This guide and the linked ZIP package are for use with the HTC Desire Z.
Version 1.0.1
Provided by Catherall


== Boot CyanogenMod 7.1 from Recovery ==

Your phone may be in a state where Android cannot start any more, even restoring a system backup might be impossible. Then it would be great to have a handy way to boot a full CyanogenMod system anyway.

With the simple to follow commands in this guide you can boot CyanogenMod 7.1 from recovery.

What you need:
  • Custom recovery like one of the following:
    --- ClockworkMod Recovery version 5.0.2.7
    --- 4EXT Recovery TOUCH v1.0.0.4 RC3
    --- Other recovery with similar kernel might work
  • SD card (~ 800MB free)
  • CyanogenMod 7.1 system and boot files on SD card


All needed files are contained in the zip package:
Boot_from_SD_v1.0.1.zip (md5: d8d3332dda267fd3f6f03ba7023c6d72)
http://dl.dropbox.com/u/64675947/and..._SD_v1.0.1.zip

Extract all files from the downloaded zip file to your SD card.
The resulting directory structure looks like this:

Code:
SD card --+-- update.zip
          |
          '-- BootManager --+-- README.txt
                            |
                            '-- rom8 --+-- boot.img
                                       +-- data.img
                                       +-- log.img
                                       +-- name
                                       +-- system.img
                                       '-- .android_secure

Boot into Recovery:
Shutdown your phone completely and remove battery for about 3 seconds.
Boot your phone into HBOOT by pushing Volume down and Power at the same time for about 5 seconds.
In the HBOOT" menu use Volume down to select Recovery and engage with Power.
You are in Recovery now.

Start Android system from Recovery:
Use Volume down and Volume up to select "apply update from sd card" and engage with Trackpad button. Confirm "install" by selecting "Yes - Install .." and engage with trackpad.
Installing update.zip only starts the Android system from the SD card, nothing will be installed on your phone!

When CyanogenMod is starting the CyanogenMod logo appears.
If you have a black screen then push Power once or twice until the screen is visible.

The default language of the system is "German". Select another language using "menu" button / "Einstellungen" / "Sprache & Tastatur" / "Sprache auswählen" - change to your prefered language and hit the home button.


Congratulations, you have a full working CyanogenMod 7.1, rooted, with terminal emulator and working network.


For installing new applications:
* Put the according APK file on the SD card
* Install the app by opening the APK file with the installed app "File Manager"


== Technical Remarks and Background Information ==

Testing for a fried ROM:
(as provided by amidabuddha in http://forum.xda-developers.com/show...php?p=18016711 ):
Connect your phone to the computer, boot into recovery and use the following adb commands:
Code:
adb shell
dmesg | grep mmc0
If the output contains the following strings then your emmc (internal memory) is corrupted, your "chip is fried":
mmc0: failed to get card ready
mmc0: reinit card
mmc0: Starting deferred resume
mmc0: Deferred resume failed


Files contained in the ZIP package:
  • update.zip: Flashable "install" file that can be used in custom recoveries. It contains the kernel boot files and uses chroot to initialze the Android system by executing /init from the boot files
  • system.img, data.img, log.img, cache.img: Loop files of system, data, devlog and cache partition of CyanogenMod 7.1

When you "install" update.zip in recovery then the contained /META-INF/com/google/android/updater-script starts up. All necessary files are copied to the boot RAM disk and the shell script startsystem.sh is executed.
The script startsystem.sh mounts the Android partitions from SD card and starts up Android using the following command:
Code:
chroot /tmp/boot.img-ramdisk /init
This starts the android system (using init) with the new root on the path /tmp/boot.img-ramdisk.

Side effects of using chroot:
  • The phone appears as "recovery" when using "adb devices".
  • Using adb shell connects to /bin/sh of recovery.
  • You cannot use adb to install apps. As a workaround put the apk file on the SD card and install it simply by opening it with the app "File Manager"

This guide has been tested on the following Recoveries so far:
  • ClockworkMod Recovery 5.0.2.7 (kernel 2.6.35.14-cyanogenmod-g9e5cdf1)
  • ClockworkMod Recovery 3.0.2.4 (kernel 2.6.32.28-cyanogenmod-g4f4ee2e)
  • 4EXT Recovery TOUCH v1.0.0.4 RC3 (kernel 2.6.35.13-cyanogenmod-g4dc0bbe)
  • 4EXT Recovery v2.2.7 RC5 (kernel 2.6.35.13-cyanogenmod-g4dc0bbe)

As chroot is used to boot up the Android system it is important that the recovery kernel is compatible to CyanogenMod 7.1.

You can find your recovery kernel version by booting into recovery and using adb with the following command:
Code:
adb shell uname -r

== Feedback and Questions ==

For feedback and questions visit Freenode IRC channel #G2ROOT.
You can use the web interface at http://webchat.freenode.net/ .
After login change channel using "/join #G2ROOT".

When there is real need for the linked zip package and this guide then both will be improved.
Packages for other phones can be provided. When you have another phone then get in touch with me.


== Credits ==

Guhl (inital idea and support)
#G2ROOT freenode IRC channel ("These guys are awesome!")
Inioch (testing on a HTC Desire Z phone with a "fried" / read-only emmc)
karsten95 and coldsun15 (testing)
Nipqer (testing)
amidabuddha (fried rom check)

== Thanks ==

During my work I was supported by
#virtuousrom freenode IRC channel ("Excellent!")
Many other people, you know who you are!


P.S. If this guide does not work for you then follow the advice of Ego_UK:
"Jump three times, then turn around and say abracadabra. Maybe this helps"
The Following 22 Users Say Thank You to catherall For This Useful Post: [ Click to Expand ]
 
xT4Z1N4TRx
Old
#2  
xT4Z1N4TRx's Avatar
Recognized Contributor
Thanks Meter 1880
Posts: 1,953
Join Date: Apr 2011
Location: Wolverhampton

 
DONATE TO ME
I had the exact same idea as this, I knew it would work well, I just couldn't be arsed to do it

Well done man, so many people would find this helpful, this should be sticked in the development forum!

Sent from my HTC Vision using XDA
Wolves fan!!!! FOLLOW ME ON TWITTER!!! twitter.com/Tazzz96

if you want to donate to me, my paypal page is : https://www.paypal.com/cgi-bin/websc...=TF8E3BESMLUUN
 
crestofawave
Old
#3  
crestofawave's Avatar
Senior Member
Thanks Meter 118
Posts: 472
Join Date: Dec 2011
Very nice, you should PM a mod to sticky this.
Device: HTC Vision (Desire Z)
Radio: 26.04.13.09

Previous ROM(s):
ILWT 634 by Tsubus
Virtuous G-Lite 2.0.1 by tun4f1sh
Gen.Y VisionX R3 by yozgatg

Current daily driver:
AOSP JB [4.2.2] Build 10 by cn.fyodor

Useful Sites:
Root/Unroot Related files, credits to Nipqer
Rooting Guide, by Strawmetal
G2/DZ XDA Wiki (Also has root instructions)
 
PJ.C
Old
#4  
Member
Thanks Meter 5
Posts: 64
Join Date: Feb 2012
Location: shenzhen
well done, but how can i boot to the normal system? and when i want to boot to this system, should i do this again?
 
nickeedoo
Old
#5  
Senior Member
Thanks Meter 82
Posts: 439
Join Date: May 2010
Could this be used to have tons of free ram? Boot from the SD card and not have anything installed in the ROM of the phone? As in, format all the phone's partitions (everything under "/" ) and have, say, 368mb of ram? That'd be sick nasty.
G1(3), G2, Inspire 4G, One X, Galaxy S 3, Nokia Lumia 900 (We all go through a stupid phase), Galaxy S4, LG G2
 
ngh55
Old
#6  
Senior Member
Thanks Meter 24
Posts: 263
Join Date: Dec 2007
Can this be ported to be used with EVO 4G?
The Following User Says Thank You to ngh55 For This Useful Post: [ Click to Expand ]
 
silverton
Old
#7  
silverton's Avatar
Senior Member
Thanks Meter 119
Posts: 522
Join Date: Jun 2007
Location: Seattle, WA

 
DONATE TO ME
Quote:
Originally Posted by nickeedoo View Post
Could this be used to have tons of free ram? Boot from the SD card and not have anything installed in the ROM of the phone? As in, format all the phone's partitions (everything under "/" ) and have, say, 368mb of ram? That'd be sick nasty.
Do a nandroid backup and find out
T-Mobile
LG Nexus 4 (mako)
Rom: CyanogenMod 11 M7
Modem: 33/02 hybrid
The Following User Says Thank You to silverton For This Useful Post: [ Click to Expand ]
 
steviewevie
Old
#8  
steviewevie's Avatar
Retired Forum Moderator
Thanks Meter 615
Posts: 5,319
Join Date: Oct 2009
Location: UK
Nice guide !



Quote:
Originally Posted by catherall View Post
[COLOR="Red"]
Boot into Recovery:
Shutdown your phone completely and remove battery for about 3 seconds.
Boot your phone into HBOOT by pushing and at the same time for about 5 seconds.
In the HBOOT" menu use to select Recovery and engage with .
You are in Recovery now.
That bit should be "Volume Down" instead of "Power Down"


Sent from my Desire Z running CM7.
The Following User Says Thank You to steviewevie For This Useful Post: [ Click to Expand ]
 
cjward23
Old
#9  
Senior Member
Thanks Meter 2584
Posts: 3,368
Join Date: Sep 2010
Location: Peterborough
Quote:
Originally Posted by nickeedoo View Post
Could this be used to have tons of free ram? Boot from the SD card and not have anything installed in the ROM of the phone? As in, format all the phone's partitions (everything under "/" ) and have, say, 368mb of ram? That'd be sick nasty.


Sent from my Galaxy Nexus using Tapatalk 2 Beta-4
The Following 8 Users Say Thank You to cjward23 For This Useful Post: [ Click to Expand ]
 
crestofawave
Old
#10  
crestofawave's Avatar
Senior Member
Thanks Meter 118
Posts: 472
Join Date: Dec 2011
Device: HTC Vision (Desire Z)
Radio: 26.04.13.09

Previous ROM(s):
ILWT 634 by Tsubus
Virtuous G-Lite 2.0.1 by tun4f1sh
Gen.Y VisionX R3 by yozgatg

Current daily driver:
AOSP JB [4.2.2] Build 10 by cn.fyodor

Useful Sites:
Root/Unroot Related files, credits to Nipqer
Rooting Guide, by Strawmetal
G2/DZ XDA Wiki (Also has root instructions)

Tags
boot, bricked phone, desire z, fried emmc, recovery
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes