[DEVDB][TWRP][PhilZ Touch] XZDualRecovery 2.8.26 RELEASE

Search This thread

zlebors

Senior Member
Jan 2, 2012
438
55
Jakarta
Ehrr.. pressing power+vol-up for some seconds will reboot your phone too, FYI :)

Does dual recovery work now? What version of busybox is installed in /system/xbin/ :confused:

power+vol up didnt worked, I've tried.. busybox v0.9.6
will try dualrecovery later, running low on battery..

sorry for OOT, is there any app that I can do multiboot? stock ROM+custom ROM and I can choose either both everytime I turn on my ZL.
I have used safestrap before for my Bionic
 

[NUT]

Senior Member
power+vol up didnt worked, I've tried.. busybox v0.9.6
will try dualrecovery later, running low on battery..

sorry for OOT, is there any app that I can do multiboot? stock ROM+custom ROM and I can choose either both everytime I turn on my ZL.
I have used safestrap before for my Bionic

Hmm, thats strange... oh well, you have a reboot button i don't have, so that's no problem either way :)

Hmm... after installation busybox 1.20.2-jb should be installed on that location... if you execute just 'busybox' it will run the first one it finds. Executing 'which busybox' will return the path and executable it finds. If it is something else then /system/xbin/busybox then you have to execute '/system/xbin/busybox' to see that specific executable's version.

I'm not aware of any mod or app that allows for multiboot, sorry.
 

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
Take a look at the system folder in there too, that's what gets extracted, you will notice the busybox executable being in the right spot there. update-script can be a bit confusing, but I gave it the order to extract 'system' from the zip and put it in to 'system' on the phone, that means all of the zip's contents, so it will extract busybox into /system/xbin/ :)

And: you are very welcome, I'm glad to be of service to the community, which has helped me a lot in the past :)

That is why i am telling, inside the zip, busybox is located in "/system/bin/", so it will be extracted in "/system/bin/" in the phone, not in "/system/xbin/" folder.

At least that is the case in the zip i downloaded from your website "lockeddualrecovery1.5.zip".

I will install v1.5 in about 4-5 hours and report back with all the info you requested.
 
Last edited:

[NUT]

Senior Member
That is why i am telling, inside the zip, busybox is located in "/system/bin/", so it will be extracted in "/system/bin/" in the phone, not in "/system/xbin/" folder.

At least that is the case in the zip i downloaded from your website "lockeddualrecovery1.5.zip".

I will install v1.5 in about 4-5 hours and report back with all the info you requested.

Hold back that attempt, I'll recheck the file contents to be absolutely sure before I let you try again... I actually already did, but I will do it again to make sure the files at home match the files on the website...

Sent from my C6603 using xda app-developers app
 

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
Hold back that attempt, I'll recheck the file contents to be absolutely sure before I let you try again... I actually already did, but I will do it again to make sure the files at home match the files on the website...

I was bored an tried flashing v1.5, as it is right now, from TWRP, and it failed, it gives some error almost at the end. Next I tried flashing 1.4 zip file, to see if it was a TWRP problem, but it worked fine, then tried 1.5 and it failed again.

Then booted the phone an installed manually v1.5 using ES file manager. CWM is not working, black screen, and TWRP is working. Everything just like before.

I have installed a terminal app and put the command you told me, and here it is the content of test file:

/dev/block/mmcblk1p1 1 1937 15554048 c Win95 FAT32 (LBA)

I think this would be solved if I repartition/reformat the sd from the phone, as this would change the signature and be accepted by your script, but there should be a lot of people out there with sd cards that have never been reformatted after purchase, so I will let it be as it is if you need a guinea pig.

Tomorrow I will try installing 1.5 from Windows installer script to see how it goes.

Cheers.

Sent from my C6603 using xda app-developers app
 
  • Like
Reactions: [NUT]

[NUT]

Senior Member
[DUAL RECOVERY] Version 1.6 released

Change log:
Version 1.6:
  • As lzcat functionality is pretty important, the script will now test the available busybox(es) for support. If it fails it will abort the script. This means that at boot no vibration or green led will show and the phone will continue boot. It will however dump the info from the installed busybox binary in /system/xbin and/or /system/bin to the preperation.log inside /tmp/XZDualRecovery. If you find yourself in this situation, please send me that log!
  • Improved SDCard1 detection.

