Замена системных файлов Android с помощью adb. "Робот" изнутри. Учимся работать с файлами на Android Как открыть системные папки на андроид

В данной статье вы узнаете какие папки (директории) в Android существуют, какие файлы в них находятся, за что отвечают данные папки и файлы и зачем они нужны.

Предисловие о структуре

У многих есть компьютер и на них установлена ОС Windows. Все прекрасно знают, что в данной ОС все распределено по дискам:

C: — на данном диске находиться система

D: — для личных файлов (диска может и не быть, если он не «разбит»)

E: — Z: — флешки, переносные жесткие диски, CD или DVD приводы.

В Windwows все рассредоточено по различным дискам. В UNIX/Linux куда входит и Android (а также BSD, куда входит Mac OS X) все выглядит все немного иначе. Файловая структура имеет древовидный вид. Возможно сейчас не понятно, но дальше с прочтением статьи будет более понятно.

Также стоит знать что Android как и в Linux, в отличие от Windows очень чувствительны к регистру. Например папка Name, NaMe, name, NAME — это 4 разных папки, тогда как Windows сможет создать только одну папку с таким именем.

Для того чтобы было более понятно о чем идет речь, рекомендуется установить файловый менеджер Root Browser.

Структура и назначение папок и файлов Android

Как было выше сказано — структура имеет древовидный вид. У любого дерева имеется корень, в UNIX/Linux он также существуют. Корень — это отправной пункт в файловой структуре, с корня система обрастает папками и файлами. Корень в UNIX/Linux отмечается как знак:

/

подробно о разделе dev

/dev/ — в данном разделе содержится информация о устройствах системы и файлов.

[свернуть]

подробно о разделе data

раздел /data/ — пользовательский раздел в котором находятся установленные приложения, личные настройки

папка /data/app — здесь находятся установленные приложения, игры.

папка /data/app-lib — дополнительные библиотеки необходимые для работы определенных приложений (присутствует в новых версиях Android).

папка /data/dalvik-cache — кеш-память, для работы Java машины Dalvik которая является «двигателем» в Android отвечающая за запуск и работу приложений.

папка /data/data — в данной папке находятся индивидуальные настройки каждого пользовательского приложения, библиотеки и другие файлы необходимые файлы для их работы.

папка /data/system/ — в данном разделе находятся глобальные настройки пользовательского окружения, синхронизация, аккаунты, блокировка.

файлы gesture.key, locksettings.db, locksettings.db-shm, locksettings.db-wa l — графический ключ , пин-код.

[свернуть]

подробно о разделе preload

раздел /preload/ — в данном разделе находятся дополнительные файлы и папки, которые зеркалируются в раздел /system/ (данный раздел имеется не во всех Android, преимущественно в Samsung).

[свернуть]

подробно о разделе system

раздел /system/ — данный раздел содержит системные папки и файлы необходимые для функционирования Android.

папка /system/app — здесь находятся системные приложения и сервисы (в новых ОС Android сервисные приложения вынесли в другую папку priv-app ).

папка /system/bin и /system/xbin — папка содержит файлы и ссылки на исполняемые бинарные файлы.

файл /system/xbin/su — файл отвечающий за Root права .

папка /system/camerdata — в данной папке находятся файлы отвечающие за работу камеры.

папка /system/etc — в данной папке находятся конфигурационные файлы необходимые при загрузке ОС а также необходимые в процессе работы различных программ.

папка /system/init.d — в данной папке находятся скрипты, которые могут влиять на работу системы.

файл /system/etc/ hosts — файл отвечающий за блокировку, переадресацию веб адресов.

файл /system/etc/ apns.conf — файл с информацией о точках доступах интернет (APN).

файл /system/etc/ gps.conf — настройки GPS.

папка /system/fonts — папка с системными шрифтами.

папка /system/framework — папка с «процессами» Android.

папка /system/lib/ — библиотеки системных приложений и сервисов.

папка /system/lib/modules — драйверы системы.

папка /system/media — папка с системными звуками и анимацией включения.

файл /system/media/bootanimation.zip — исполняемый архив с загрузочной анимацией.

