• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[APP][ROOT][5.0+][1st Nov 2020] Migrate - custom ROM migration tool

Is Migrate backup and restore working without any errors?


  • Total voters
    816
Search This thread

73sydney

Senior Member
Jul 21, 2018
1,865
1,613
Sydney
Google Pixel 2 XL
How to backup to SD Card? Tried installing exSD enabler module or something in magisk, still couldn't backup to SD. The same warning to install the exSD module keep popping up even after it already flashed.

Are you out of storage on internal?, because thats the only time id even think of trying to use that ext sdcard module...and even then id rather free up some space and then copy to another path afterwards...

I have found the ext SDcard module quite a bad idea. Backup to internal, and transfer manually if needed. Installing that module, which messes with the default paths of a ROM isnt worth the risk as ive seen it break things on some ROMs

In general i dont install an app or module for something i can easily do manually...copy files to another path for example
 
  • Like
Reactions: maybeme2

vindicatorr

Member
Jan 20, 2013
36
4
Multi-user/profile issue.

LineageOS: 18.1
Migrate-GPE: 4.0 gemini release
Magisk: 23.0

CPU_ABI: arm64-v8a
Brand: motorola
Manufacturer: Motorola
Model: Moto Z3 Play
Device: beckham
SDK: 30
Board: SDM660
Hardware: qcom

--- No warnings! ---

--- All errors ---

Backup cancelled because system check failed.

SYSTEM_TESTING_ERROR: sh: /storage/emulated/11/Android/data/balti.migrate/cache/test.sh: Operation not permitted
Test apk not found or not properly created
Test data (tar.gz) not found or not properly created

--- Backup Name : Backup_2021.07.31_17.52.51 ---
--- Migrate version 4.0 ---
EDIT0: I should add that it works fine for the main/root/0 profile.
EDIT1: Nevermind I think... Everything that was put on the sd-card went bust.
I had forced the format as Internal Storage using "$ sm partition private", and while things appeared to work for a moment when I put stuff on the sd-card, everything would end up going corrupt.
I now went ahead and formatted as Portable (only option actually available), and moving Music seemed fine.
But even as Portable, it's useless for multi/secondary users, since they don't have access to it... sigh... What a pain.
Even apps that ask for permission (eg. musicolet), don't get the option to select the sd-card. It's unreal how storage security is handled 11 versions later. I don't expect things will change in 12.
 
Last edited:

IamTheBRAVE

Senior Member
You dont even need TWRP to restore a backup...you just install the Migrate App form the store and install the flash and helper modules when prompted to restore from within the ROM itself. If you want to be clever you can install these, and then back them up with something like MyAPK and store them in your /sdcard/Migrate folder along with your backup, to install locally on new flash and then use them to restore - its what i do 3 or 4 times a week testing ROMs...

Specifically:

Install (if you dont have them already):

Flasher module: https://play.google.com/store/apps/details?id=balti.migrate.flasher
Helper Module: https://play.google.com/store/apps/details?id=balti.migrate.helper
MyAPK: https://play.google.com/store/apps/details?id=com.andatsoft.myapk.fwa

Then open MyAPK, locate and backup to /sdcard/Migrate:

Flasher Module
Helper Module

Come restore time after new ROM flash:

Go to /sdcard/Migrate and install:

Flasher Module
Helper Module

Run Flasher module and flash zips, at completion it will ask you to open Helper module, which will be already installed, flash the apps you want to restore, and reboot

Make life easier for yourself...

But if youre determined to use TWRP method:

I would be checking with the TWRP maintainer for your device first

Theres plenty of devices where TWRP versions display different issues between builds

The Migrate app and scripts are the same...so that leaves with the logical step that the issue is TWRP related...

For my device, Pixel 2XL, on Android 11 we generally dont install TWRP, so fastbooting is the way to go...i have a number of different TWRP versions because some have issues for certain functions, and just fastboot the one i want
This should be added in op post. Looks like the safest and easiest way to go.
I have a new phone and planning to migrate all i have to it (after installing custom rom). Flashing new roms on my device has always been a pain to me because i've been losing my call and contact names and data backups tend to just sit on my thumb drive when i like a rom and stay on it a while.
I only need data backup for a couple of apps usually. So the most helpful part of this app is the extra tab and the ability to restore all at once after rom flash.
Thanks to this app's developer for thinking about us custom rom flashers👍
 