All files are now available for download at http://www.fun-industries.nl/xda/

@RoberM, you where correct about busybox not being in the right place in 1.5 flashable... the online version differed from the one i had at home... :confused:
 
Last edited:

[NUT]

Senior Member
I was bored an tried flashing v1.5, as it is right now, from TWRP, and it failed, it gives some error almost at the end. Next I tried flashing 1.4 zip file, to see if it was a TWRP problem, but it worked fine, then tried 1.5 and it failed again.

Then booted the phone an installed manually v1.5 using ES file manager. CWM is not working, black screen, and TWRP is working. Everything just like before.

I have installed a terminal app and put the command you told me, and here it is the content of test file:

/dev/block/mmcblk1p1 1 1937 15554048 c Win95 FAT32 (LBA)

I think this would be solved if I repartition/reformat the sd from the phone, as this would change the signature and be accepted by your script, but there should be a lot of people out there with sd cards that have never been reformatted after purchase, so I will let it be as it is if you need a guinea pig.

I'm happy to have a willing guinea pig, please do leave it as it is... i need to perfect the detection to make it work, it should not require people to reformat their sdcard :)

Thanks for the thorough testing, much appreciated :highfive:

[EDIT]

Not posting in my thread again to relay this, but as i discovered a stupid mix of scripting lingo:

4 people need to re-download 1.6!!

The bug i fixed changes the dual recovery from completely failing to working just fine :eek:
 
Last edited:

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
Hi, tried lockeddualrecovery1.6.zip and it installs flawlessly :good:

TWRP works
CWM does not work (as before, black screen with purple led)

Logs:

Preparation.log


19700124 224232: ### SDCard1 FS found: FAT32 with code 'Win95'.
19700124 224232: ### Not mounting SDCard1!
19700124 224232: ### Logfile rotation...
19700124 224232: /system/xbin/busybox mv /cache/chargemon/chargemon.log /cache/chargemon/chargemon.log.old
19700124 224232: RET=0
19700124 224232: /system/xbin/busybox touch /cache/chargemon/chargemon.log
19700124 224232: RET=0
19700124 224232: /system/xbin/busybox chmod 660 /cache/chargemon/chargemon.log
19700124 224232: RET=0


chargemon.log.old (booting CWM, then failing)


19700124 224133: ### chargemon start...
19700124 224133: ### BUSYBOX=/system/xbin/busybox
19700124 224133: ### keycheck...
19700124 224133: ### Trigger vibrator
19700124 224133: /system/xbin/busybox sleep 3
19700124 224133: /system/xbin/busybox cat /dev/input/event6
19700124 224133: RET=0
19700124 224136: ### recovery boot mode...
19700124 224136: /system/xbin/busybox hexdump
19700124 224136: RET=0
19700124 224136: export VOLUKEYCHECK=0000000 0006 0000 0950 0005 0001 0073 0001 0000
/system/bin/chargemon[320]: export: 0006: not identifier
19700124 224136: export VOLDKEYCHECK=
19700124 224136: RET=0
19700124 224136: /system/xbin/busybox rm /dev/keycheck
19700124 224136: RET=0
19700124 224136: /system/xbin/busybox rm /dev/keycheck1
19700124 224136: RET=0
19700124 224136: cd /
19700124 224136: RET=0
19700124 224136: ### Booting CWM by keypress...
19700124 224136: ### start time_daemon...
19700124 224136: /system/xbin/busybox sleep 5
19700124 224136: RET=0
20130509 111316: ### kill time_daemon...
20130509 111316: /system/xbin/busybox kill -9 305
20130509 111316: RET=0
20130509 111316: ### stop init services...
20130509 111316: stop rmt_storage
20130509 111316: RET=0
20130509 111316: stop
20130509 111316: RET=0
20130509 111316: stop tad_static
20130509 111316: RET=0
20130509 111317: stop
20130509 111317: RET=0
20130509 111317: stop ueventd
20130509 111317: RET=0
20130509 111317: stop
20130509 111317: RET=0
20130509 111318: ### remount rootfs to rw...
20130509 111318: /system/xbin/busybox mount -o remount,rw rootfs /
20130509 111318: RET=0
20130509 111318: /system/xbin/busybox rm sdcard etc tmp init init.goldfish.rc init.qcom.class_core.sh init.qcom.class_main.sh init.qcom.early_boot.sh init.qcom.rc init.qcom.ril.sh init.qcom.sh init.qcom.syspart_fixup.sh init.rc init.sony-device.rc init.sony-platform.rc init.sony.rc init.target.rc init.trace.rc init.usb.rc init.usbmode.sh ueventd.goldfish.rc ueventd.qcom.rc ueventd.rc default.prop
20130509 111318: RET=0
20130509 111318: /system/xbin/busybox rm -r sbin
20130509 111318: RET=0
20130509 111318: /system/xbin/busybox lzcat /system/bin/recovery.cwm.cpio.lzma
20130509 111318: RET=0
20130509 111318: ### umount partitions...
20130509 111318: /system/xbin/busybox umount -l /data/idd
20130509 111318: RET=0
20130509 111318: /system/xbin/busybox umount -l /data
20130509 111318: RET=0
20130509 111319: /system/xbin/busybox kill -9 172
20130509 111319: RET=0
20130509 111319: /system/xbin/busybox umount -l /system
20130509 111319: RET=0
: ### executing init...