папка /system/priv-app — папка с сервисами/приложениями Android.

файл /system/build.prop — конфигурационный файл с помощью которого можно изменить системные настройки.

[свернуть]

подробно о разделе proc

раздел /proc — виртуальный раздел содержащий информацию о ядре и его конфигурации.

Способ может быть полезен в том случае, если «уже ничего не помогает», доступа к Root Explorer нет или телефон вообще не может загрузиться. В моем случае, пришлось в «боевом» режиме восстанавливать удалённый по глупости SystemUI.apk. При этом на телефоне что-то делать можно было только в доли секунды между нажатием кнопки «ОК» на предыдущем окне с ошибкой и появлением следующего такого же окна. Перепрошиваться не хотелось, потому пришлось срочно осваивать adb.

Итак, для того, чтобы подключить свой гуглофон к adb, вам нужно:

1) Android SDK для Вашей системы (здесь - на примере GNU/Linux Ubuntu)
2) Android SDK Platform-tools (устанавливаются выбором соответствующей галочки в Android SDK)
3) В «Параметры - Программы - Отладка» должна стоять галочка на «Отладка по USB»
4) Подключить телефон к USB
5) В моём случае пришлось сделать еще две вещи:
указать ID производителя телефона idVendor (его можно найти ):
#echo SUBSYSTEM=="usb", SYSFS{idVendor}==" 0bb4 ", MODE="0666" > /etc/udev/rules.d/51-android.rules
#chmod a+r /etc/udev/rules.d/51-android.rules
где 0bb4 заменяем на код своего производителя, после чего перезапустить adb
#adb kill-server
#adb start-server

Итак, все установлено и подключено, вы добавили путь к platform-tools в переменную $PATH своей операционной системы или перешли в эту папку с помощью команды cd. По команде «adb devices» должен выдавать некий номер и справа от него «device». Это значит, что adb видит телефон и может с ним работать. Если вместо «device» что-то другое или вообще «List of devices attached» - проблема где-то на 4-5 шаге.

Далее вам нужно поместить системный файл, который вы хотите установить, в папку platform-tools. То есть запасная копия системного файла должна быть приготовлена заранее или скопирована с аналогичного телефона.

После этого можно закинуть системный файл в /system/app такой последовательностью команд:

$adb push YourFile.apk /data/Yourfile.apk
$adb remount
$adb shell
$su
#cp -f /data/YourFile.apk /system/app/Yourfile.apk
#chmod 644 /system/app/YourFile.apk
#exit
$exit
$adb reboot
где YourFile.apk - имя вашего системного файла, причем регистр букв имеет значение.
После последней команды Ваш телефон должен перезагрузиться уже с новыми файлами.
Если на команду «adb remount» Вы получаете ответ «remount failed: Operation not permitted», то попробуйте вместо нее после «su» ввести "#mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system".

P.S.: В линуксе, если platform-tools не добавлена в $PATH, вместо «adb» нужно писать "./adb".

В этой статье команды, которые я запускал от имени обычного пользователя обозначены символом $ в начале строки, от имени root - символом #.

Иногда пользователю устройства с системой от Google приходится столкнуться с нетривиальными задачами, решение которых требует сначала найти папки data и system , где находятся важные файлы. Как это сделать на Android, мы расскажем в статье.


В первую очередь, пользователю понадобится файловый менеджер, который показывает не разбивку по мультимедийным данным, а реальное содержание диска. Иногда такие менеджеры встроены в прошивку, в противном же случае можно обратиться в Play Store, где есть и бесплатные варианты.

Далее с помощью него выходим в корень системы, обозначенный как «/». В ряде менеджеров для быстрого доступа к оному есть отдельный пункт в Action Bar, а где-то нужно просто нажать на знак «..» или выбрать «Корень файловой системы». Именно тут на Android и можно обнаружить папки data и system, имена их, кстати, тоже начинаются с косой черты.

Стоит обратить внимание, что данные разделы, особенно второй, содержат критически важную информацию. Если у пользователя имеется root‑доступ и он удалит файлы в папках data и system , это может вызвать проблемы с работоспособностью устройства.