maybeme2

Senior Member
Aug 28, 2015
2,185
636
I just discovered your app and installed the Migrate NG version on my rooted Moto G7 running android 10. It installed with no problems.

I tried a backup of all my apps and that succeeded with no errors. Bravo!

I understand twrp is not needed to restore (the earliest messages in the thread 'suggest' restore is through twrp).

I realize that 2 helper apps are needed to restore without twrp.

1. Are the helper apps only available in the playstore? Can they be downloaded from GitHub?

2. I've used Titanium Backup till now. One of the advantages of TiBu for me was the automatically scheduled backups with a set maximum of 2-3. Does Migrate have the ability to automatically backup apps and data once or twice a week?

3. Can Migrate NG create a nandroid backup like twrp?

Thank you.
 

maybeme2

Senior Member
Aug 28, 2015
2,185
636
Here's the twrp wording that suggests twrp is necessary.
 

Attachments

  • Screenshot_20210810-161731.png
    Screenshot_20210810-161731.png
    393.2 KB · Views: 36

73sydney

Senior Member
Jul 21, 2018
1,865
1,613
Sydney
Google Pixel 2 XL
I just discovered your app and installed the Migrate NG version on my rooted Moto G7 running android 10. It installed with no problems.

I tried a backup of all my apps and that succeeded with no errors. Bravo!

I understand twrp is not needed to restore (the earliest messages in the thread 'suggest' restore is through twrp).

I realize that 2 helper apps are needed to restore without twrp.

1. Are the helper apps only available in the playstore? Can they be downloaded from GitHub?

2. I've used Titanium Backup till now. One of the advantages of TiBu for me was the automatically scheduled backups with a set maximum of 2-3. Does Migrate have the ability to automatically backup apps and data once or twice a week?

3. Can Migrate NG create a nandroid backup like twrp?

Thank you.

1. Yes, only from playstore afaik

2. No, no automated backup

3. No, nandroid backups require recovery (twrp). Migrate does only what it says in the opening post.
 

maybeme2

Senior Member
Aug 28, 2015
2,185
636
Thank you
1. Yes, only from playstore afaik

2. No, no automated backup

3. No, nandroid backups require recovery (twrp). Migrate does only what it says in the opening post.
Thank you for taking the time to reply.

It would be nice if automated scheduled backups were implemented at a later time. That way it could be 'set and forgotten'.

One other feature is an option to disable apps even if system settings does not provide that option. I often used that option to 'freeze' apps in TiBu. I am not an android expert. Is there another way to disable apps (and restore them)? Perhaps via adb or something else?

Seems to be a great app!
 

BillGoss

Senior Member
Sep 2, 2010
4,728
4,145
Sydney
OnePlus 3T
OnePlus 8T
Thank you

Thank you for taking the time to reply.

It would be nice if automated scheduled backups were implemented at a later time. That way it could be 'set and forgotten'.

One other feature is an option to disable apps even if system settings does not provide that option. I often used that option to 'freeze' apps in TiBu. I am not an android expert. Is there another way to disable apps (and restore them)? Perhaps via adb or something else?

Seems to be a great app!
In that case, have a look at https://play.google.com/store/apps/details?id=org.swiftapps.swiftbackup
 

73sydney

Senior Member
Jul 21, 2018
1,865
1,613
Sydney
Google Pixel 2 XL
Thank you

Thank you for taking the time to reply.

It would be nice if automated scheduled backups were implemented at a later time. That way it could be 'set and forgotten'.

One other feature is an option to disable apps even if system settings does not provide that option. I often used that option to 'freeze' apps in TiBu. I am not an android expert. Is there another way to disable apps (and restore them)? Perhaps via adb or something else?

Seems to be a great app!

