This website uses cookies to ensure you get the best experience on our website.

8 min read 530 Shares 45 comments

How to format MicroSD cards as internal memory

Do you want to use your MicroSD card as a real memory extension and install apps on it? Then you have to format it as internal memory. Unfortunately, some manufacturers such as Sony, LG or Samsung, can't do this from the factory. But if your smartphone has Android Marshmallow or newer, a command-line prompt will help. Prevent grief from system updates by following the new tips at the beginning of this article.

Android updates and Nougat issues with this method

Some readers have reported difficulties when installing system updates. The update to Android 7.0 Nougat especially does not seem possible with the manually partitioned MicroSD cards as described below. Our review devices, which have already been updated to Android 7.0 Nougat, do not even respond to the console commands shown below.

In the absence of documentation on the net, we can therefore only advise you to reverse the steps described below before a system update. Back up photos or music on your computer or in the cloud and free up as much memory on the SD card and smartphone as you can. Uninstall unnecessary apps and migrate your data back into the internal memory. Then format the MicroSD card as removable media. Only then is it safe to install an Android update.

There was no problem in Android 6.0 Marshmallow

When a MicroSD card is formatted as internal memory, apps can be completely stored on it. This means that if you download applications with a total size of 2 GB, then there should be 2 GB of space taken up on the SD card. If, however, the MicroSD card is only formatted as a backup memory, this is not the case, as PLATYPUS_DIARRHEA writes on Reddit.

With an option in Android Marshmallow, it is theoretically possible to treat MicroSD cards as internal memory. It allows the complete migration of your apps with their data. So the smartphone memory is actually expandable. Unfortunately, some smartphone manufacturers have omitted the menu option to format SD cards as internal memory for their Marshmallow variant.

androidpit micro sd 3
Use only fast MicroSD cards, otherwise the memory upgrade will be a tempo downgrade. / © AndroidPIT

Can't do it, it's not there

Just because the menu option is invisible doesn't mean that it doesn't work. A few days after the Reddit post, a command-line prompt became known, with which someone could also format MicroSD cards as internal memory in the Galaxy S7. We have successfully tested the instructions with the Samsung Galaxy S7, the Sony Xperia Z5 and the LG G4 while running Android 6.0 Marshmallow.

All three smartphones run from the factory, or via update, with Android 6.0 Marshmallow and have a slot for MicroSD cards. In addition, the menu option for formatting the MicroSD card as internal memory is missing. The entry is only available with HTC in the One A9 and with Motorola in all Moto smartphones.

Darth Vader micro SD ANDROIDPIT
Come to the dark side of memory expansion. / © AndroidPIT

Why Samsung, LG and Sony do not show us this menu option escapes me. I connected each of the three smartphones to the computer, and each had one MicroSD card inside.

Then I typed into the ADB tools the command-line commands that Paul O'Brien described in his blog post. As soon as you have the command line window open and the smartphone connected, you can enter the first command:

adb shell

Now the command line is ready for you to issue system commands to your smartphone. In this case, we want to format the SD card or a part of its memory as an internal memory. Even if Sony, Samsung and LG deny us the possibility by a graphical user interface, we can still transfer the command to the smartphone as a console command. First, however, we need the ID of the SD card. We find these with the following command:

sm list-disks

In my case, the disk is called 179.64. For you, perhaps, it is different. Note the exact identifier. In the next command, we will format and partition the MicroSD card. Your content will be deleted. If important files are on the card, copy them to another disk. If you want to keep the MicroSD card permanently in the smartphone, you can now partition all of your memory. To do this, type:

sm partition disk: 179.64 private

The operation takes several seconds or minutes, depending on the capacity of the memory card. If you want to use a certain percentage so that it can be read by other devices, you must exclude it from the private partition. The 50:50 partitioning command looks like this:

sm partition disk: 179.64 mixed 50

