In Android 6.0.x Marshmallow, setting up Link2SD or Apps2SD (not to be confused with “App2SD”) fails all the time. This is two-fold, first, the “ext” filesystem formatting of Marshmallow is different/modified; and second, due to this, all partition apps will never work even if it shows that the partition was successful.
The solution is simple, partition the SD card under Lollipop/Kitkat; or under Linux/Windows. But both have pros and cons which will be explained later.
Partition the SD card
- Insert the SD card in your old Lollipop or Kitkat device
- Download AParted from Google Play
- Go to Settings >> Storage and tap “Unmount SD card”
- Still in Settings >> Storage, tap “Erase SD card”
- Launch AParted and partition the SD card: 1st partition should be “FAT32”; and the 2nd partition should be “ext4”
Next, we will setup the newly partitioned SD card in your Marshmallow device.
Setup Link2SD/Apps2SD in Marshmallow
- Insert the SD card in your Marshmallow device and turn it on
- Ignore the “New SD card detected” message
- Download Apps2SD (do not confuse it with “App2SD”) from Google Play and launch it
- Tap “Link apps to SD card”
- A pop-up will appear, choose: ext4
- If your SU/root app have “su.d” support (e.g. SuperSU v2.22 and above), choose “I’ve su.do support on my device. I’m using SuperSU v2.22+”. Otherwise, choose “Use normal method”.
- Tap “OK” then reboot your device
- Link2SD will now detect the ext4 partition correctly. You can uninstall Apps2SD, or stick with it and remove Link2SD instead. What is important is that you only have 1 symlink app.
If after rebooting the ext4 partition was not detected, repeat steps 4 to 6, but this time choose the option “I’ve init.d support on my device”. If your device does not have “init.d” support, then download Universal init.d from Google Play before choosing this option.
That’s it! You’re done!
- Q: Can I partition in Linux or Windows?
Yes. However, there is a chance that Marshmallow will show a “corrupted SD card” message. It is not corrupted, the SD card detection algorithm of Marshmallow is stricter (or different) than the previous Android versions. When it reads an SD card, it was expecting something but found it not. Continue as usual, the ext4 partition is working as intended.
- Q: Can I use Apps2SD partition feature instead of AParted in Lollipop/Kitkat?
Yes. But based on my personal experience, it caused Marshmallow to show the “corrupted SD card” message and it was very annoying. I already informed the developer about it so she can take a look what’s different in the implementation of AParted and her own Apps2SD app.
- Q: Why use Apps2SD to setup the ext partition and not Link2SD?
Because Link2SD’s mount script is not working in Marshmallow, however, Apps2SD was updated to work in Android 6. Until Link2SD is updated, we have to use Apps2SD to setup the mount script. Yes, we can fix Link2SD’s mount script manually but why make it harder?
Enjoy your new Marshmallow device!
Important Reminders and Disclaimers
- Your device must be rooted already.
- I am not responsible to what may happen with your device. Each rooted device and each person handling it are unique.
- Your SD card, obviously, must not be heavily used already. SD cards have a set limit of “write”. It slows down and might even break after that. Use a new SD card for every new device.
- Again, you are taking a risk, on your own.
- This guide was tried and tested, first-hand experience, not stolen nor copied.
Related articles across the web
[How-To] Setup Link2SD/Apps2SD in Marshmallow by Yuki (雪) is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Permissions beyond the scope of this license may be available at Legal Notice.