- Редактирование img прошивок
- Редактирование файла system.fex
- «Ublaze.ru» — клуб любителей
- Распаковка и запаковка img прошивок Allwinner
- Как разобрать прошивку android img allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
- Распаковка и запаковка img прошивок Android для Allwinner
Редактирование img прошивок
Все прошивки для планшетов на процессоре Allwinner имеют один и тот же формат img (IMAGEWTY).
После долгих поисков я все-таки нашел программу, которая позволяет разобрать и собрать прошивку для планшетов на базе Allwinner. Называется она unPacker
Перейдем непосредственно к разборке файла прошивки.
Разборка IMG файла
Для разборки потребуется:
- Файл самой прошивки
- Программа unPacker, которую можно скачать здесь ( Для Allwinner a31s можно использовать imgRePacker )
Скачиваем архив и распаковываем. Запускаем программу unPacker.exe
Перетаскиваем в это окно наш файл и ждем распаковки.
После окончания распаковки появится новая папка название «прошивки.img.dump»
В папке out есть файл system.fex -это файл с системными файлами(папка system) . Он то нам и нужен.
Редактирование файла system.fex
Для редактирования этого файла нужна nix система и утилита для конвертации, которую можно скачать здесь
Создаем в домашней директории папку в которой будем редактировать нашу прошивку. Назовем ее например NEW. Теперь распаковываем файлы из архива ext4_utils.zip в папку NEW. Запускаем терминал и набираем
Программа скомпилируется и мы получим инструмент для редактирования Sim2img. Теперь кладем в папку NEW наш файл system.fex и переименовываем его в sytsem.img
Вводим в терминале
./simg2img system.img output.img
Теперь у нас есть файл output.img . Теперь создаем папку например с названием sys
И монтируем туда наш файл output
sudo mount output.img sys
Теперь в папке sys находятся файлы, которые можно редактировать. Например можно внести изменения в файл build.prop, которые улучшат работу системы.
Подробнее об изменениях в файле build.prop читайте здесь
После редактирования начинаем сборку
./mkuserimg.sh -s sys/ ./factoryfs_custom.img ext4 ./temp 512M
Полученный файл factoryfs_custom переименовываем в system.fex.iso
Примечание: можно аналогично редактировать и другие файлы образов (boot и bootloader)
Источник
«Ublaze.ru» — клуб любителей
КПК и спутникового ТВ
Распаковка и запаковка img прошивок Allwinner
LiveSuit kitchen ublaze.ru for Linux — кухня под Linux для распаковки и запаковки img прошивок Android для Allwinner.
Что можно делать в кухне:
1. Разбирать/собирать прошивку.
2. Распаковка разделов nanda (bootfs), nandc (root), nandd (system), nandg (recovery).
3. Запаковка тех же разделов.
4. Конвертация script.bin в script.ini и наоборот.
Что нам потребуется:
- Кухня — скачать можно здесь (скачать бета версию кухни)
- 64-х (x86_64) битный дистрибутив Porteus-4.0 — русский репозиторий от Blaze, включающий в себя локализованные образы: LXDE, LXQT, OPENBOX, KDE5, CINNAMON, MATE, XFCE (для архитектур i586 и x86_64).
- Root права — в терминале введите su и пароль toor для активации root аккаунта
- модуль compat32-libraries-3.0-x86_64-1sl.xzm
Скачайте образ (лучше скачивайте CINNAMON, XFCE или MATE) 64-х битной версии (x86_64) дистрибутива Porteus-4.0 (UNIX система базирующаяся на Slackware, представляет собой LiveCD, USB ОС) из репозитория Blaze.
В образ Porteus можно сразу добавить модуль compat32-libraries-3.0-x86_64-1sl.xzm. Для этого откройте образ Porteus с помощью программы UltraISO зайдите в директорию /porteus/modules/. Скачайте и перетащите туда модуль compat32-libraries-3.0-x86_64-1sl.xzm. Сохраните изменения в образе. Так же, можете скачать дополнительный софт для Porteus от сюда.
С помощью UltraISO запишите образ Porteus на CD или DVD болванку (лучше записать на USB-флешку, для этого с помощью WinRar извлеките образ Porteus на флешку, зайдите в папку boot и запустите Porteus-installer-for-Windows.exe и в биосе выставите загрузку с USB). В Bios-e компьютера выставите загрузку с CD/DVD дисковода. Вставьте диск с записанным дистрибутивом Porteus. Включите компьютер, после чего должна начаться загрузка Porteus. Более подробно как установить Porteus читайте здесь.
Зайдите на локальный диск D он же /mnt/sda5 (если не активировали модуль compat32-libraries-3.0-x86_64-1sl.xzm — активируйте его в Porteus) — откройте на рабочем столе Домашнюю папку и извлеките в корень домашней папки содержимое архива livesuit_kitchen_ublaze.ru.tar.bz
В распакованную папку livesuit_kitchen_ublaze.ru скопируйте прошивку и переименуйте ее в original.img
Запустите терминал Porteus и введите:
где livesuit_kitchen_ublaze.ru путь до кухни
Распаковываются разделы в папку _temp там их можно модифицировать и делать все что угодно.
Источник
Как разобрать прошивку android img allwinner
Что нам потребуется:
- A10 flash kitchen v2 — для извлечения и создания финального образа прошивки обсуждения на XDA .
- Заводская прошивка (необходимо найти под свой планшет) или подходящая прошивка.
- Linux image tools — для извлечения и создания разделов образа прошивки.
- Текстовый редактор Sublime Text 2 с поддержкой Unix line endings, не используйте Блокнот. Можно так же использовать Notepad++
- 64-х битный дистрибутив Porteus с root правами и рабочей средой KDE4 — cобрать можно здесь
- Модуль compat32-libraries-2.0-x86_64-1hz.xzm
Извлечение IMG файла прошивки (шаг 1 — операции в Windows)
Распакуйте a10_flash_kitchen_v2.zip, например на локальный диск D Вашего ПК.
Внутри вы найдете packer_gbи packer_ics. packer_ics предназначен для Android ICS, то что нам и нужно.
Откройте папку packer_ics и вы заметите кучу каталогов и пару .bat файлов. Мы проведем много времени в этих каталогах.
Распакуйте архив с заводской прошивкой, которую вы скачали ранее и скопируйте img файл, заранее переименовав его в original.img, в директорию D:\a10_flash_kitchen_v2\packer_ics
Появится окно командной строки Windows. Наберитесь терпения и подождите появления надписи Для продолжения нажмите любую клавишу . . . нажмите любую клавишу чтобы закрыть данное окно.
Откройте каталог _extract в данной директории будут находится все извлеченные файлы. Нас будут интересовать следующие три файла: RFSFAT16_BOOT_00000000000.fex (the boot partition), RFSFAT16_RECOVERY_0000000.fex (the recovery partition), RFSFAT16_SYSTEM_000000000.fex (the system partition, ext4 sparse).
Заметка и предупреждение. Некоторые системы могут также иметь RFSFAT16_BOOTLOADER_00000.fex, который также может потребоваться для вашего устройства, чтобы правильно его загрузить. Для этого просто переименуйте RFSFAT16_BOOTLOADER_00000.fex в bootfs.fex и затем скопируйте bootfs.fex в a10_flash_kitchen_v2\packer_ics\_input
Для разбора RFSFAT16_BOOTLOADER_00000.fex делаем следующее
Скопируйте RFSFAT16_BOOTLOADER_00000.fex в папку custom image
В консоли Porteus выполните следующие команды:
сделайте необходимые изменения в папке b2, например замените script.bin. Затем скопируйте содержимое папки b2 в _bootfs
(D:\a10_flash_kitchen_v2\packer_ics\_bootfs или /mnt/sda5/a10_flash_kitchen_v2/packer_ics/_bootfs/ что одно и тоже)
Извлечение, модификация и создание разделов (шаг 2 — операции в Linux)
Скачайте 64-х битную версию дистрибутива Porteus.org (UNIX система базирующаяся на Slackware, представляет собой LiveCD, USB ОС).
Так как пример будет продемонстрирован в рабочей среде KDE4, желательно в сборке выбрать KDE4. В Advanced options, выберете по умолчанию пользователя Root в пункте ‘Click on the button for the user who will be logged in by default to the GUI’. Нажмите кнопку BUILD. Скачайте образ Porteus.
Можете его русифицировать и сразу добавить модуль compat32-libraries-3.0-x86_64-1sl.xzm . Для этого откройте образ Porteus с помощью программы UltraISO зайдите в директорию /porteus/modules/
Скачайте и перетащите туда модуль 0010-locales-ru-utf8-noarch-0c.xzm , а так же модуль compat32-libraries-3.0-x86_64-1sl.xzm
Так же, если Вам необходимо , можете скачать шрифты Microsoft, поместив модуль Fonts_MS_TTF-1.xzm и другой русский софт вы можете найти здесь ( зеркало ). Сохраните изменения в образе.
Запишите образ Porteus на CD или DVD болванку (можно так же записать на флешку, с помощью UltraISO извлеките образ Porteus на флешку, зайдите в папку boot и запустите Porteus-installer-for-Windows.exe и в биосе выставите загрузку с USB) с помощью UltraISO или Nero. В Bios-e компьютера выставите загрузку с CD/DVD дисковода. Вставьте диск с записанным дистрибутивом Porteus. Включите компьютер, после чего должна начаться загрузка Porteus.
Зайдите на локальный диск D (если не активироали модуль compat32-libraries-3.0-x86_64-1sl.xzm — активируйте его в Porteus) — откройте на рабочем столе Домашнюю папку и создайте там папку custom image
В левой колонке откройте путь /mnt/sda5/a10_flash_kitchen_v2/packer_ics/_extract/
Скопируйте файлы RFSFAT16_BOOT_00000000000.fex, RFSFAT16_RECOVERY_0000000.fex, RFSFAT16_SYSTEM_000000000.fex в папку custom image
и переименуйте эти файлы в
согласно скриншоту:
Скопируйте ранее скаченный tools.tar.gz в папку custom image
Распаковываем архив tools.tar.gz в папку custom image, должна появится папка tools
Разборка и сборка раздела Boot
Запустите консоль (Console) Porteus и введите следующие команды:
Далее создаем поддиректорию ramdisk следующими командами:
Теперь вы можете изменять файлы по мере необходимости. Например, отредактировать файл init.sun4i.rc (в зависимости от модели планшета, в имени данного файла вместо 4, может быть 5 или 7), добавив загрузку своего модуля , строкой:
Разборка и сборка раздела Recovery
Чтобы извлечь раздел с Recovery, выполните следующие команды:
Измените файлы по мере необходимости и затем запакуйте Recovery в образ с помощью следующих команд:
Разборка и сборка System раздела
Выполните следующие команды:
По мере необходимости можете изменить, что-то добавить или удалить. Затем запакуйте System в образ с помощью следующих команд:
Теперь перейдите в папку custom image — вы увидите три новых файла new-boot.img, new-recovery.img, new-system.fex
Теперь можете запустить Windows. Скопируйте эти файлы в D:\a10_flash_kitchen_v2\packer_ics\_input (кроме тех 3 файлов, не забудьте скопировать файл bootfs.fex)
Создание нового образа прошивки (шаг 3 — операции в Windows)
Переименуйте данные файлы в
Теперь нам нужно внести некоторые изменения в файл конфигурации образа. Перейдите в каталог files и найдите файл image.cfg
Откройте этот файл с помощью текстового редактора Sublime Text 2 или Notepad++. Обычным Блокнотом можно испортить этот файл. Найдите две строки, которые ссылаются на OEM и VOEM
Закомментируйте эти строки, добавив ; в начале каждой строки. Не делайте никаких других изменений. Как только вы сделали изменения — Сохраните файл.
Перейдите обратно в каталог packer_ics и запустите бат файл create_image.bat
Когда все будет завершено, Вы уведите надпись ‘ Для продолжения нажмите любую клавишу . . .‘, нажмите любую клавишу, после чего в директории D:\a10_flash_kitchen_v2\packer_ics должен появится новый образ с именем output.img
Им можете прошить свой планшет, например с помощью LiveSuit
Распаковка и запаковка img прошивок Android для Allwinner
Если у Вас, после прошивки, не работает тач или камера, то можно воспользоваться программой DragonFace .
Так же Вам необходима прошивка, в которой вы будете редактировать Init.rc File. В DragonFace нажмите кнопку Firmware, выберете прошивку.
Зайдите в Advanced Settings — нажмите кнопку Init.rc File и пропишите или замените в открывшемся окне строку на
Сохраните изменения, нажав Да. После чего нажмите кнопку Save. Сохраните img образ. Прошейте планшет.
Прочитайте пункт — Что необходимо сделать до прошивки.
Скопируйте модуль здесь_имя_модуля.ko, который прописали в файле Init.rc в папку /vendor/modules/ с помощью Total Commander и плагина ADBplugin.
Не забываем отредактировать script.bin через DragonFace. Жмем Firmware, открываем прошивку, заходим в Advanced Settings > System configuration
редактируем что нужно, например секцию тача [ctp_para], жмем Save, прошиваем планшет отредактированной прошивкой.
Желательно иметь заводской script.bin, чтобы было из чего копировать.
Сделайте резервную копию script.bin с рабочего планшета. Для этого скачайте программу Uberizer 1.8
Описание опций Uberizer:
Важное дополнение! этот DragonFace не обновляйте, иначе прошивка при сохранении будет испорчена и после такой прошивки планшет уйдет в вечную загрузку.
Как у меня получилось отредактировать и нормально загрузить исправленную прошивку:
Запускаем дракона открываем прошивку, жмем кнопку » export» внизу, указываем куда выгрузить файлы (Выгрузит папку с нужными файлами и файл *.law со ссылкой на эту папку).
Дальше редактируем то что нам нужно (дракона не закрываем) исключительно через Nоtepad++ (остальным прошивка портится).
В распакованной папке мы увидим и сможем отредактировать в Notepad++:
Вообще вся прошивка полностью распаковывается внутри папки DragonFace , например внутри ПапкаDragonFace\fsop\system\vendor\modules\ увидим все модули (*.ko) из текущей прошивки — их можно заменить, удалить.
После всех изменений в драконе жмем кнопку » import» указываем наш файл *.law
Сохраняем прошивку кнопка » save«. При таких танцах исправленная прошивка потом нормально грузится в планшет, и тот работает
Спасибо пользователю rlest за столь подробное дополнение.
Распаковка и запаковка img прошивок Android для Allwinner
- Для бэкапа script.bin воспользуйтесь dumpbootfs.rar после чего можно будет его перевести в script.fex и отредактировать (см. ниже пункт — Как перевести script.bin в script.fex и обратно в script.bin).
- Для загрузки script.bin обратно в планшет воспользуйтесь lcdconfig.rar — для этого скопируйте script.bin в папку lcdconfig и два раза нажмите lcdconfig.exe
Распакуйте папку Bin2Fex например на локальный диск C вашего компьютера
Скопируйте в данную папку script.bin или script0.bin (переименуйте в script.bin)
и с помощью командной строки cmd (запускать от имени администратора) выполните команды
Распаковка и запаковка img прошивок Android для Allwinner
Распаковка и запаковка img прошивок Android для Allwinner
Распаковка и запаковка img прошивок Android для Allwinner
Распаковка и запаковка img прошивок Android для Allwinner
Распаковка и запаковка img прошивок Android для Allwinner
Пример для Windows.
Скачиваете imgRePacker_205.7z , распаковываете на локальный диск D папку imgRePacker (название строго такое), в эту же же копируете IMG прошивку.
Запускаете от имени Администратора командную строку cmd и вводите следующие команды:
После чего прошивка должна распаковаться в папку imgRePacker
Для запаковки прошивки:
Назначение:
Распаковка для внесения изменений и последующей запаковки образов прошивок формата LiveSuit и PhoenixSuit (утилиты для прошивки устройств на чипах от Allwinner и их аналогов).
Изначально утилита создавалась для устройств на чипах SC9800/8600; по функционалу повторяет набор утилит SoChip Modding Tools от китайского коллеги esxgx с дополнениями (заменами) от RedScorpio и расширяет его возможности.
Отличия (они же преимущества):
— утилита All-in-one;
— автоматическое определение формата образа прошивки (LiveSuit/PhoenixSuit);
— автоматическое распознание структуры прошивки для определения порядка действий;
— создание блока [FILELIST] файла конфигурации *.cfg (возможно использование в упаковщике от производителя dragon);
— автоматическое извлечение образов дисков (условие: zdisk или описан в блоке [down_num] файла sys_config.fex);
— восстанавливаются (и используются при упаковке) все исходные файлы прошивки;
— существенно меньше;
— заметно производительнее.
Поддерживаются прошивки устройств на чипсетах (известные мне):
— Sochip SC8600/SC9800 (LiveSuit/zdisk);
— Boxchip F10/F15/F16/F20 (LiveSuit/zdisk);
— Teclast T7200/T8100 (LiveSuit/zdisk);
— Allwinner F10/F13/F18 (LiveSuit/zdisk);
— Allwinner F1C100/F1E200 (LiveSuit);
— Allwinner A10/A13/A10s (LiveSuit);
— Allwinner A31 (PhoenixSuit).
Использование:
» imgRePacker.exe [options] .img» — распаковка (Windows)
» imgRePacker.exe [options] .img.dump» — запаковка (Windows)
» ./imgrepacker [options] .img» — распаковка (Linux)
» ./imgrepacker [options] .img.dump» — запаковка (Linux)
Опции (в скобках указано имя в ini-файла и значение по умолчанию):
/log — создавать log-файл (log = 0);
/debug — писать отладочную информацию, работает только с опцией /log (debug = 0);
/quiet — отключить вывод в консоль (quiet = 0);
/old — использовать модифицированный старый метод распаковки/запаковки (old = 0);
Примечание:
В новом методе (используется с версии 2.00win/1.00lin) распаковка/запаковка идет полностью в памяти. Это позволило уменьшить количество операций чтения/записей на HDD, но привело к невозможности работать с прошивками большого размера (ограничения по выделению памяти отдельному процессу).
Модифицированный старый метод уменьшает количество потребляемой памяти, но увеличивает количество операций ввода/вывода.
Режимы переключаются автоматически при превышению размера образа прошивки значения memsize в ini-файле (по умолчанию = 200МБайт; максимальное значение 2ГБайта — 1Байт).
/noiso — не формировать при распаковке/не использовать при запаковке образы файловых систем прошивки (noiso = 0);
/unimg — режим совместимости с утилитой unimg — формируются RAW-файлы прошивки (unimg = 0);
/8600 — запаковывать в формате старых прошивку SC8600 — не используется файл конфигурации, другие параметры для формирования ZDisk (8600 = 0);
/smt — zdisk.img запаковывался с использованием SMT — некорректный размер файла в заголовке; используется при распаковке (smt = 0);
/latin — заменять нелатинские символы в путях к файлам прошивки; используется при распаковке (latin = 0);
/skip — пропустить проверку размера файла образа прошивки; используется при распаковке (skip = 0);
/mono — включить монохромный режим (mono = 0);
/ini — перезаписать ini-file с опциями из командной строки ();
Примечание:
Опции командной строки всегда имеют приоритет выше, чем заданные ini-файлом.
Состав архива:
1. imgRePacker.exe — Windows-версия.
2. imgrepacker — Linux-версия.
3. runner.bat — командный файл для распаковки образов прошивок SoChip SC9800/8600 и их аналогов (BoxChip, Teclast) от losber (требует установки UltraISO).
4. lzma.exe — архиватор LZMA.
5. ReadMe.txt — этот файл.
ВНИМАНИЕ. Для распаковки и упаковки прошивок, имеющих в своем составе ZDisk (например, SC9800), требуется утилита LZMA (для Windows-версии imgRePacker; имеется в архиве) или XZ (для Linux-версии imgrepacker; должна быть предустановлена в системе).
Источник