Automated backups waste space...a Migrate backup for my device is about 5Gb...i have a 64Gb Pixel 2XL whos sdcard has my app data and media on it, leaving me 16Gb, ill let you do the math :) I do a backup about once a week (more if im just about to flash a new ROM), and move it off the device. Thats my backup schedule. Im not sure id want several backups on a device, only to see the eventual happen where a flash goes badly leaving no access to all the automated backups....one backup a week, backed up to PC...hasnt failed me yet...putting all your eggs in one basket has never been a solid backup strategy. None of my apps update more than once a week either....

If youre determined to do automated backups, maybe have a look at @flar2 's new app in Beta:


As for freezing apps...youre better off debloating (pseudo removing them) them if you dont use them


Reversible
 

73sydney

Senior Member
Jul 21, 2018
1,865
1,613
Sydney
Google Pixel 2 XL
But swiftbackup requires user's Google account info and internet access because it backs up users data to their servers. Not ideal for users who are concerned with privacy and use a firewall. Also 3 trackers.

Please dont be one of those microg tinfoil hat types :)

Youre using android, Google invented it, deal with it

Theres a ROM in my devices thread where they do all that microg shizz and the ROM post also advises on how to wear hats and glasses to conceal your identity...but my favourite is the bullet point that tells you to buy a faraday bag to keep your phone in when not using it. Defeats the purpose entirely of having a phone 🤦

I shake my head at the level of conspiracy level horseshizz i see on here

Paranoid is not how i chose to spend my life

Fun fact: google own backup built into android doesnt backup most user apps, that option has to be enabled by the app's dev. What most people find out is theyre not actually half as data mined as they think they are or as panic merchants on infowars/joe rogan try and portray...i get one person a fortnight asking me why "xxxx app" isnt backed up, because they have to factory reset their phone and their app data is nowhere to be found when they sign back into google

Reality...its oftentimes not what infowars/joe rogan says :)

MicroG, making android harder for absolutely no valid reason...
 

hansxl

Senior Member
Nov 18, 2009
349
68
But swiftbackup requires user's Google account info and internet access because it backs up users data to their servers. Not ideal for users who are concerned with privacy and use a firewall. Also 3 trackers.
There are plenty of apps which you can use for freezing/disabling. Maybe you like

App Manager - Android package manager (A full-featured open source package manager for android.) - https://f-droid.org/packages/io.github.muntashirakon.AppManager
 

maybeme2

Senior Member
Aug 28, 2015
2,185
636
Automated backups waste space...a Migrate backup for my device is about 5Gb...i have a 64Gb Pixel 2XL whos sdcard has my app data and media on it, leaving me 16Gb, ill let you do the math :) I do a backup about once a week (more if im just about to flash a new ROM), and move it off the device. Thats my backup schedule. Im not sure id want several backups on a device, only to see the eventual happen where a flash goes badly leaving no access to all the automated backups....one backup a week, backed up to PC...hasnt failed me yet...putting all your eggs in one basket has never been a solid backup strategy. None of my apps update more than once a week either....

If youre determined to do automated backups, maybe have a look at @flar2 's new app in Beta:


As for freezing apps...youre better off debloating (pseudo removing them) them if you dont use them


Reversible
Thanks. Good ideas.
My device has a second separate sdcard. That's where my backups go. So they're available even if the phone crashes. And every now and then I back everything to my laptop. Belt and suspenders....

But you are right it does waste a lot of space despite my large sdcard and I'm willing to learn despite my advanced age.

Thanks for the suggestions. I'll gratefully explore them.
 
  • Like
Reactions: 73sydney

maybeme2

Senior Member
Aug 28, 2015
2,185
636
Please dont be one of those microg tinfoil hat types :)

Youre using android, Google invented it, deal with it

Theres a ROM in my devices thread where they do all that microg shizz and the ROM post also advises on how to wear hats and glasses to conceal your identity...but my favourite is the bullet point that tells you to buy a faraday bag to keep your phone in when not using it. Defeats the purpose entirely of having a phone 🤦

I shake my head at the level of conspiracy level horseshizz i see on here

Paranoid is not how i chose to spend my life

Fun fact: google own backup built into android doesnt backup most user apps, that option has to be enabled by the app's dev. What most people find out is theyre not actually half as data mined as they think they are or as panic merchants on infowars/joe rogan try and portray...i get one person a fortnight asking me why "xxxx app" isnt backed up, because they have to factory reset their phone and their app data is nowhere to be found when they sign back into google

