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

Search This thread

[NUT]

Senior Member
-=[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
 

Attachments

  • image1resize.jpg
    image1resize.jpg
    37.7 KB · Views: 155,078
  • image2resize.jpg
    image2resize.jpg
    35.8 KB · Views: 148,118
  • image3resize.jpg
    image3resize.jpg
    34.7 KB · Views: 93,732
  • image4vlv.jpg
    image4vlv.jpg
    30.6 KB · Views: 83,992
  • image5resize.jpg
    image5resize.jpg
    40.7 KB · Views: 80,308
  • image6resize.jpg
    image6resize.jpg
    29.3 KB · Views: 69,368
  • image7resize.jpg
    image7resize.jpg
    28.3 KB · Views: 75,323
  • sigpic4666971_18.gif.png
    sigpic4666971_18.gif.png
    44.7 KB · Views: 62,470
  • eIDZ.png
    eIDZ.png
    17.4 KB · Views: 71,180
  • fYob.png
    fYob.png
    33.8 KB · Views: 68,866
  • WujW.png
    WujW.png
    26.5 KB · Views: 55,082
  • AgsV.png
    AgsV.png
    16.9 KB · Views: 106,251
Last edited:

[NUT]

Senior Member
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.
 
Last edited:

Michealtbh

Senior Member
Nov 16, 2010
2,764
834
Belfast
Google Pixel 4
Will this also work with unlocked bootloaders, or is there anything similar for unlocked bootloaders?

Apologies if this is a silly question but I'm new to XZ and I'm still trying to get my head around the weird recovery situation
 

[NUT]

Senior Member
Will this also work with unlocked bootloaders, or is there anything similar for unlocked bootloaders?

Apologies if this is a silly question but I'm new to XZ and I'm still trying to get my head around the weird recovery situation

Yes, it should work with unlocked bootloaders when you are still clinging on to the stock kernel. DooMLoRD's DooMKernel v6 has the same functionality built in, so when using his kernel this package will not be needed.
 

[NUT]

Senior Member
can we use this recovery/mod when running cm or aokp based rom's?

Yes, I think (Why don't you just try it?), but it would only make sense when you still run the stock Sony kernel.

I would however make a backup of /system/bin/chargemon (and .stock) and alike (charger) before installing. This package overwrites them, its best to have a copy handy for when it doesn't want to work anymore, your way out of trouble :)
 
Last edited:

[NUT]

Senior Member
Installation seems ok, but I'm not able to get into CWM, but able to go into the TWRP.

Previously had CWM - tried flashing using the CWM and then tried to install using the installer as well.

Any idea what's wrong?

Which package(s) did you download and use to install?

Can you send me the logs from cache in chargemon and recovery, right after a failed attempt to get in to CWM? Just copy the contents to my pm.

Sent from my C6603 using xda app-developers app
 
Last edited:

[NUT]

Senior Member
[DUAL RECOVERY] Version 1.2 released

Change log:
Version 1.2:
  • Because of size and reliability: changed from tar archive to lzma packed cpio, originally created by DooMLoRD
  • Updated scripting to handle lzma packed cpio archives.
  • Hopefully fixed CWM from not starting on some devices.

Download links in OP updated, updater zip updated.

All files are now available on http://www.fun-industries.nl/xda/

As I never received the logs, I can not say i'm sure CWM has really been fixed, please report either way!

Enjoy!
 
Last edited:

[NUT]

Senior Member
[DUAL RECOVERY] Version 1.3 released

Change log:
Version 1.3:
  • When available this recovery will now use the external SDcard when it has been formatted with FAT16/FAT32 (explicitly NOT exFAT), ext2 or ext4 for storage of chargemon log and key recording. This makes the loss of /cache irrelevant as it will continue to work! It will create a directory on it called XZDualRecovery.
  • For debugging purposes it will now also create a log inside /tmp/XZDualRecovery to record all things relevant and important before the SDcard gets mounted. When reporting problems, please also include the log from this directory.

Download links in OP updated, updater zip updated.

All files are now available on http://www.fun-industries.nl/xda/

Enjoy!
 

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.