The second log looks fine to me, it is cwm who is failing, i think, because the absence of the right files in cache and in sdcard1. As you see sdcard is detected but refused by the script. Maybe if you make the check for sd card to accept everything except filesystems containing the string "ex" the script would be less restrictive.

I hope that helps, keep up the good work.

EDIT1: ---------------------------------------------------------------

I had some spare time and installed "lockeddualrecovery1.6.installer.zip" from windows.

Sdcard mounting seems fine!

preparation.log

19700124 234430: ### SDCard1 FS found: Win95 FAT32 (LBA) with code 'c'.
19700124 234430: mount -t vfat /dev/block/mmcblk1p1 /storage/sdcard1
19700124 234430: RET=0
19700124 234430: ### Mounted SDCard1!
19700124 234430: LOGPATH: /storage/sdcard1/XZDualRecovery
19700124 234430: LOGFILE: /storage/sdcard1/XZDualRecovery/chargemon.log
19700124 234430: WORKDIR: /storage/sdcard1/XZDualRecovery
19700124 234430: ### Logfile rotation...
19700124 234430: mv /storage/sdcard1/XZDualRecovery/chargemon.log /storage/sdcard1/XZDualRecovery/chargemon.log.old
19700124 234430: RET=0
19700124 234430: touch /storage/sdcard1/XZDualRecovery/chargemon.log
19700124 234430: RET=0
19700124 234430: chmod 660 /storage/sdcard1/XZDualRecovery/chargemon.log
19700124 234430: RET=0


Now i have chargemon.log in sdcard1/XZDualRecovery/, so detection and mounting is done right, so i tried (several times), booting into CWM and TWRP, there is vibration and green led, but is doesn't matter if i press vol-up or vol-down, nothing happens and it boots straight into system. No recovery to be seen.

chargemon.log.old:

19700124 234302: ### chargemon start...
19700124 234302: ### BUSYBOX=
19700124 234302: ### Trigger vibrator
19700124 234302: ### Turn on green led
19700124 234302: ### keycheck...
19700124 234302: sleep 3
19700124 234302: cat /dev/input/event6
19700124 234302: RET=0
19700124 234305: ### normal boot mode...


What a mess man ;)

Weird thing both installing methods won't behave the same. Maybe someone could offer his clean, just rooted device to try this.

EDIT2: ---------------------------------------------------------------

Copied (not moved) busybox from xbin to bin and got recovery back, only TWRP.

CWM still hangs, gonna look at some logs.

New logs:
tmp/XZDualRecovery/preparation.log:

19700125 002259: ### SDCard1 FS found: Win95 FAT32 (LBA) with code 'c'.
19700125 002259: /system/bin/busybox mount -t vfat /dev/block/mmcblk1p1 /storage/sdcard1
19700125 002259: RET=0
19700125 002259: ### Mounted SDCard1!
19700125 002259: LOGPATH: /storage/sdcard1/XZDualRecovery
19700125 002259: LOGFILE: /storage/sdcard1/XZDualRecovery/chargemon.log
19700125 002259: WORKDIR: /storage/sdcard1/XZDualRecovery
19700125 002259: ### Logfile rotation...
19700125 002259: /system/bin/busybox mv /storage/sdcard1/XZDualRecovery/chargemon.log /storage/sdcard1/XZDualRecovery/chargemon.log.old
19700125 002259: RET=0
19700125 002259: /system/bin/busybox touch /storage/sdcard1/XZDualRecovery/chargemon.log
19700125 002259: RET=0
19700125 002259: /system/bin/busybox chmod 660 /storage/sdcard1/XZDualRecovery/chargemon.log
19700125 002259: RET=0


