Распаковка и запаковка 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 и введите:
su toor cd livesuit_kitchen_ublaze.ru
где livesuit_kitchen_ublaze.ru путь до кухни
./menu.sh
Меню такое:
---------------------------------------- < Menu > ---------------------------------------- 1 - Extract image from file original.img 2 - Create image file 3 - Extract bootfs image 4 - Extract root image 5 - Extract recovery image 6 - Extract system image 7 - Create bootfs image file 8 - Create root image file 9 - Create recovery image file 0 - Create system image file ---------------------------------------- f - Convert script.bin to script.ini b - Convert script.ini to script.bin ---------------------------------------- d - Delete all files q - Exit
1-2 - Разобрать/Собрать прошивку 3-6 - Разобрать разделы 7-0 Собрать разделы f - Конвертировать script.bin (работает только если сделать пункт 3) b - Конвертировать script.ini (работает только если сделать пункт 3) d - Удаляет все файлы, оставляет только original.img
Распаковываются разделы в папку _temp там их можно модифицировать и делать все что угодно.
Если у вас есть резервная копия заводских модулей (директория /system/vendor/modules), заводского init.sun5i.rc (в зависимости от процессора цифра может различаться) и заводской script.bin, то Вы сможете адаптировать прошивку, при условии, что прошивка будет с такой же версией Android. Какие модули у загружаются при загрузке планшета см. в заводском файле init.sun5i.rc. Например модули тача см. в секции #insmod key & tp driver, модули камеры в #csi module, модули gsensor-а в #insmod gsensor driver, модули интернета wifi и т.п. в #network module