В корне Android (/) для чего предназначена каждая папка? Я хочу изучить структуру иерархии папок. Хотелось бы узнать чем отличаются Android 2.3 и 4.x, если у них разные папки в "/".
Во-первых, вам нужно знать два факта:
Итак, в качестве отправной точки я также рекомендую теги файловой системы-вики и теги разделов-вики (вы также можете взглянуть на наиболее часто задаваемые вопросы, используя эти теги).
В своем ответе я сосредоточусь на упомянутой «общей базе». Тем не менее, некоторые производители все еще могут иметь отклонения.
Как уже говорилось, Android использует несколько разделов. В файловой системе они представлены «каталогами», которые служат их точками монтирования:
┌─────────────┬───────────────────────────┐
| Partition | Explanation |
├─────────────┼───────────────────────────┤
| /boot | kernel & Co. |
| /cache | app cache |
| /data | user data partition¹ |
| /data/data | app data¹ |
| /dev | devices² |
| /mnt/asec | encrypted apps (App2SD) |
| /mnt/emmc | internal sdcard³ |
| /mnt/sdcard | external sdcard³ |
| /proc | process information² |
| /recovery | used in recovery mode |
| /system | system ROM (read-only) |
└─────────────┴───────────────────────────┘
¹ Подробности ниже
² виртуальные файловые системы
³ могут отличаться. Часто /mnt/sdcard
это внутренняя SD-карта, а внешняя SD-карта находится в формате /mnt/sdcard/external_sd
.
Приведенный выше список далеко не полный, но он должен содержать наиболее важные разделы.
Здесь я снова сосредоточусь на наиболее интересных разделах (иначе этот ответ получился бы слишком длинным и для большинства читателей скучным.
/data
и/data/data
В большинстве случаев это два отдельных раздела, но могут быть случаи, когда это обрабатывается иначе. У них есть одна общая черта (добавьте /cache
сюда также): они стираются при сбросе к заводским настройкам , в то время как другие разделы обычно остаются нетронутыми.
Что касается содержащихся каталогов, я снова сосредоточусь на выборе; к большинству вещей здесь вы не можете прикоснуться, не рутировав свое устройство.
┌────────────────────┬──────────────────────────────────────────────┐
| Directory | Explanation |
├────────────────────┼──────────────────────────────────────────────┤
| /data/anr | traces from app crashes (App Not Responding) |
| /data/app | .apk files of apps installed by the user |
| /data/backup | Googles Cloud-Backup stuff |
| /data/dalvik-cache | optimized versions of installed apps¹ |
| /data/data | app data² |
| /data/local | temporary files from e.g. Google Play³ |
| /data/misc | system configuration (WiFi, VPN, etc.) |
| /data/system | more system related stuff (certs, battstat) |
| /data/tombstones | more crash stuff ("core dumps") |
└────────────────────┴──────────────────────────────────────────────┘
¹ подробнее о кэше Dalvik см.: dalvik
² Каждое приложение получает свой собственный каталог данных, назначенный здесь, используя имя пакета приложения. На вашей SD-карте может быть аналогичный каталог, который в основном используется приложениями с большими объемами данных.
³ обычно файлы временно хранятся здесь для установки/запуска. Google Play, например, загружает .apk
файлы в этот каталог перед установкой загруженного приложения на ваше устройство.
Конечно, я намеренно пропустил несколько каталогов. Если вы действительно хотите вдаваться в подробности, этот сайт может оказаться не самым подходящим местом (поскольку мы имеем дело с вопросами конечных пользователей, а конечные пользователи обычно не касаются таких вещей). В этом случае можно порекомендовать несколько мест/ресурсов:
/cache
это не кеш приложения. Он используется для OTA-обновлений в режиме восстановления. /recovery
и /cache
оба удалены на устройствах A/B.
GATrawn
Ирфан Латиф