sdcard1/XZDualRecovery/chargemon.log.old (loading CWM, fail)

19700125 002158: ### chargemon start...
19700125 002158: ### BUSYBOX=/system/bin/busybox
19700125 002158: ### Trigger vibrator
19700125 002158: ### Turn on green led
19700125 002158: ### keycheck...
19700125 002158: /system/bin/busybox sleep 3
19700125 002158: /system/bin/busybox cat /dev/input/event6
19700125 002158: RET=0
19700125 002201: ### recovery boot mode...
19700125 002201: /system/bin/busybox hexdump
19700125 002201: RET=0
19700125 002201: export VOLUKEYCHECK=0000000 0006 0000 0052 0000 0001 0073 0001 0000
/system/bin/chargemon[356]: export: 0006: not identifier
19700125 002201: export VOLDKEYCHECK=
19700125 002201: RET=0
19700125 002201: /system/bin/busybox rm /dev/keycheck
19700125 002201: RET=0
19700125 002201: /system/bin/busybox rm /dev/keycheck1
19700125 002201: RET=0
19700125 002201: cd /
19700125 002201: RET=0
19700125 002201: ### Booting CWM by keypress...
19700125 002201: ### start time_daemon...
19700125 002201: /system/bin/busybox sleep 5
19700125 002201: RET=0
20130509 125341: ### kill time_daemon...
20130509 125341: /system/bin/busybox kill -9 319
20130509 125341: RET=0
20130509 125341: ### stop init services...
20130509 125341: stop rmt_storage
20130509 125341: RET=0
20130509 125341: stop
20130509 125341: RET=0
20130509 125341: stop tad_static
20130509 125341: RET=0
20130509 125342: stop
20130509 125342: RET=0
20130509 125342: stop ueventd
20130509 125342: RET=0
20130509 125342: stop
20130509 125342: RET=0
20130509 125343: ### remount rootfs to rw...
20130509 125343: /system/bin/busybox mount -o remount,rw rootfs /
20130509 125343: RET=0
20130509 125343: /system/bin/busybox rm sdcard etc tmp init init.goldfish.rc init.qcom.class_core.sh init.qcom.class_main.sh init.qcom.early_boot.sh init.qcom.rc init.qcom.ril.sh init.qcom.sh init.qcom.syspart_fixup.sh init.rc init.sony-device.rc init.sony-platform.rc init.sony.rc init.target.rc init.trace.rc init.usb.rc init.usbmode.sh ueventd.goldfish.rc ueventd.qcom.rc ueventd.rc default.prop
20130509 125343: RET=0
20130509 125343: /system/bin/busybox rm -r sbin
20130509 125343: RET=0
20130509 125343: /system/bin/busybox lzcat /system/bin/recovery.cwm.cpio.lzma
20130509 125343: RET=0
20130509 125343: ### umount partitions...
20130509 125343: /system/bin/busybox umount -l /data/idd
20130509 125343: RET=0
20130509 125343: /system/bin/busybox umount -l /data
20130509 125343: RET=0
20130509 125344: /system/bin/busybox kill -9 171
20130509 125344: RET=0
20130509 125344: /system/bin/busybox umount -l /system
20130509 125344: RET=0
: ### executing init...


Conclussion:

lockeddualrecovery1.6.zip - installs and uses busybox in xbin - does not mount my sdcard - TWRP ok, CWM fail
lockeddualrecovery1.6.installer.zip - installs busybox in xbin, but it needs to be in bin - mounts my sd card allright - once busybox is copied to bin, TWRP ok, CWM fail.
 
Last edited:

[NUT]

Senior Member
@RoberM

That's actually strange in more then one way... CWM boots up just fine for me, though I mostly update the files by hand... Maybe the CWM archive got corrupted somehow...

