[Galaxy S III Original Android Development] droidphile:
DualBoot FAQs

Dual Boot FAQs

* "Alternate Recovery" or "Embedded Recovery" is embedded recovery that's the part of kernel since 1.7.x versions when dual booting was introduced. It's the recovery you boot into using "Reboot to 2nd Rom Utils" in STweaks.

"Regular Recovery" or just "Recovery" is your CWM recovery in recovery partition (/mmcblkp06) which is accessed by 3-button method or "boot to recovery" in the extended power menu from your rom.

1. "Why would I wanna dual-boot?"

A. You don't have to.

Suppose you're more of an aosp rom fan. But misses the HDMI out, FM radio and love sammy camera more. Do a minimal installation of sammy rom and boot into it when in need of these features and use aosp rom otherwise.

Or you are a sammy rom fan but love the responsiveness and pure android feel of aosp roms.

And while you can dual boot two sammy or two aosp roms, it doesn't make any sense.

2. "What if I don't need dual booting?"

A. No issues. Kernel won't force to setup 2 roms. You can single boot as before. And if you don't want to see the Siyah logo as well, create a .nobootlogo file without any extension or content in internal SD.

3. "Will dual booting change my bootloader or do any dangerous stuff like setting my phone on fire?"

A. NO. Changes are at kernel and ramfs level only. Some space in your internal sd card is used, and also the unused hidden partition mmcblk0p10 is used to store cache of second rom. Dual booting doesn't repartition the filesystem or perform anything scary.

4. "I want to setup dual booting."

A. There are four situations:-

1) Sammy rom now. Want to use aosp as secondary.

2) Sammy rom now. Want to use aosp as primary.

3) Aosp rom now. Want to use sammy as secondary.

4) Aosp rom now. Want to use sammy as primary.

Special Cases:-

5) Use an existing nandroid backup as 2nd Rom (and existing rom as 1st)

6) Use an existing nandroid backup as 1st Rom (and existing rom as 2nd)

Prerequisites for any setup is

a) Flash latest Siyah

b) Atleast 90% battery left.

c) 2 GB free on internal SD.

d) Some spare time

1) Present sammy, setup aosp as secondary:-

i) Hit "Run 2nd Rom Utils" in Stweaks app from your current rom. This will run the embedded recovery in the kernel. Under dual boot options, wipe 2nd Rom data and cache+dalvik. Format 2nd Rom System.

ii) Using install zip to 2nd rom option, flash aosp rom as 2nd rom.

iii) Fix 2nd Rom permissions

iv) Flash Siyah again

2) Present sammy, setup aosp as primary:-

i) Hit "Run 2nd Rom Utils" in Stweaks app from your current rom. This will run the embedded recovery in the kernel. Under dual boot options, Clone 1st Rom to 2nd Rom.

ii) From recovery (your default cwm recovery which can be accessed from extended power menu or 3 button method), full wipe and install aosp rom zip as you'd normally do when you were single booting.

iii) Fix 2nd Rom permissions

iv) Flash Siyah again.

3) Present aosp, setup sammy as secondary:-

Same as (1), instead of flashing aosp to second, flash sammy to second.

4) Present aosp, setup sammy as primary:-

Same as (2), instead of flashing aosp to first Rom, flash sammy.

5) Restore the nandroid backup using "Restore as 2nd Rom" option in the embedded recovery. If there are problems while restoring, wipe 2nd Rom data, cache+dalvik, format second rom /system and try restoring.

6) Clone 1st Rom to 2nd Rom from embedded recovery then restore nandroid backup from your regular cwm recovery.

NOTE:

-To dual boot Two Aosp or Two Sammy roms, just follow (1) or (2) (depending on which one of them you want as primary/secondary), just flash Sammy instead of aosp or aosp instead of sammy.

5. "What things should I be taking care off while dealing with dual booting?"

A. - Make sure to fix permissions of second rom after setting up 2nd rom for the first time or else you're likely to see a black screen.

- If Wi-FI on aosp doesn't work, flash a sammy ICS rom (on to 1st rom or second rom depending on location of aosp) before flashing aosp rom.

- If NFC doesn't work, flash that NFC fix zip you can find on XDA which replaces ICS NFC firmware on aosp with JB NFC fw from sammy.

- Even if you're installing second rom for the first time, wiping data and cache+dalvik of 2nd rom and formatting system of 2nd rom is necessary; As it creates empty 1.5 gb system.img to be used as system partition for 2nd rom and also creates data directory of second rom in /.secondrom dir in the internal sd.

6. "How to boot into primary rom?"

A. Wait for the 3 second timeout or press volume up/power to skip the timeout. Or use the option in Stweaks if you're booted into second rom already.

7. "How to boot into secondary rom?"

A. During the 3 second timeout, press volume down or home button. Or use the option in Stweaks if you're booted into 1st rom already.

