Файловая система на Android

Я полностью запутался в файловой системе Android и ее отношении к SD-карте.

Просматривая свой Asus Nexus 7 (2013) с файловым менеджером Astroиз самого корневого каталога, я нашел каталог sdcard. Но есть и каталог /mnt/sdcard, указывающий на то же место. Зачем мне они оба?

Я дважды перепутал, просматривая свой рутированный Samsung S4Lollipop с внешней SD-картой. ES file Explorer. В нем есть :

/sdcard/ with some information that is not on SD card. But why this directory is called SD scard?

Каталог монтирования:

/mnt/
  /extSdCard/ with card information inside that can be visible on PC if I 
remove it from phone and put to computer.
  /sdcard/ again pseudo SD card info.

Совсем запутался:

/storage/
  /emulated/0/ that contains /sdcard/ info
  /legacy/ the same like /emulated/0/
  /extSdCard/ linked to real SD card
  /sdcard0/ again pseudo SD card info.

В чем идея такой странной организации файловой системы?

Ответы (1)

На все части вашего вопроса уже есть ответы, поэтому позвольте мне подвести итог:

Если вы внимательно посмотрите на /sdcardс терминала (или через adb shell), используя lsкоманду, вы увидите, что это символическая ссылка (статья Википедии подробно объясняет это), обычно созданная по крайней мере по двум причинам:

  • чтобы вам было легче его найти
  • иметь для него «каноническое место», независимо от того, где он находится физически

Конечно, это еще не все, но это было бы слишком длинно для ответа здесь :)