I am puzzled about the sdcard1 not mounting... I'll recheck my fix and hope to release a fixed update zip tonight...

Sent from my C6603 using xda app-developers app
 

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
@RoberM

That's actually strange in more then one way... CWM boots up just fine for me, though I mostly update the files by hand... Maybe the CWM archive got corrupted somehow...

I am puzzled about the sdcard1 not mounting... I'll recheck my fix and hope to release a fixed update zip tonight...

Sent from my C6603 using xda app-developers app

Please read my edit, you posted while i was editing, new and important stuff there.

Thanks.

Edit: RE-edited my previous post with more info and logs.

PS1: i think it would be a good idea if you test both installers before release starting from as clean as possible system, instead of just updating by hand and releasing the installers ;)
PS2: By the next week, the dual recovery probably will be at v20.5 and still having about the same features, i think it would be a good idea adding a letter or another number to the version number, so new features will be distinguished from bugfixes, for example 1.6a, 1.6b, 1.6c... and so on would be bugfixes of 1.6. v1.7 would be new features, 1.7a would be bugfix of 1.7, etc... Just a suggestion. ;)
 
Last edited:

ludow

Senior Member
Jul 9, 2010
484
54
Hi!

I have Cpasjuste's TWRP 2.4.3.x recovery installed via APK. It works fine and I can get to recovery.
I removed Cpasjuste's recovery and tried to install dual recovery via Win installer. No errors during install,
but I can't get to recovery.

So, any help is highly appreciated. How to get there?:confused:

P.S Any chance for updated TWRP 2.5.x APK, please.
 

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
Hi!

I have Cpasjuste's TWRP 2.4.3.x recovery installed via APK. It works fine and I can get to recovery.
I removed Cpasjuste's recovery and tried to install dual recovery via Win installer. No errors during install,
but I can't get to recovery.

So, any help is highly appreciated. How to get there?:confused:

P.S Any chance for updated TWRP 2.5.x APK, please.

[NUT] is doing a great job fixing the installer, so wait a little for an updated revision. For now I think you can fix your problem if you copy busybox from /system/xbin/ to /system/bin/ using any root allowed file manager.

Sent from my C6603 using xda app-developers app
 
  • Like
Reactions: ludow

Mitsuya Cider

Senior Member
Dec 27, 2012
93
12
Yokohama / Hong Kong / Toronto
Recovery is not working even after copying the busybox.

Went from CWM recovery 6.0.2.8 for locked bootloaders to CWM 6.0.3.0 & TWRP 2.5.0.0 using method 2 ( lockeddualrecovery1.6.zip) on the thread and no luck...

How to fix?
 
Last edited:
  • Like
Reactions: sally1999

[NUT]

Senior Member
@RoberM

Thanks for the extensive testing so far, including the usefull pointers :)

Regarding the versioning, I will move to v2 with the big changes, all changes regarding bugs get fixed by minor increments, so taking your assumption, v1.41 would actually be possible :D

I'll work on a release kitchen tonight, eliminating release errors all together...

Sent from my C6603 using xda app-developers app
 

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
Regarding the versioning, I will move to v2 with the big changes, all changes regarding bugs get fixed by minor increments, so taking your assumption, v1.41 would actually be possible :D

laughing.jpg
Nice!

@Mitsuya Cider

Copying busybox is a possible fix only when using "lockeddualrecovery1.6.installer.zip" from windows. Maybe if you post the logs requested in the OP, we can help in your case. Or... just wait, as [Nut] just announced a new release tonight.

Anyway if none of the two recoveries is booting on you, you will need to use the windows installer.
 
Last edited:

surdu_petru

Recognized Contributor
Feb 3, 2010
7,561
23,796
Paris
Hi!

Download busybox !

Temporary solution :

> adb push busybox /sdcard1/XZDualRecovery
> adb shell
$ su
# stop
# busybox mount -o remount,rw /system
# cp /sdcard1/XZDualRecovery/busybox /system/xbin
# chown root.shell /system/xbin/busybox
# chmod 0755 /system/xbin/busybox
# ./system/xbin/busybox --install -s /system/xbin
# rm /system/bin/busybox
# ln -s /system/xbin/busybox /system/bin/busybox
# reboot

Now you are able to enter in custom recovery !