Статьи и Лайфхаки

Современный смартфон под управлением мобильной платформы представляет собой настоящий портативный мини-компьютер, в котором файлы распределены по папкам и организованы наиболее удобным образом. Данная статья подскажет, как зайти в папки в андроиде и где они находятся.

Где находятся папки в Андроиде и как в них зайти?

Если мы пользуемся настольным компьютером с Windows, то наверняка привыкли к тому, что всё в этой системе распределено по дискам. К примеру, на диске C установлена система, а диск D используется для хранения личных файлов. Остальные диски могут использоваться, к примеру, для съёмных флэш-накопителей и внешних жёстких дисков (например, Z или E).

Система Android, основанная на ядре Linux, организована иным способом. Здесь предусмотрена древовидная структура файлов, отправным пунктом в которой выступает корень. Кроме того, сама мобильная операционная система весьма чувствительна к регистру. Так, если в Windows мы не можем создать в одном месте одновременно папки ALBUM и Album, то в Android это вполне возможно.

Раздел data на Linux содержит данные самого пользователя, а также персональные настройки, а раздел cache – временные файлы, включая и обновления системы. Информация об устройствах хранится в dev, а файлы, которые отвечают за идентификатор IMEI – в efs (хотя последний раздел встречается и не всегда). Системные папки находятся в system. Что касается сведений о ядре и его конфигурации, они содержатся в proc. Добавим, что для того, чтобы увидеть корневые разделы именно под такими названиями, нам понадобятся root-права, а также специальный файловый менеджер.

Если нас интересует, как зайти в папки в андроиде, и у нас нет root-прав, не стоит рисковать только ради того, чтобы увидеть разделы так, как это представлено изначально на ядре Linux. Лучше всего использовать один из самых распространённых файловых менеджеров вроде Total Commander. Через такой диспетчер мы сможем наглядно увидеть, что и где именно расположено.

Как зайти в папку с кэшем игр в Андроиде?

Чтобы игра работала корректно, нам никак не обойтись без набора дополнительных файлов, то есть без кэша. Это в особенности касается игр значительного объёма с 3D-графикой. Сразу же после установки и открытия игры кэш начинает загружаться через Интернет. Кроме того, мы можем заранее скачать и загрузить на мобильное устройство, подключив его по USB. Распаковываем кэш, используя архиватор вроде WinRar.

Добавим, что настоятельно рекомендуется загружать кэш по Wi-Fi. Если же прямо сейчас у нас нет доступа к Wi-Fi точке, однако есть стабильный и безлимитный мобильный Интернет, в крайнем случае, можно воспользоваться им, а также приложением под названием Reverse Tethering для Android.
Рекомендуем отдельно ознакомиться с инструкцией по установке кэша формата obb. Зайти в него можно обычно по следующему адресу: sdcard/Android/obb.

Если найти папку obb мы не можем по причине её отсутствия, стоит создать её самостоятельно. Кэш другого типа можно поискать в sdcard/Android/data.

Иногда пользователю устройства с системой от Google приходится столкнуться с нетривиальными задачами, решение которых требует сначала найти папки data и system , где находятся важные файлы. Как это сделать на Android, мы расскажем в статье.

В первую очередь, пользователю понадобится файловый менеджер, который показывает не разбивку по мультимедийным данным, а реальное содержание диска. Иногда такие менеджеры встроены в прошивку, в противном же случае можно обратиться в Play Store, где есть и бесплатные варианты.

Далее с помощью него выходим в корень системы, обозначенный как «/». В ряде менеджеров для быстрого доступа к оному есть отдельный пункт в Action Bar, а где-то нужно просто нажать на знак «..» или выбрать «Корень файловой системы». Именно тут на Android и можно обнаружить папки data и system, имена их, кстати, тоже начинаются с косой черты.

Стоит обратить внимание, что данные разделы, особенно второй, содержат критически важную информацию. Если у пользователя имеется root‑доступ и он удалит файлы в папках data и system , это может вызвать проблемы с работоспособностью устройства.