I have a micro SD card adopted by an Android phone as internal storage extension. While being adopted it was partitioned/formatted by the phone with two ext4 partitions: android_meta and android_expand, which is easily decryptable in a Linux laptop using the key under /data/misc/vold. I'd like to free up some space on the card for an "external" aka "portable" partition for music storage etc, ideally using that Linux laptop: the idea is to shrink android_expand somehow. How do I do that? E.g. GParted won't let me do it - if that's just 'cos it's encrypted can I perhaps decrypt it, write it back onto the card, move/resize it as necessary using GParted or the like and then encrypt and write it back again? Thanks in advance!
-
Your question here has two issues... One is that the phone will not recognize two partitions on the SD card (one encrypted and one "external") it just won't work in a normal phone (you might be able to do some root access trickery, but I can't guarantee it). Your best bet is likely going to be to insert it into the phone, copy off all the data, then "forget" that SD card and reformat it as external storage.– acejavelinMay 15 at 18:00
-
@acejavelin that'd deprive me of the internal storage expansion though, right? I need them both. If my phone (a Samsung A3 2017) natively supported Adoptable Storage feature perhaps I'd be able to dual partition my card with "sm" and have the phone adopt one of them (exactly that worked for lots of phones with MM 6 and Nougat 7), but seems like Samsung decided to mask that feature and the only patch unmasking it that I know kills sm and the phone partitions entire card as adoptable.– dandreyeMay 15 at 18:07
-
1Dual partitioning thread: forum.xda-developers.com/t/…– dandreyeMay 15 at 18:13
-
The point it is that to my knowledge you cannot resize a partition encrypted in this manner.– acejavelinMay 15 at 18:38
-
Can I maybe manually create a similar but smaller one (instead of existing autocreated one) and make it look same to the phone, so that it doesn't notice the change?– dandreyeMay 15 at 18:46
1 Answer
Android 6.0 Adoptable Storage is FDE encrypted
Android 7.0-8.1 does not support Adoptable Storage for FBE encrypted devices
Android 9+ Adoptable Storage is FDE and/or FBE encrypted
this for FDE encrypted Adoptable storage only
you can partition mixed from sm
Split external SD card partially into adoptable storage and portable storage
to backup files use gnu tar
with selinux flag
Can't access my phone memory suddenly after using SD card as internal memory
-
thanks so much: that really helps explain my issues around it with Android 8. Will it be any different if I turn that encryption off? The patch unmasking Adoptable Storage feature in my phone was supposed to turn it off but it doesn't seem to be able to do it as encryption is there.– dandreyeMay 16 at 8:19
-
I don't have any there: they're all under / (this is SM-A320FL) and neither of them has such parameter. The patch I'm using appends ",encryptable=userdata" behind any occurence of "voldmanaged=sdcard:auto" it comes across, which I understand is mandatory for the card to be considered an Adoptable Storage candidate (and not for its immediate encryption during adoption) based on this: source.android.com/docs/core/storage/config#adoptable_storage– dandreyeMay 16 at 10:07
-
SM-A320FL is FDE regardless of the android version, so no need to disable encryption– alecxsMay 16 at 11:52
-
But when I plug the card into Linux it won't open unless I decrypt it using dmcrypto and the key under /data/misc/vold. Meanwhile TWRP opens it just fine somehow...– dandreyeMay 16 at 12:13
-
TWRP does the same as you manually do in linux, it decrypted adoptable storage with /data/misc/vold so no need to disable encryption at all– alecxsMay 16 at 13:38