Sd card and its directory

by Tim   Last Updated July 17, 2017 09:11 AM

My phone (a refurbished Kyocera Hydro Icon running non-rooted Android 4.3) shows storage info of a sd card in picture 1. What's the path of its mounting point?

The size matching in picture 1 and 2 suggests its directory is /storage/sdcard0.

But ES File Explorer shows the content of /storage/sdcard0 isn't empty after I unmount the sd card. Picture 3 and 4 are before and after I unmount the sd card.

I can't find the sd card in the back of the phone. See picture 5. Where is it? (Update: I found the 2GB sd card, it is a little black thing, a little vague to see in the picture 5)

Thanks.

Storage in Settings Storage in ES file manager
Storage as shown in Settings (left) and ES file manager

both cards mounted external card removed
sdcard0 with both cards mounted (left, note the internalSD folder) and with the external card removed

SD card is inserted
There's an SD card inserted. Click the image for a larger variant if you don't believe

I've checked with mount and df while both cards are mounted, and with the external card umounted:

mount mount
output of mount with the external mounted (left) and unmounted (click images for larger variants)

df df

output of df with the external mounted (left) and unmounted (click images for larger variants)

Tags : sd-card mount


Answers 3


/storage/sdcard0 is usually an "emulated SD card", in other words, your internal storage. Newer phones always have that "internal storage" which can't be physically removed from the phone, and serves as its "SD card", in a way that it stores apps and user data.

Aleksandar Stefanović
Aleksandar Stefanović
September 15, 2015 17:28 PM

Checking your pics again: that device seems to have a weird mounting set up, which I've never seen before on an Android device. /storage/sdcard0 indeed is your internal SD. But as soon as the external card is mounted, some kind of "overlay file system" seems to be initialized, blending it in with the internal card as if it were a single device. You can see that by the fact that, when unmounting, some entries from pic#3 disappear (pic#4; of course the files from the external card) while some remain (those on the internal card).

To find out where the external card is mounted physically, you can use the mount or df command at a terminal prompt: no root required for that, a simple terminal app will do or, alternatively, access via adb shell (see: and its tag-wiki).


Edit: After having collected df output with and without the external card mounted, the situation looks a bit more confusing. Here's what's happening in your case:

  • the internal SD card gets mounted to /storage/sdcard0, as it should be.
  • when the external card is inserted,
    1. the internal one gets unmounted
    2. the external card gets mounted to /storage/sdcard0
    3. the internal card gets mounted to /storage/sdcard0/internalSD
  • when the external card is unmounted, things reverse again

So /storage/sdcard0 never shows "empty", but the content "changes". Relevant parts of df output to confirm this:

# df run with the external card mounted:
/storage/sdcard0              1.9G …
/storage/sdcard0/internalSD   1023.7M …
# df run after unmounting the external card:
/storage/sdcard0              1023.7M …

Check with the sizes to confirm. Another proof is the mount output:

# mount with both cards mounted:
/dev/block/vold/179:65 /storage/sdcard0 vfat
/dev/block/vold/179:30 /storage/sdcard0/internalSD vfat
# after unmounting the external card:
/dev/block/vold/179:30 /storage/sdcard0 vfat

Here you clearly see the device (first column) mounted to /storage/sdcard0 changes (which explains why I wanted the mount output in the first place). So no UnionFS: the output also clearly shows both cards using VFAT. Changing contents in the /storage/sdcard0 directory are easily explained by the SD cards being "interchanged".

Izzy
Izzy
September 15, 2015 17:52 PM

When running console under TWRP, external microSD card is: /system/sdcard1 works fine, but I just couldn't get to it through ADB. I'm using MIUI 8.5.3.0. Finally found it:

I suspect the name will vary, so do ls in /storage

it should show up something like

2ABC-1XYZ   <<< this is it
emulated
self
Emil
Emil
July 17, 2017 08:32 AM

Related Questions


How can I mount or unmount the SD Card using ADB?

Updated March 26, 2015 11:03 AM

I have a "micro sd hc 4gig memory card

Updated April 23, 2016 08:04 AM

Wrong id and gid running /system/bin/sdcard

Updated August 18, 2015 17:04 PM