Jump to content

Re-root after 37MB updated.

Guest z720

Recommended Posts

Guest Darael

I've been using a slightly different method, which will work whether you use the Xolo ROM or the Orange one, and has a couple of advantages:  Firstly, the only files it needs that we don't already use as part of the AIO tool's functionality are the official patch update.zips, and secondly, once you've got it set up it becomes a one-line ADB command to re-root the phone, whatever it may be running.


Originally I was only able to get this to work for Xolo, because I couldn't manage to flash my phone back to Orange ICS, but I've since had a handset replacement under Orange Care because the capacitative layer of the screen - but not the top glass layer or the actual display underneath - cracked so that most of the surface was unresponsive to touch, and the new one went back to Orange without problem.  As a result, I also have a copy of the 65MiB update.zip which takes Orange stock ICS to the latest patch, pulled with adb.  For anyone interested, the update.zip is downloaded to /cache/fota/ipth_config.bin and kept there until it's applied - this may be useful in case of future updates.


Anyway, you don't care about that so much as you want to know what to do.  You will need your phone to be rooted before we begin, which may require a downgrade and the use of a µHDMI cable.  Having done the setup, though, you can downgrade or upgrade at will, because even if you can't see what's happening you can root the phone, and you can use "adb reboot-bootloader" and fastboot to patch so you get your display back.


The procedure is as follows:

  1. Root device.  Doesn't matter what version it's running at this point, so long as it's rooted.
  2. adb push this shell script (someone mirror this, please?  I can handle the bandwidth but don't want it to go unavailable if my box goes down) to /data/local/tmp (or other location of your choice, in which case adapt the below appropriately)
  3. Get an ADB root shell.  Be that with insecure ADB, adb shell then su, whatever, I don't care.  Then run these:

  4. #/config is the partition other than /system which *isn't* mounted nosuid noexec
    #and updates leave it alone, so we exploit this and stash our su, Superuser, and busybox here
    #we can't use adb remount because it's not /system
    mount -o remount,rw /config
    mkdir /config/reroot # the subfolder is just for neatness
    #This assumes su and busybox are in /system/bin.  They may be in /system/xbin, and if so, adjust accordingly.
    #After patching they'll need to be in /system/bin but we'll get to that
    cp /system/bin/su /system/bin/busybox /system/app/Superuser.apk /config/reroot/
    #the usual mv binary fails across partition boundaries but busybox mv doesn't
    busybox mv /data/local/tmp/do-reroot.sh /config/reroot/
    #these next shouldn't strictly be necessary but don't hurt
    #except for the chmod on the script, that's important
    chown -R root.root /config/reroot
    chmod 755 /config/reroot/busybox /config/reroot/do-reroot.sh
    chmod 644 /config/reroot/Superuser.apk
    chmod 6755 /config/reroot/su
    #clean up
    mount -o remount,ro /config
  5. Update in whatever manner you wish.  I pulled the patch update.zip, so my preferred procedure is "adb reboot-bootloader" followed by "fastboot flash update [...]/updatezips/65M/orange/update.zip but you can do whatever you like.
  6. run the following magic command from your computer: "adb shell /config/reroot/su -c /config/reroot/do-reroot.sh".

Strictly, the script isn't needed, but I wrote it to save myself time given that my experiments with getting both the SD card and the internal storage properly active at once have involved a fair number of bootloop-downgrade-upgrade-reroot cycles.  All it does is copy the three other files into the right places, relying on it being run with elevated permissions thanks to the copy of su to give it the access it needs.


I also have a script that does all the above automatically (downgrades to Xolo-stock, roots if this setup hasn't been done before, sets up the above, does the Orange sidegrade, updates, re-roots), but it's written in bash (sh-compatible save for the presence of a pushd and a popd) and my Windows-batch is rusty enough that I have no idea how to translate it.  PM me for a copy; I've tried to encapsulate procedures in functions so as to make it more extensible (and also easier to do things like cut out the Orange sidegrade)

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in

Sign In Now
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.