Как распаковать прошивку Android: полное руководство

Загруженный файл прошивки Android чаще всего представляет собой ZIP-архив, внутри которого лежат не готовые файлы системы, а упакованные образы — payload.bin, system.img, boot.img или разделы в формате sparse, и без их распаковки извлечь нужный APK-файл, конфигурацию или ядро не получится. Именно на этом этапе многие останавливаются: архиватор открывает ZIP, а дальше начинается работа со специализированными утилитами.

В этой статье разберём, какие форматы прошивок встречаются, чем их распаковывать на Windows и Linux, как извлечь содержимое образов разделов и какие ошибки возникают чаще всего. Материал ориентирован на извлечение и анализ файлов — модификация и обратная сборка прошивки требуют отдельного подхода и зависят от конкретного устройства.

Какие форматы прошивок встречаются

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

  • 📦 ZIP с payload.bin — типичный формат OTA-обновлений для устройств Google Pixel, Xiaomi и многих других на современных версиях Android.
  • 💿 Образы .img — файлы разделов system.img, boot.img, vendor.img, которые могут быть в формате ext4, erofs или sparse.
  • 🗜️ Фирменные контейнеры.tar.md5 у Samsung, .kdz у LG, .ofp у Oppo, .update у некоторых китайских брендов. Каждый требует своего распаковщика.
  • 📄 Scatter-based прошивки — набор файлов для устройств на чипах MediaTek, где образы лежат отдельно рядом со scatter-файлом.

Определить формат просто: откройте архив любым архиватором и посмотрите на список файлов. Если внутри payload.bin — это OTA-пакет. Если набор .img-файлов и scatter.txt — прошивка для SP Flash Tool. Файл с расширением .tar.md5 открывается как обычный TAR-архив.

Подготовка: что понадобится

Для работы достаточно компьютера с Windows или Linux, свободного места на диске и нескольких бесплатных инструментов. Учтите, что распакованная прошивка занимает заметно больше места, чем скачанный архив: образ system может достигать нескольких гигабайт, а после конвертации его размер ещё вырастет.

Из программ чаще всего используются: Python (для запуска скриптов распаковки), payload-dumper-go или аналогичный скрипт для payload.bin, simg2img для конвертации sparse-образов, а также 7-Zip для простых архивов. Для фирменных форматов существуют отдельные утилиты, которые обычно публикуются в профильных темах на форумах вроде 4PDA и XDA.

Распаковка payload.bin

Файл payload.bin — это бинарный контейнер, в котором хранятся образы всех разделов прошивки. Рядом с ним обычно лежит payload_properties.txt с метаданными. Простым архиватором его не открыть — нужна специальная утилита.

Наиболее удобный вариант — payload-dumper-go: это готовый исполняемый файл, не требующий установки Python. Достаточно поместить утилиту и payload.bin в одну папку и выполнить команду:

payload-dumper-go -o output payload.bin

После завершения в папке output появятся образы разделов: boot.img, system.img, vendor.img и другие. Если нужен только один раздел, его можно извлечь выборочно — это сэкономит время и место на диске.

☑️ Проверка перед распаковкой payload.bin

Выполнено: 0 / 4

Работа с образами system.img и boot.img

Образ boot.img содержит ядро и ramdisk — именно его распаковывают для получения root-доступа через Magisk или для анализа ядра. Для разбора boot.img используются инструменты вроде Android Image Kitchen или magiskboot, которые разделяют файл на ядро, ramdisk и заголовок с параметрами.

С system.img ситуация сложнее: сначала нужно определить его формат. Если образ в формате sparse (характерно для fastboot-прошивок), его конвертируют в обычный raw-образ:

simg2img system.img system_raw.img

Полученный raw-образ в Linux монтируется как обычный диск командой mount с правами root. На Windows прямое монтирование ext4-образов затруднено — проще использовать утилиты для извлечения файлов из образов или работать через WSL. Образы в формате erofs, которые встречаются на новых устройствах, требуют отдельных инструментов, так как эта файловая система доступна только для чтения.

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