Reality...its oftentimes not what infowars/joe rogan says :)

MicroG, making android harder for absolutely no valid reason...
You are correct of course. But I think of it as locking your front door. Burglars can still break in but it makes it a little harder. So I use a firewall and avoid unnecessary risks or permissions. Probably futile but it makes me feel better.
 
  • Like
Reactions: lpedia and 73sydney

fonzacus

Senior Member
Jun 23, 2016
159
21
30
30 Seconds From Mars
Xiaomi Redmi 8
complete the following sentence
this is blasphemy, this is madness!
madness? ...

huge kudos for the awesome app, its like black magic. i tried packing up some apks in a flashable twrp zip before, but couldnt figure out the data parts. permissions etc are way above my pay grade. yep, its black magic, but good black magic.

hopefully it can work out for all twrp users out there, this app deserves to be the nambawan backup app.
 

maybeme2

Senior Member
Aug 28, 2015
2,185
636
The beginning of this thread says
"The restoration process is handled by a helper app, which deletes itself after restoring everything."

Why does the helper app delete itself after restoring everything? Why does the helper app not remain available for the next restoration?
 

thaidroid

Senior Member
Dec 10, 2010
3,197
1,325
Pattaya (Thailand)
OnePlus 5T
The beginning of this thread says
"The restoration process is handled by a helper app, which deletes itself after restoring everything."

Why does the helper app delete itself after restoring everything? Why does the helper app not remain available for the next restoration?
It's there again if you flash the backup another time
 
  • Like
Reactions: maybeme2

keithscot

Member
Apr 18, 2021
7
0
Been using Migrate fine on Lineage 16.1 and 17.1 but with Lineage 18.1 (with Magisk) I cannot backup to either sdcard or internally. The migrate backup fails because the zips don't get written to the internal space. Any ideas? Is it possible to manually set the path for where the backups are stored?
 

Attachments

  • Screenshot_20210817-224417_Migrate-NG_(new).png
    Screenshot_20210817-224417_Migrate-NG_(new).png
    486.2 KB · Views: 19