This is the end of Paul O'Brien's guide, but not the end of the work. If you now want to use the adopted memory as such, you must also migrate apps and data. This can be done through the storage section of your Android settings menu. Tap the MicroSD card, then move to the top right of the menu and click on Move data. You could not select this menu item before partitioning.

internal sd move data 1
Migrate the data after partitioning the SD card. / © AndroidPIT

Now, and in the future, downloaded apps are fully written to the MicroSD card. Only system apps and updates use the internal memory. This means, you should never again get error messages due to lack of space if an app update is pending.

internal sd move data 2
With the Sony Xperia Z5, the total memory is strangely displayed. The memory of the SD card is the one you must keep in mind. / © AndroidPIT

Where's the hook

MicroSD cards are not as fast as the internal memory of the smartphone. So don't waste money on the cheaper ones, and instead get yourself memory cards with a reasonable read throughput. The Extreme Pros and the Extreme Plus MicroSD cards by Sandisk have proved to be the best value for the money in our opinion. With 74 MB/s write throughput, you should not experience any delays in everyday life and profit from a considerably larger memory.

SanDisk Extreme PLUS 64GB microSDXC

Interestingly, only the LG G4 was able to correctly read the acquired memory. Samsung showed unnaturally high amounts of occupied memory and Sony's value was even negative. Nevertheless, we did not have any complications, and even when we were connected to the computer, we were able to access all of our data properly, even though we could only see the shared, and not private, portion of the memory there. Difficulties arose only when it came to system updates (see above).

Storage space gain: a complete success

We have subjected the manually partitioned devices to a uniform endurance test. We have installed Final Fantasy IX on all devices. The game is 1.8 GB in size. After installation, it's easy to see which of the two memories, internal or SD card, had its memory space used. In all cases, after the installation on the SD card, 1.8 GB less space was available. A success of this extent cannot be achieved with SD cards formatted as interchangeable memory, since complete data migration is not possible.

Compare the values of the internal memory and the SD card memory in the screenshot for proof.

internal sd move data 3
Here's the picture proof: only the memory of the SD card is affected by the game. / © AndroidPIT

What happens…

Of course, the question is what happens when the MicroSD card is removed from the system. Actually, it creates a serious problem for your apps. After all, they can no longer access their data. Since the partitions with your operating system and the information for a factory reset are still stored in the internal memory, a removed or broken SD card can't do any harm. When we removed the MicroSD card, app icons were quickly replaced by a placeholder, which were immediately restored when reinstalled.

If you lose the SD card or it has a defect, your data is lost. Since these are encrypted as the internal memory, you should not hope for a data recovery. Instead, regular backups are appropriate. But this rule applies anyway. So have fun with the cheap memory expansion of your Marshmallow smartphone.

Safely remove an internally partitioned SD card

To safely remove the SD card from the smartphone, you must reverse the above process. Since your storage space on the internal memory is probably not sufficient, you first have to transfer pictures to another form of storage and uninstall apps. Then you go back to the Memory & USB settings and tap Move data under Internal memory in the menu. Then you go to the SD card and format it as mobile memory. Do both steps (backing up and formatting) so that your data cannot be lost and you can use the SD card with other devices.

Has this process worked for you? Which MicroSD card do you use? Let us know in the comments below.

530 Shares

45 comments

