1

I have Shield Android TV device. Everything was working well until I decided to adopt an SD card following Android 6.0 release. Everything still works mostly well, a little bit slower but OK. The problem I have is with the applications which need to write/read a lot of data.

I'd like to buy a faster external storage (probably an external SSD USB drive) and adopt it. Is there a way to clone the SD card to a new adoptable storage without resorting to moving everything from the SD card to external USB drive, changing the adopted storage and moving the data back? I'm not sure will it even work?

  • Afraid nobody has tried that yet. One of the drawbacks of adoptable storage is you cannot easily replace the card (see our adoptable-storage tag-wiki) – especially not if you need more room and want to use a bigger card. Your case might be different, though, if the new card is faster but of the same size. Do you have a Linux machine available, where you could attach the card using a card reader? If so, you might be able to use the dd tool (disk duplicator) to create a bitwise copy and write that to the new card. – Izzy Apr 10 '16 at 21:29
  • I can install a virtual machine, no problem. I'm not sure if that will work with the external USB SSD drive. I was hoping that at least I can use Shield to copy the files to USB and back to new adopted storage but I can't find if anyone tried that procedure. The more I'm reading about adoptable storage I'm realizing how bad idea it was to include it in Android in its current form. – Vladimir Apr 10 '16 at 21:48
  • Well, I wouldn't use it at all – but that's a different thing. As copying file-wise is unlikely to be successful on restore (how will you ensure a "consistent snapshot" with the system running?), a "cold copy" might be the better approach. Here my theory: shutdown the Android device, pull the card, put it into a card reader, attach to PC. PC won't mount it ("unknown file system"). Do a dd of the entire card (e.g. dd if=/dev/sdc of=sdcard.img, then restore that to the new card (swap if/of). Put the new card into the device, boot. If it doesn't work, you still have the original card. – Izzy Apr 10 '16 at 22:54
  • I tried the same method (as Izzy described) and it failed. I'm using ad sd card of same size yet after inserting the 2nd card (Samsung EVO) the system was complaining about not finding the old card (Sandisk). Do you have any clues about what else I need to do so that it works for me too ? – remyvrs Oct 20 '16 at 8:36
2

I tried the dd method as described by Izzy and it worked, the new sd card is recognized as the same adopted storage and all the apps and data is available.

However there are two big caveats:

  1. the dd command creates an exact copy so even if your new card is larger than the old you will still get the same size for your drive and some empty space after that. Say you go from 16GB to 32GB, on the new card you will get 16GB adopted storage and 16GB free space.
  2. It took ages to complete, especially the second step. Much longer that would have taken doing a manual backup/restore.

So even if your mileage may vary, I wouldn't recommend cloning in any case.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.