Backing Up Data on Android Phones

Posted by Amit Shah on January 15, 2014

Experimenting with the new cyanogenmod builds for Android 4.3 (cm-10.2) resulted in a disaster: my phone was setup for encryption, and the updater messed up the usb storage such that the phone wouldn't recognise the in-built sdcard on the Nexus S anymore.  I tried several things: factory reset, formatting via the clockworkmod recovery, etc., to no avail.  The recovery wouldn't recognize the /sdcard partition, too.

Good thing I had a backup, so I wasn't worried too much.

I could use adb when CWM recovery was booted, to navigate around.  Using fdisk, I could see the /sdcard partition was intact, but wouldn't get recognized by either CWM or the kernel.  I deleted the partition, and created a new one with the same parameters.  Also used the opportunity to try out ext4 instead of the default fat.  CWM still wouldn't recognize / mount this partition, but the android kernel does recognize it.  However, mounting the card as USB storage still doesn't work.

So I've now fallen back to using adb + rsync as my backup solution: usb-tether the phone to the laptop, note the IP addr the laptop got, and then from an adb shell, just issue

'rsync -av /sdcard/ user@laptop-ip:/path/to/backup/'

This is working fine.  adb push/pull also work quite well, and I don't really miss the 'mount as usb storage' functionality much.  I'll however try fixing this issue, since encryption isn't working as well -- so the key would be to ensure CWM recovery identifying the partition.  I'm guessing if that works fine, the remaining bits would be fine too (mounting usb storage, encrypting it, etc.)

I use GOBackup from the Play store to backup apps+data.  oandbackup from the fdroid store looks nice, but crashes a lot.  It's being constantly updated, though, so it has promise to become a nice backup app.