Распаковка фирменных форматов производителей

Каждый крупный бренд исторически использует собственную упаковку прошивок, и универсального инструмента не существует. Ниже — ориентиры по самым распространённым форматам.

БрендФорматСпособ распаковки
Samsung.tar.md5Переименовать в .tar и открыть архиватором
Google PixelZIP с payload.bin или .imgpayload-dumper или прямое извлечение
MediaTek-устройстваНабор .img + scatterОбразы уже распакованы, нужны инструменты для sparse
Oppo / OnePlus.ofp / payload.binСпециализированные скрипты для .ofp
LG.kdzУтилиты-экстракторы KDZ

Обратите внимание: инструменты для фирменных форматов разрабатываются энтузиастами, и их совместимость зависит от версии прошивки. Если экстрактор выдаёт ошибку на конкретном файле, ищите актуальную версию утилиты в профильной ветке форума именно для вашей модели.

📊 С какой целью вы распаковываете прошивку?
Извлечь boot.img для root
Достать системные приложения или файлы
Изучить структуру прошивки
Подготовить кастомную сборку

Типичные ошибки и их решения

Самая частая проблема — утилита завершается с ошибкой или выдаёт файлы нулевого размера. Возможная причина — повреждённый или недокачанный архив прошивки. Проверьте контрольную сумму файла, если она указана на странице загрузки, или скачайте прошивку заново.

Вторая типичная ситуация — распакованный system.img не монтируется. Здесь проверьте два момента: не остался ли образ в формате sparse (тогда сначала выполните конвертацию через simg2img) и не используется ли файловая система erofs, для которой нужен отдельный инструмент извлечения. Определить тип можно по сигнатуре файла, открыв его в hex-редакторе, или утилитами анализа образов.

⚠️ Внимание: скачивайте прошивки только с официальных источников производителя или проверенных порталов. Поддельный или модифицированный файл прошивки может содержать вредоносный код, который попадёт на устройство при последующей установке.
Что делать, если payload-dumper не видит файл

Убедитесь, что путь к payload.bin не содержит кириллицы и пробелов — многие консольные утилиты работают с такими путями некорректно. Переместите файлы в папку вида C:\firmware и запустите команду оттуда. Также проверьте, что запускаете утилиту, соответствующую разрядности вашей системы.

Извлечение отдельных файлов без полной распаковки

Не всегда нужно распаковывать прошивку целиком. Если цель — один системный APK, файл конфигурации или шрифт, можно извлечь только нужный раздел, а из него — только нужные файлы. В payload-dumper-go для этого предусмотрена выборочная распаковка разделов через параметры команды.

Аналогично с boot.img: если требуется только ядро, разбирать ramdisk не обязательно. Такой точечный подход экономит время и дисковое пространство, особенно когда прошивка весит несколько гигабайт.

FAQ: частые вопросы

Можно ли распаковать прошивку прямо на телефоне?

Теоретически некоторые операции возможны через терминальные приложения, но на практике это неудобно: не хватает памяти, производительности и нужных утилит. Рекомендуется работать на компьютере.

Чем открыть файл payload.bin обычным архиватором?

Никак — это не архив, а бинарный контейнер OTA-обновления. Для него нужны специальные утилиты: payload-dumper-go или Python-скрипты для разбора payload.

Распакованный system.img не открывается — что делать?

Возможные причины: образ в формате sparse (сконвертируйте через simg2img) или файловая система erofs (нужен отдельный экстрактор). Также убедитесь, что файл распаковался полностью и его размер не равен нулю.

Можно ли после распаковки собрать прошивку обратно?

Можно, но это отдельная задача: потребуется обратная упаковка образов, пересчёт контрольных сумм, а на некоторых устройствах — подпись пакета. Процедура зависит от модели, и без проверенной инструкции есть риск получить нерабочее устройство.

Безопасна ли распаковка прошивки для компьютера?

Сама распаковка безопасна — это просто извлечение файлов. Риск появляется при запуске непроверенных утилит: скачивайте инструменты только из официальных репозиториев и профильных веток крупных форумов.