Write new comment:

  • You write that there is shown the wrong amount of used storage. Same at my wife's phone Samsung. The problem now is that the o phone thinks it is full. So no more downloads. Even there is more than 40 GB of unused storage. Any advice?


  • I managed to carry this out okay with my new Sony Xperia XA since the miniscule 16Gb memory was filled in the first week with Bloatware! This was while it was still on Marshmallow. I was a bit anxious what would happen when the Nougat update came along. However, I shouldn't have been concerned. The upgrade didn't affect my partitioned micro SD card!!

    My main issue now is with a new Nougat Kodak 7 inch tablet! It will only allow a 64Gb micro SD card to be used as portable, or fully adopted. Which is annoying, since all I need is to be able to split it 40/60 or thereabouts! Although the tablet will read a 128Gb as portable. Which I attempted to split using the adb commands! The portable section carried out was accessible but the tablet did not like the "internal" sector! The tablet prefers to format the external memory itself and does not take too kindly to be played about with by external interference! My next step is to use a different tablet to partition the SD card memory, or partition the card using a windows PC facility prior to putting into my tablet as an experiment. If I can figure out how to do that!


    • FeRDNYC 3 weeks ago Link to comment

      Good luck. I don't hold out much hope for solutions along those lines — the adopted side MUST be formatted in the device it's to be used on (because of the encryption key), and if it isn't willing to partition the card itself then it isn't likely to respect external partitioning while formatting, unfortunately.


  • So I did all the steps but then when I went to my storage nothing changed the sd card was still formatted as protable storage


    • FeRDNYC 2 months ago Link to comment

      Hmm. This is becoming a trend. A few questions:
      1. Are you also on a Samsung device running Android 7, like the previous commenter?
      2. If not, what device, what version of Android, is it rooted, etc?
      3. Were there any messages output by the `sm partition` command (or any other command), or did it just silently fail?


      • 1. No
        2. on a Samsung on5 With android 6.0.1 not rooted
        3. After entering the command to partition it went to the next command line like it had done it however nothing changed on the phone.


      • FeRDNYC 2 months ago Link to comment

        Apparently, on the On5 there's just no way to use adoptable storage, unfortunately.

        See the "Galaxy On5 not compatible with Adoptable Storage" question on StackExchange's 'Android Enthusiasts' site.


  • I am attempting to use adoptive memory on my Samsung Tab A 10.1, Android 7. I have been able to get to entering the command (sm partition disk:179,32 private) but after 2 seconds it drops back to the command line. After rebooting there is no change, the memory card has not been formatted as private. The tablet is not rooted, I don't want to root it yet, but from what I have read it doesn't have to be. I would be appreciative for any help.


    • FeRDNYC 2 months ago Link to comment

      I have found some references indicating that the card has to be UNMOUNTED in order to successfully partition it as adoptable, on Samsung's Android 7. So if you haven't tried this already, it might be worth making sure you first explicitly "EJECT" the removable-storage card. (Software-eject, meaning unmount, from the Settings > Storage interface. Obviously you should leave it in the slot after unmounting it.) Then once you're sure it's not mounted, go into the shell and run the `sm partition` command. That might make the difference. And I wouldn't put it past Samsung to make the formatting failure a silent error, when it fails due to a mounted card.


      • Tried unmounting the card but no go. It still won't format the card as private.


      • FeRDNYC 2 months ago Link to comment

        Hm, that's too bad. Samsung have apparently played around with a LOT of ill-advised trickery in their stock Android builds, at various times. I've seen some people claim that the only way they've been able to make use of adoptable storage on a Samsung device is to set it up under Android 6.0 and only upgrade to Nougat _after_ it's set up.

        Perhaps someone with that specific device will comment, and can speak authoritatively. (My only Samsung device is a Galaxy S4, but t it's running CyanogenMod 13 / Android 6 and has never run the stock build.) But it sounds like Samsung may have "protected" the microSD device so that it's not modifiable using the `sm partition` commands as an unprivileged user (an illogically-logical extension of their decision to remove the adoptable-storage interface from the Settings app), in which case rooting and then running the command as root would probably be the only option.


    • FeRDNYC 2 months ago Link to comment

      Oh, also, just because you mentioned it: A reboot "shouldn't" be necessary to activate any of these changes, if they're going to work at all they should take effect immediately. (With the caveat that I can't speak for how things work on every possible device, and there may very well be one that requires a reboot in order to pick up the adoptable storage. But, that would be an unusual situation, as that's not how things work on any standard/common Android build.)

      In fact, just the opposite, I would AVOID rebooting until you've completed the process of getting the adoptable storage activated and your data migrated over. A reboot anywhere in the middle of that process would only complicate matters.


  • FeRDNYC 3 months ago Link to comment

    Just for the record, since neither this post nor Paul O'Brien's actually spells this out:

    When partitioning a card using `sm partition <disk> mixed <ratio>`, the ratio parameter is the percentage (0-100) of space to allocate PORTABLE. The rest of the card will be the adoptable private storage.

    So `sm partition <disk> mixed 25` on a 16GB card will create 12GB of adoptable storage and a 4GB FAT32 partition.

    (The example used on both pages is `sm partition <disk> mixed 50`, which of course doesn't make it any clearer exactly what "ratio" means,)


  • I do not have SD ID after typing in:

    sm list-disks

    Please help. TIA!


    • FeRDNYC 3 months ago Link to comment

      That's not very helpful, as problem reports go. You say you "do not have SD ID" after typing the command, well why not? Did the command not work? If it didn't, what was the error? If it did work, what did it output?

      On my Galaxy S4 running CM13, I get the following:

      u0_a63@jfltecdma:/ $ sm list-disks
      disk:179_32

      So I know the removable is identified as disk:179_32 by the system.

      If it returns NOTHING, then that likely means there's no SD card present. (If I eject the card from my phone, typing `sm list-disks` will produce no output.) So, if you're getting no response, go into Settings and check the Storage manager to make sure the phone is really seeing the card, first. Don't bother with any shell commands until you know that the card is correctly inserted and has been detected by the device.

      But most importantly, tell us exactly what happens when you run that command. Help us help you.


      • SD card is being detected. It just that whenever I type "sm list-disks" there is no number like yours "disk:179_32".
        i gives me other command line


      • FeRDNYC 3 months ago Link to comment

        Hm, then it sounds like however your device interfaces with the microSD card, it isn't through the standard storage manager. You could try the command `sm list-volumes` to see what it recognizes as a storage location, but honestly it doesn't really matter. To make the card adoptable you need to be able to repartition it, and to be able to partition it you need a disk identifier for the `sm partition` command. If there are no disks showing up in `sm list-disks` then there's simply no way you can use `sm partition` to set the card up as adoptable storage.


      • FeRDNYC 3 months ago Link to comment

        One other test you can run is the command `sm has-adoptable`. Presumably it will return "false", indicating that there are no storage devices present that can be used for adoptable storage. If it happpens to return "true", then it's worth invesitigating the issue further, but that's highly unlikely.


  • Actually one may not need Android 6. I have done it on even Android Gingerbread 2.3. Only problem was that the Samsung phone - Galaxy Pop - had a bit of a problem with the card reader. Randomly it would disconnect requiring me to reinsert the card and rebooting the phone. I am not sure if it was limited to my particular device or others too faced similar problems. It was my first smartphone I could afford. It was done through ADB and that too without rooting the phone. I am now looking for something for my phone with Android 5.1.1.

    Basically USB-OTG has solved the internal storage problem on most recent devices. On top of that RavPower RP-WD01 gives me very easy access to all kinds of external portable storage.


  • "sm partition disk:179,64 private" doesn't seem to work for me. What am I missing? I have a Samsung Galaxy Luna (S120VL) with Android 6.0. The SD card is "mounted" and has no data of my own. By the way, the phone comes with only 8 GB of internal storage, which is more than half used already.

    The SD card I used is SanDisk Ultra PLUS microSDXC UHS-1. It claims up to 80GB/s read speed.

    I did the list-disks, and the only number displayed was disk:179,64. When I entered the partition command, the shell prompt returned within 1-2 seconds, and my SD card still shows as Portable - even after a reboot.

    I also tried another command suggested on a different site: "sm set-force-adoptable true" before or after the partition command. Nothing seems to work. Any ideas?

Show all comments

This website uses cookies to ensure you get the best experience on our website. More info