With Multiboot, you can launch any ROM from your internal card or your external sdcard. It is a TWRP recovery ROM modified to add this feature.
This feature is possible thank's to kexec-hardboot method created by mkasic (http://forum.xda-developers.com/show....php?t=1266827).
I adapted this method to be able to apply it quite easily on any android device.
This method includes few pieces of software ( sources will be published) :
kexec-hardboot : kernel patch from mkasic
hardboot-reserve : new kernel patch
kload-hardboot : new userspace program
Next part of the method is an on the fly modification of initrd ramdisk before injecting new kernel/initrd. Early versions of multiboot (before v1.2) were simply modify [on fs] section of init.rc to replace original block devices ( mmcblk0p14, mmcblk0p15 etc ) by loop devices pointing to img files.
Since Multiboot v1.2, a new method is used to replace original filesystems : a script replace original init binary, his goal is to prepare all the filesytems before launching original init.
All this method is done by shell scripts that you can check in /sbin and /multiboot directories when booted into recovery.
Creating img files (raw) is very efficient on internal sdcard as this card is formatted ext4 and img files can be thin provisiionnig ( sparse files ).
Unfortunaltely, external sdcard are offently fat32 or exfat formated. Those filesystems do not support thin provisionning ( note also that multiboot supprot only vfat for the moment ).
Creating img files on vfat filesystems is very long process and consume lot of space.
Version Multiboot V2.1 add support for ubuntu touch 14.04 support ( only img files )
Version .Multiboot V20 introduced a new feature : qcow2 support for external sdcard.
With qcow2 image files, we can create small images which grows only when needed.
Slow speed on standard : speed on qcow2 especially when first installation is not good. To reduce this, livesnap booting mode gives very good speed.
suspend/resume : on tw43 kernels, deepsleep can hang the system. To correct it, their are 2 methods : adding a wakelock or apply a small patch to nbd.c sources.
Some details about qcow2 booting mode :
- standard : qcow2 images are acceded read/write directly on sdcard ( not recommended especially in firsts boot )
- livesnap : qcow2 images are acceded read, writes are done in zram snapshots. commit are done at reboot time : this is the recommended mod. If you install apps, you'd better to reboot first to commit qcow2. Note that if modifications are big, reboot can be long ( few minutes ), be patient. Note also that in this mode, I added a wakelock to fix suspend/reboot of tw roms.
- liveboot : same that livesnap but without commit - Same than a LiveCD in linux world. reboot speed is regular
- fulllive : only for small roms ( say ~500M ). All qcow2 are copied to zram at boot and mounted from memory. No internal/external card needed. very good speed.
- livesnap2 : same than livesnap but without wakelock. Best for speed and battery. Working except tw43. Download my modified dkp kernel to use this option on tw43 roms.
Important recommendations :
- when choosing qcow2, always choose the right nbd kernel as the last zip to install ( and don't reboot after Aroma installer )
Totally forgot about this, I'll have NBD included in my next kernel so this can work
I will add a link to your kernel in first message when it becomes compatible with qcow2 support.
Originally Posted by vbetts
Now does it matter what bootloader you're on for this?
There is no prerequisite about bootloaders versions. Just be sure that your bootloader is unlocked ( I mean that you can install custom recovery images - for example, verizon 4.3 ota update locked the bootloader )
Originally Posted by stanguay
Since I install the V2.0 I can't restore my new backup. I can restore the backup make before V2.0 installation but the one made with V2.0 multiboot.
I try with different TWRP 220.127.116.11 and 2.7.0
Do you have and idea how to fix that.
As multiboot feature does not have relation with this part of twrp, not sure if it is linked with multiboot.
Do you have same behavour with original twr2.7.0 ?
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?