Also I can not enter in cwm recovery, but only on twrp ! ( I had the same problem, also with the older versions ! )
Xperia Z C6603 with locked bootloader !

Thanks !
 
Last edited:
  • Like
Reactions: [NUT]

RoberM

Senior Member
Oct 12, 2011
253
121
ESPAÑA
@RoberM

It will probably be a rerelease of 1.6, as there is going to be quite some work to be done to build that kitchen to cook up future releases... Dunno if a really new release will happen due to that work...

Sent from my C6603 using xda app-developers app

Oh, excuse me, english is not my main language and I didn't understand what this kitchen thing was about and I assumed it was a standard release tonight X'D

Now that I understood it, please, have fun developing it, I will be pleased to test the results when it is ready.

Keep up the good work!

Sent from my C6603 using xda app-developers app
 

[NUT]

Senior Member
[DUAL RECOVERY] Version 1.7 released

Change log:
Version 1.7:
  • Created a kitchen to cook up new releases, hoping it will avoid future release headaches :fingers-crossed:
  • Moved the reboot from the run.sh to an adb command in install.bat, as it was causing junk to be left behind. ( Thank you for your pointer @surdu_petru )
  • Improved busybox detection. ( Thanks for the test work @RoberM and @surdu_petru )
  • Improved SDCard1 detection. ( Thanks for the test work @RoberM )
  • Dual Recovery now sets CPU min (1Ghz) and max (1.5Ghz) frequencies on all cores, i hope it helps to speed the recoveries performance up.
All files are now available for download at http://www.fun-industries.nl/xda/
 
Last edited:
  • Like
Reactions: surdu_petru