8. "Is kernel partition shared?"

A. Yes. Same kernel boots both roms.

9. "If I flash another kernel (that doesn't support db) do I lose dual booting?"

A. Yes

10. "I lost dualbooting after flashing another kernel. I didn't do anything to second rom files in sdcard/.secondrom. How can I get db back?"

A. Just flash the latest Siyah.

11. "Will there be any performance degradation on the rom used as secondary compared to primary?"

A. NO

12. "Will my phone run slow overall because of db?"

A. NO

13. "How to flash a newer version of 1st rom?"

A. As usual, just flash it from recovery. Flash Siyah again if Rom zip flashed another kernel.

14. "How to flash newer version of 2nd rom?"

A. Using stweaks, boot into 2nd Rom utils. Flash the rom using "Install zip to 2nd Rom" under dual boot options. Flash Siyah again if Rom zip flashed another kernel.

15. "Would upgrading 1st or second rom cause other rom to fail on boot?"

A. No. Partitions of other rom are not touched during upgrading.

16. "I miss the recovery I used before, so much.."

A. You can use any recovery. Alternate recovery can be just run using the option in STweaks.

17. "User apps of 1st rom are automatically available for second rom?"

A. NO. However, if you had backed them up using Titanium Backup or similar apps, just restore apps while on second rom.

18. "I wanna keep separate backup for apps in both the Roms, since I use one Rom for say entertainment and other productivity."

A. Setup different backup directory in Titanium Backup in 1st and 2nd rom.

19. "I don't see Stweaks app in second rom."

A. Delete /system/.siyah/stweaks-installed file in 2nd rom. Reboot to second rom.

20. "Do I need to anything special before flashing a newer Siyah?"

A. NO. Just flash kernel as tar or in recovery - whichever you used to do. Kernel image is copied to the unified kernel partition.

21. "How can I run same STweaks settings of 1st Rom in 2nd Rom?"

A. While on 1st rom, copy the file /data/.siyah/default.profile to /data/media/.secondrom/data/.siyah directory. If you modify STweaks settings in 2nd rom and want to avail same settings on first rom, do the other way around. (Copy "default.profile" from /data/media/.secondrom/data/.siyah to /data/.siyah while on 1st Rom)

22. "How do I remove everything related to DB and run single boot again?"

A. In recovery, under dual boot options - "delete 2nd Rom". OR Delete .secondrom directory in /data/media while on 1st Rom.

23. "If secondrom files are kept in /data/media, will wiping data in recovery erase second rom files?"

A. NO. /data/media is skipped in CWM recovery.

24. "I was using ExFat card on sammy rom without any issues. I have setup dual boot with aosp and now after booting into CM it says microSD card is corrupted."

A. Aosp roms doesn't support ExFat out of the box. The data was corrupted by aosp vold. Even if you boot back to Sammy rom, it still would be corrupted. To recover data, manually mount the card in recovery, copy contents to internal SD and reformat card to a Fat32.

Also try

chkdsk X: /f (where X is the drive letter of microsd), you may be able to copy data.

25. "I read somewhere that both rom data partition use the same space. Doesn't that mean my apps are shared across roms?"

A. NO. It just means they uses same partition. They're still different directories.

1st rom data = /data

2nd rom data = /data/media/.secondrom/data

26. "Will hitting "Reboot to 2nd Rom Utils" in STweaks change my recovery?"

A. NO. It just runs (not flash) an alternate recovery so that you can configure dualboot settings. Using extended power menu or 3 button method, you always lands in your own CWM recovery.

27. "How do I backup 1st Rom and 2nd Rom?"

A. To backup 1st Rom, do what you did to backup rom while you were single booting a while ago.

To backup 2nd Rom, use the feature embedded recovery, which can be accessed using "Reboot to 2nd Rom Utils" in STweaks app.

28. "I booted into recovery using 3 button method. But some dual-boot options are not working even though dev said they're implemented.

A. Use "Reboot to 2nd Rom Utils" in Stweaks app to boot to embedded recovery.

29. "DB architecture?"

A. Like you know, every rom has a /data, /system, /cache partition and a kernel to boot.

For primary rom, it's

mmcblk0p12 = /data

mmcblk0p9 = /system

mmcblk0p8 = /cache

And these won't change whether you're single booting or dual booting.

For secondary rom, data and system is stored in internal sd, cache in hidden partition. Note that internal sd in our device is mounted to /data/media.

We have data as a directory, System as an image in data/media/.secondrom. Cache in mmcblk10 which is hidden partition and not used otherwise.

- When second rom is booting, second rom data is bind mounted to mmcblk0p12 as /data/

- data/media/.secondrom/system.img partition is mounted as /system.

- mmcblk0p10 is mounted as /cache.

More FAQs will be added and the list will be updated as DB is improved.