суббота, 16 марта 2013 г.

LiveSuit kitchen for linux

Для работы с прошивками LiveSuit (процессоры Allwinner Axx) я использовал кухню с вики Miniand, но хотелось работать с прошивкой сразу в линуксе, а не гонять файлы на виртуалку и назад. Поиск выдал ту же кухню только запуск делался через wine. Но мы не ищем лёгких путей!

Решил собрать такую же кухню но полностью на нативних утилитах.
Что можно делать в кухне:
1. Разбирать/собирать прошивку.
2. Распаковка разделов nanda (bootfs), nandc (root), nandd (system), nandg (recovery).
3. Запаковка тех же разделов.
4. Конвертация script.bin в script.ini и наоборот.

Запуск.
Распаковиваем архив, закидаем прошивку в корень кухни, переименовуем в original.img и в консоли пишем: ./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.
 Качать здесь.

8 комментариев:

  1. Отлично! :) Уже (по Вашей наводке) использовал в своих скриптах.

    ОтветитьУдалить
  2. Unpacking image from original.img
    ./scripts/extract_image.sh: строка 12: ./tools/imagesuite/awimage: не удалось запустить двоичный файл

    У меня ошибку сыпет в чем проблема?

    ОтветитьУдалить
    Ответы
    1. Утилита была скомпилированая для х64 платформы, сейчас скомпилировал под х86, можно перекачать.

      Удалить
  3. 8,9,0 разделы собирают, а 7-ка
    отвечает ошибкой - снимок с виртуальной машины:
    https://docs.google.com/file/d/0B8ztVYOCsch_ZkwyaUo3WFBMU1U/edit
    ошибка есть но сборка произведена... правда неизвестно правильно или нет
    папка _extract
    https://docs.google.com/file/d/0B8ztVYOCsch_YU51cHc2TVdMNGc/edit
    папка temp/bootfs
    https://docs.google.com/file/d/0B8ztVYOCsch_YU51cHc2TVdMNGc/edit
    можете посмотреть?

    ОтветитьУдалить
    Ответы
    1. Оно собирает нормально, просто предупреждает что папка vendor пустая. В некоторых прошивках в эту папку заливают бутанимацию, раскладку клавиш и т.д.

      Удалить
  4. Unpacking image from original.img
    ./scripts/extract_image.sh: строка 12: ./tools/imagesuite/awimage: Нет такого файла или каталога
    Что может быть? Ubuntu 12.04 x64. Файл original.img присутствует в каталоге.

    ОтветитьУдалить
    Ответы
    1. Проверьте наличие файла ./tools/imagesuite/awimage и права на исполнение.

      Удалить