Top Liked Posts

  • There are no posts matching your filters.
  • 691
    -=[XZDualRecovery]=-
    TWRP 2.8.7.0 & PhilZ Touch 6.59.0
    *** For Locked and Unlocked BOOTLOADERS! ***

    I proudly present you the first and only DUAL RECOVERY for locked boot loaders on our lovely Xperia phones! :cool:

    If you have an unlocked bootloader and chose to keep the STOCK Sony kernel, you can also use this MOD.

    Currently supported XPERIA models:
    These are also links to the device specific Q&A threads.
    Xperia Z: SO-02E, C6602, C6603, C6606, C6616
    Xperia ZL: C6502, C6503, C6506
    Xperia Tablet Z: SO-03E, SGP311, SGP312, SGP321, SGP351
    Xperia Z Ultra: C6802, C6806, C6833, C6843
    Xperia Z1: C6902, C6903, C6906, C6943, C6916
    Xperia Z1 Compact: D5502, D5503, D5506
    Xperia Z2: D6502, D6503, D6506, D6543, D6563
    Xperia Tablet Z2: SGP511, SGP512, SGP521, SGP551, SGP561
    Xperia ZR: C5502, C5503, C5506
    Xperia T, TX, TL and V: LT30p, LT29, LT30at, LT25i
    Xperia S: LT26i
    Xperia SP: C5302, C5303
    Xperia T2 Ultra: D5303, D5322
    Xperia Z3: D6603, D6633, D6643, D6653, D6616
    Xperia Z3 Compact: D5803, D5833
    Xperia Tablet Z3 Compact: SGP621, SGP641, SGP651

    I will be adding more and more devices to the list in the near future, keep your eyes on this thread for them to be released :)
    I will also start a Q&A thread for each of the models officially supported, once released from the experimental stage.

    XZDualRecovery User Manual

    Special Thanks:
    • DooMLoRD for all his excellent work on our much loved Sony phones!
    • The Team Win developers for TWRP
    • The ClockWorkMod developers for CWM
    • @alexocean for his awesome job testing almost all FW releases and the discovery of SuperSU causing problems for the installation of this recovery!
    • @RoberM for testing
    • @surdu_petru for testing and handy pointers
    • @Androxyde for allowing to use his linux and mac adb binaries.
    • @lancebukkake for finding the TWRP 'fix' to use exFAT formatted sdcards!
    • @delewer for the final fix for TWRP and its use of exFAT formatted sdcards
    • @DevShaft for some code help on the windows installer (the menu!)
    • @Androxyde again, but now for his bash code/script suggestions... oh boy this guy is a genius! :highfive:
    • @Tamirwig and @shoey63 for their excellent job at testing early BETA's (Xperia Z)
    • @gregbradley for his extensive testing on the Xperia Z1
    • @russel5 for his tinkering and general debugging help :cool:

    GitHub Repository:
    https://github.com/xNUTx/XZDualRecovery

    Downloads:
    All past, current and future releases will appear on http://nut.xperia-files.com/ for download, also providing a QR code for easy downloading on your mobile :) The flashable file will bring any previous version to the latest release.

    Well, enjoy! :fingers-crossed:

    The origins of this XZDualRecovery package are in the packages done by:
    Krabappel2548, Cpasjuste and DooMLoRD
    Thank you for your excellent work guys! :victory:
    Your thanks (and donations) should (also) go out to them, they deserve it! :highfive:

    XDA:DevDB Information
    XZDualRecovery, Tool/Utility for the Sony Xperia Z

    Contributors
    [NUT], AngelBob , shoey63 , Olivier, Krabappel2548, DooMLoRD, Cpasjuste, Tungstwenty, sijav, zxz0O0, MohammadAG, McBane87, oshmoun
    Source Code: https://github.com/xNUTx/XZDualRecovery


    Version Information
    Status: Stable
    Current Stable Version: 2.8.26
    Stable Release Date: 2016-02-22

    Created 2013-07-18
    Last Updated 2016-02-22
    250
    Hello guys,

    I noticed there are some problems getting dualrecovery to work on Lollipop. I created a small hack to bypass the SELinux enforcement (wonder why no one else created it already). Anyway I attached a little bat file to fix dualrecovery again (tested on Z3C).

    Source will be released in the next days and probably also integrated in the official dualrecovery.

    Happy eastern.

    Edit: Source available here https://github.com/dosomder/byeselinux
    136
    Known Issues and Frequently Asked Questions

    Known Issues:
    All known issues in PhilZ, TWRP and CWM on locked boot loaders apply, see their respective threads for more information.

    Busybox updaters can kill XZDualRecovery, see the FAQ below for more information.

    Frequently Asked Questions:

    How to set the correct time & date in PhilZ 6.59.0
    • Boot to PhilZ Touch;
    • Tap 'Recovery Settings';
    • Tap 'Gui Preferences';
    • Tap 'Time Settings';
    • Tap 'Change date and time';
    • Tic one of the last 3 options in this menu to try it;
    • Reboot to PhilZ Touch to see if it sticks, if not, try another and reboot to see if it helped, do this for all options to try them;
    • If one of them does help but does not stick at reboot, tic 'Try Force Persist on Reboot' once (it will un-tic itself after a reboot).
    • Done! :)

    NOTE: if it's close to being correct (max 15h difference before or after your time) you need to correct the timezone.


    About TWRP 2.6 and the use of INTERNAL STORAGE
    [snip]...but permissions are set like: Srw-Srw-r (644) (It seems like the 'S' is the problem, I'm sure GID and UID are ticked)...[snip]

    A workaround for this issue is to use TWRP's advanced options, after creating a backup you wish to move to the PC:

    1. go back to the main menu
    2. go to advanced
    3. go to filemanager
    4. navigate to /data/media/0/TWRP/BACKUPS/*SERIAL*/*BACKUPNAME*
    5. select one of the backup files
    6. press chmod button (the one without 755)
    7. type 0664 and press go
    8. repeat 5->7 for each of the files in the backup, you can skip boot and the md5 files.
    9. reboot to system and you should be able to copy the files without problems.

    Alternatively you can install adbd Insecure by @Chainfire (non-free app from Play, or for free from it's XDA thread) and run ADBd itself as root, which elevates the rights and omits the issue all together.

    I think it's a feature and not a bug (as it secures your backups), but I'll try to convince Team Win to make the setuid/setguid a choice rather then a default.


    Installation of XZDualRecovery on UNROOTED devices
    The 2.8.21 and older installer package uses Easy Root Tool for various Xperia phones, it is able to gain root on all of the currently supported devices, allowing to install XZDR.

    Confirmed working:
    • Z - C6603
    • Z1 Compact - D5503 (doesn't seem to work on JellyBean), SO-01F (docomo)
    • Z1 - C6903,
    • Z Ultra - C6802, C6833
    • ZR, C5502
    • Z2 - D6503
    • Z2 Tablet - SGP511, SGP512
    • ZL2 - SOL25

    If you want to help me perfect this list, use the tool done by @zxz0O0 in his topic and try to root your device. When testing also try older ROM versions, the latest FW versions may have been patched.

    Thanks @zxz0O0 for the initial list.

    The rootless installation has been made possible by:
    • @geohot: Root exploit
    • @MohammadAG: Disable RIC kernel module (Link)
    • @cubeundcube: Disable RIC on Z2 phone (findricaddr/writekmem)
    • @zxz0O0: for creating the initial tool where I have based this unrooted install option on.

    Thanks for your hard work guys! :highfive:

    The 2.8.22 and later installer package uses rootkitXperia for various Xperia phones, it is able to gain root on all of the currently supported devices -if they are running the correct Lollipop version- allowing to install XZDR.

    Thanks go to @cubeundcube and @zxz0O0 respectively for developing and making some changes to allow me to utilize it for XZDualRecovery installation. Thanks guys!


    XZDualRecovery's (2.8.21 and older) Busybox dependency and compatible Busybox updaters

    Busybox Updater/Installer: If you have XZDualRecovery installed, un-install any Busybox updating app/tool as most if not all of them will install a version of busybox which does not support the lzma compression applets XZDualRecovery depends on. The version installed together with XZDualRecovery is very stable and I have yet to hear anyone complain about it's stability.

    @vaisakh7 found a busybox updater which seems to be compatible with XZDualRecovery: Busybox On Rails, which installs a version of busybox created by stericson, which leads me to believe his Busybox installer should also install a version which works together with XZDualRecovery.

    Either case, be careful with updating busybox as there still is a possibility it will break your ability to enter recovery or even break full root, which means you might not be able to recover from the broken situation. Your best bet is the installer version, using that to break the lock on the system partition and reinstall the correct busybox.

    XZDualRecovery 2.8.22 and newer do not suffer from this dependency, you can use whatever busybox updater app you like when you have 2.8.22 or newer installed.


    I installed XPOSED on Lollipop and now I am experiencing a boot loop!

    @ondrejvaroscak found a workaround to fix your bootloop issues: [WORKAROUND] Bootloops with Xposed in Lollipop

    While using the installer I get the message "This device is unauthorized" and I can't install XZDualRecovery!

    Authorizations... The latest versions of adb and android need this, it's nothing XZDR related. If you have USB debugging turned on, and your mobile disconnected from your PC, just make sure you 'revoke all authorizations for USB debugging' in the developer options menu. Then reboot your phone and before doing anything else, make sure you're looking at the home screen on your device, then hook up your USB cable. Your mobile should then ask if the connected PC is authorized or not. Once answered you can start the installer.
    122
    A small update on progress:

    The issues with XZDR are mainly caused by Sony actually properly setting up SELinux support for the very first time on the LP ROM's, something they neglected in all of the KK releases. This makes the LP version a lot more secure, which is a good thing. The problem is that I now know what to fix, but am still looking in to how to fix it. :angel:

    For the techies among us:

    During INIT the hijack still works, but the script is not able to change anything on the rootfs, it allows you to create a folder and if you mount a tmpfs on it you can write stuff to it, but if you try to write anything to the folder as it is (without tmpfs) it will not allow you to do so. This is because the SELinux context of my scripts is not set correctly, so the kernel blocks just about everything I try to do. I'm busy configuring and compiling a new busybox to include in XZDR with better SELinux support, as the one I am currently using is lacking the extended SELinux support I will need to fix this.
    The other problem is that init is less easy to override with the init from the recoveries, it simply continues the LP boot, I am in the progress of including 2nd-init support ( created by SkrilaxCZ ) and will be integrating parts and ideas of the safestrap project by Hashcode to fix these issues.
    The last but not least problem is that I can still mount the SDCard, but I am unable to write to it, most likely also due to the SELinux restrictions. If you remove the SDCard from the device it will use /cache which seems to be set up with less strict permissions and it will be able to do just about everything, except boot the actual recoveries.

    Last night I worked from 23:00PM all the night up to 6:30AM, pulling an almost an all-nighter. I'm not giving up just yet :cowboy:

    My thanks go to @Hashcode for a late night chat (for me that is, he was at work as he is located on the other side of the globe!) which helped me find the most likely cause.