Top Liked Posts

  • There are no posts matching your filters.
  • 3
    Is there a link to a tutorial if I want to switch from stock to custom ROM on a Pixel 3 that doesn't have TWRP?


    TWRP is NOT required, the dev could really make that clearer in his opening post (ill drop him a note). It USED to require TWRP, but now has 2 helper apps that do the restore within the ROM, no custom reovery needed

    How i use it (TWRP free), and sometimes post for others:


    Or more clearly (reposted) here recently:

    2
    Spotify ask me for the password again and gmx mail did not work hat to readd my account.. all other apps worked ootb :) nice work

    Not every app will seamlessly make the migration and run like it did pre migration....case in point, i never tick the data column for Samsung Wear, Health or Health Monitor, or my banking apps - i log in to all agian after migration. After a while you will figure out which apps to untick data on and just login to those once migrated - it will save you having to clear data on them post migration :)
    1
    post the logs...and or screenshots

    Menu (top left) -> Last Logs
    I needed to wipe everything, I'm sorry. I think I made something wrong, but if ever happens again I will get the log before wiping.
  • 586
    Jumping from one custom ROM to another can be a challenging task. So I decided to make an app to simplify the process.

    Introducing
    Migrate!

    Migrate-GPE (v4.0) is on Google Play
    It was temporarily suspended. Read more here: https://forum.xda-developers.com/showpost.php?p=82230451&postcount=1273

    Download from Google Play Store
    Download from AndroidFileHost
    Download from XDA labs

    migrate_1.png


    With Migrate, you can back up:
    1. App apk
    2. App data
    3. App runtime permissions
    4. Contacts (as vcf file)
    5. SMS messages
    6. Call logs
    7. Current ROM screen DPI
    8. Current default keyboard option
    9. App installer (Migrate 3.0)
    10. Adb state (Migrate 3.0)
    11. Font scale (Migrate 3.0)

    ... everything in one app.

    migrate_3.png

    migrate_4.png


    Ok. So its just another of those backup and restore apps, right?

    Sort of... but with a twist.
    Restoring everything requires flashing the backup via TWRP.

    migrate_recovery.png


    All your apps and data are restored to a directory under /data/balti.migrate, /data/local/tmp/migrate_cache (from v2.0+) and a helper app is injected into the system.. Once you boot up your new ROM, the app will spring up, ask for root permission and do all the job while you can relax.

    migrate_helper.png


    Donations:
    Well, the app already has ads, so you need not explicitly donate anything :p
    But if you are feeling reaalllyyy grateful for the app, you can donate here: paypal.me/sayantanrc
    Thanks.

    Migrate Gemini (v4.0) release

    Hello everyone.
    Migrate 4.0 is now released.

    There are 2 editions of Migrate.

    Migrate NG: This is the Non-Google and Beta edition. It is not published on Google Play store. It will continue having in-app updates. Moreover new features will be tested on these builds first. People who did not like firebase analytics, this edition is for you as it does not have firebase SDK anymore. However, Google admob ads are still present.

    Download link (NG): https://www.androidfilehost.com/?fid=10763459528675575696

    Migrate GPE: This version is Google Play Edition. It is the stable version. It does not have in-app updates anymore as it violated Google Play policies.
    Download on Google Play: https://play.google.com/store/apps/details?id=balti.migrate

    Coming from alpha 3.1, if you update via the in-app updater, you will be switched to the Non-Google Edition.

    Thank you.

    Want to translate the app?
    The strings.xml file is available here: https://github.com/SayantanRC/translations

    Telegram group!
    We now have a Telegram group for migrate:
    http://t.me/migrateApp
    This is not to rival XDA but only another form of communication between users and me :)
    Thanks.
    138
    FAQ:

    Click here for Troubleshooting options

    If you are facing issues while flashing, refer to this video: https://youtu.be/0Cp6TNayXnM
    Full manual extract guide: https://forum.xda-developers.com/showpost.php?p=82198185&postcount=1269

    How is this app different from Titanium backup?
    This app is a ROM migration tool. It not only backs up app and data, but also contacts, SMS, call logs etc. Moreover, the restoration process also involves flashing via TWRP. Titanium backup is an excellent app. Migrate just views the restoration process differently.

    Do I need to download the Migrate app to restore the apps?
    No. Only your ROM needs to be rooted. The restoration process is handled by a helper app, which deletes itself after restoring everything.

    Is it necessary to use Magisk?
    The app works best with Magisk. Other options like Lineage OS su addon causes weird errors like incomplete file copy, etc.

    All apps are restored from recovery?
    No. That is not possible. Because Recovery is a completely different environment from Android. Think of it as installing a Windows game from a Linux distro. Instead from recovery, an app is injected into system which takes up the restore process when android boots up. Most things are automated, so you need not worry much.

    A quick word on SD card support...
    SD card support in v2.0 requires a Magisk module "ExSDCard Access Enabler", made by developer Romain. According to him, this module requires FUSE support on ROMs. FUSE is supported on some ROMs as a legacy feature as Android has moved away from FUSE to SDCARDFS. As such, the current implementation may or may not work based on your device and ROM.
    If it does not work for you, please wait until either the module developer rewrites the module :p or I find a different implementation :) Thanks for your patience.
    57
    Just posting this for everyone to know.

    An alpha build of Migrate 3.0 should be ready by the end of this month. The version should support Android 10, and will come with new features.

    In the main app, backup and all new features are fully operational. But the helper app is not ready yet. I am working on it. That should be ready by this month.

    Please hold on a little. Thank you for your support. ?
    52
    Changelog

    Version 4.0 [1st November 2020]

    # Compatibility fixes for Android 11
    # Add Message center to display important announcements.
    # Migrate helper now allows to retry failed apk installs
    # Add a "Migrate flasher only" backup option
    # Save app icons as png files
    # Show number of apps selected for backup in Extra backups screen
    # Keep screen on when calculating backup size
    # Save last state of selection in extras
    # Don't remount /data partition in system test
    # Many under the hood changes

    Version 3.1 [25thApril 2020]

    # Fix issue in v3.1 where restore would not be possible for apps with unsupported characters in the name.

    Version 3.1 [24thApril 2020]

    # Probable fix to data restore problems
    # Probable fix to helper crashing during loading apps
    # Record raw list of files in a backup
    # Many other minor improvements

    Use v3.1.1 above

    Version 3.0.3 [18thApril 2020]

    #. Slightly tweaked logo.
    #. Probable fix to No metadata found after flashing.

    Version 3.0.1 [9thApril 2020]

    #. Bug fixes
    #. Added translations

    Version 3.0 [20th March 2020]

    #. The app is rewritten in Kotlin
    #. Many new preferences have been added.
    #. Helper app is now available on Google Play.
    #. Many fixes in recovery. Support for SAR and Android 10.
    #. Added options for backup of app installer, font scale, adb state
    #. Set max zip size in preferences.
    #. Verification of zips after backup is complete.
    #. Many more changes and improvements…

    Version 2.1 [15th Jan]

    # Minor errors are now suppressed, but recorded in log.
    # Fix icon retention form previous backup
    # Fix wrong backup duration display.
    # Fixed a bug in error correction mechanism.
    # Probable fix for some apps not being backed up.
    # Fix for error 6 in TWRP for some locales.
    # Fixed a long standing wrong /data space calculation in TWRP.
    # Migrate helper no longer uninstalls app before installing.
    # Added Telegram group link!

    Version 2.0.1 [30th Dec] (christmas_beta)

    # Fixed a probable crash in Migrate helper (needs a magisk module)

    Version 2.0 [26th Dec] (christmas_beta)

    # Experimental SD card support (needs a magisk module)
    (please read the previous post)
    # Support for split apks
    # "Abort" option in Migrate helper
    # "Temporary disable" in Migrate helper
    # Apks are now unpacked under /data/local/tmp/migrate_cache
    (probable fix to some devices unable to install apks)
    # Each backup zip now has a busybox file as fallback

    Version 1.2 [12th Nov] (beta)

    # Completely avoid "dumpsys" to backup app permissions
    # Now app data in tar.gz is unpacked in /data/data
    (probable fix to "Operation not permitted" issues in Google Pixel and some other devices)

    Version 1.1.1 [10th Nov] (beta)

    v1.1 (skipping upload)

    # [New] Backup verification before zipping
    # Major code refactoring and under-the-hood changes
    # CANCEL button now kills the backup process
    # Fix to "set_progress()" in recovery
    # Probable fix to "Failed to change locale for db"
    # Probable fix to missing updater-script
    # Probable fix to some "Operation not permitted" issues
    # Remove illegal characters from backup name
    # "Share scripts" option should now work properly.

    v1.1.1

    # Fix to a no-closing-quote issue in helper

    Version 1.0.5 [7th Nov] (beta)
    # Probable fix to "android.os.TransactionTooLargeException"
    # Better in app protection to prevent zips from not being made
    # App version is now written in logs
    # App now targets Oreo instead of Pie to potentially avoid some crashes
    # Fixed unexpected ( in restore process

    Version 1.0.4 [5th Nov] (beta)
    # Improvements to logging
    # Ignore tar socket warnings
    # New update-binary to prevent TWRP error 3
    # Should fix a null String issue while reading backup data

    Version 1.0.3 (beta)
    # Fixed log sharing
    # Share script file in log
    # Blacklist Android system from system app backup list (prevents tar socket error)

    Version 1.0 (beta)
    # Initial release
    32
    Hi @SayantanRC ,
    actually I'm a TWRP developer and i'm working on a lot of devices and recently a bit of users starting to tell me that they can't flash their migrate backups, so I found myself investigating a little and at the end i found the problem: in the migrate zips that migrate app creates, there are some commands that use busybox that actually is deprecated and not more used in TWRP. Can you please use generic commands or make a choice to use toybox instead of busybox?
    For example this command:

    run_program("/sbin/busybox", "umount", "/data");

    Can be replaced from this one:

    unmount("/data");

    Or another option is to include a fully busybox set of binaries in the migrate zips so they will be independent. If you need some help or explanations contact me.

    P.s. i already sent also a mail to your play store supprot email.