Skip navigation

Документация. Утилиты.

 Внимание!!! Начиная с версии ПО 0.2.14-r8 были произведены изменения в системе безопасности. Для сборки образа ПО на основе версий после 0.2.14-r8 необходимо использовать Операторские утилиты и инструкции для сборки образа ПО. Настоятельно рекомендуется, с целью повышения безопасности, Всем кто использует кастомизированные версии ПО, пересобрать образы используя версию 0.2.14-r8

Перед подготовкой рекомендуется ознакомится со следующей документацией:
JavaScript API (pdf)
Руководство оператора (pdf)

Необходимые утилиты:
Operator Utils MAG-200
Operator Utils MAG-250

Требования к ОС

*nix система i386

Необходимые пакеты

Например: Для Ubuntu 11.04 i386 достаточно установить пакет

mtd-utils

Подготовка образов

Рекомендуется:
Выполнять все команды с правами «суперпользователя»;
При работе с архивами использовать консольный архиватор tar.

Перед подготовкой образа необходимо установить ключ оператора по умолчанию.
  • Для использования ключа по-умолчанию необходимо выполнить следующие команды:
gpg --import stb_secbin.key
export MAG200_OP_KEY=STB_PUBLIC

Подготовка uImage, uImzlib_null.img, uImzlib.img

Командная оболочка указанная в скриптах может отличатся от системной!

Для подготовки uImage, uImzlib_null.img, uImzlib.img используется файл ./images/vmlinux.bin (Для MAG-200) или ./images/vmlinux.bin.mag250 (Для MAG-250).
  • vmlinux.bin или vmlinux.bin.mag250 взять из релиза (MAG-200, MAG-250) и поместить в каталог ./images

Выполнить команду:

./kernel_sign.sh

Подготовка imageupdate

Оператор и интегратор могут в зависимости от их потребностей вносить изменения, которые им необходимы. Например, расширять набор утилит или добавлять команды, и на их основе реализовывать новые алгоритмы взаимодействия с приставкой.

В imageupdate можно дополнительно добавить следующие не обязательные секции:

  • второй образ бутлоадера;
  • логотип;
  • секция для установки переменных бутлоадера;
  • образ локального бутстрапа;
  • образ раздела пользователя.

Образ с дополнительным секциями можно собрать, например, так:

./img_make.sh 212 "Test_test" ../rootfs MAG200 ./img_make.profile.mag200

где:

212

номер версии образа, должно быть числом. После успешного обновления стандартным Bootstrap-ом переменная начального загрузчика «Image_Version» принимает это значение. Настоятельно рекомендуется для нумерации версий использовать номер версии релиза, который был взят за основу

«Test_test»

краткое описание (!Внимание! Пробелы не допускаются!). После успешного обновления стандартным Bootstrap-ом переменная начального загрузчика «Image_Desc» принимает это значение

../rootfs

место расположения каталога корневой файловой системы приставки. Пример корневой файловой системы rootfs-….tar.gz можно взять из релиза (MAG-200, MAG-250)

MAG200

модель приставки для которой собирается версия, может быть MAG250

./img_make.profile.mag200

файл, в котором можно настроить подключение и отключение дополнительных секции. может быть ./img_make.profile.mag250

Пример файла img_make.profile.mag200

# Profile for imageupdate
# Kernel's file system
export KERNEL_PATH=./uImzlib.img
# Image Version (digit)
#export IMAGE_VERSION=66
# Image Description
#export IMAGE_DESCRIPTION="Test create New Imageupdate"
# Directory where locate rootfs
#export ROOTFS_PATH=/srv/stb/sg/stm/0.1.60
# File name for enviroment variable
export ENV_VARIABLE_PATH=./images/env.txt
# Bootstrap
#export BOOTSTRAP_VERSION=1
#export BOOTSTRAP_PATH=./images/Bootstrap.img
# Userfs
export USERFS_VERSION=1
export USERFS_PATH=./images/userfs.img
# File name for SecondBoot
export SECONDBOOT_PATH=./images/SbootIm
# File name for Logotype
export LOGOTYPE_PATH=./images/logo.bmp.gz
export MAG200_OP_KEY=STB_PUBLIC

Оператор может инициировать добавление необходимых секций в imageupdate задавая значения следующих переменных:

Название Описание
KERNEL_PATH

Расположение образа файловой системы, содержащей ядро. Если переменная не заданна, то используется  ./uImzlib.img .

IMAGE_VERSION

Номер версии образа, должно быть числом. Аналогично первому параметру при вызове  ./img_make.sh

IMAGE_DESCRIPTION

Краткое описание. Аналогично второму параметру при вызове  ./img_make.sh

ROOTFS_PATH

Место расположения каталога корневой файловой системы приставки. Аналогично третьему параметру при вызове  ./img_make.sh

ENV_VARIABLE_PATH Эта переменная должна содержать путь к файлу, в котором содержатся переменные бутлоадера и их значение. Пример такого файла - env.txt, он показывает каким, образом можно установить переменные бутлоадера, в частности цвета шрифта и фона. Символ $ должен экранироваться.
BOOTSTRAP_VERSION

Номер версии образа, который должен располагаться в разделе  «NAND»  с названием  “Bootstrap” . Если номер текущего образа и обновляемого совпадает, то обновление не производиться.

BOOTSTRAP_PATH

Расположение образа файловой системы, содержащей  Bootstrap . Образ подготавливается с помощью  bootstrap_img.sh .

USERFS_VERSION

Номер версии образа, который должен располагаться в разделе  «NAND»  с названием  «Userfs» . Если номер текущего образа и обновляемого совпадает, то обновление не производиться.

USERFS_PATH

Расположение образа файловой системы пользователя (образ который должен быть при обновлении записан в раздел «NAND» с названием «Userfs» ). Образ подготавливается с помощью userfs_img.sh . Предварительно оператор должен положить необходимые ему файлы в подкаталог с именем /userfs .

SECONDBOOT_PATH Путь ко второму образу бутлоадера.
LOGOTYPE_PATH Путь к файлу логотипу, подготовленный оператором.

Пример файла env.txt

bg_color=0x00006498
fg_color=0x00FFFFFF
portal1=http://10.1.0.1/stalker_portal/c/index.html
language=ru
update_url=http://10.1.0.1/imageupdate
ntpurl=10.1.0.1
timezone_conf=Europe/Kiev


 

Need Help

Дима – эксперт по работе с приставками серии MAG и автор этой статьи.

Была ли полезна эта статья?

Да Нет

Сожалеем.
Как можно улучшить эту статью?

Мы используем cookie-файлы, чтобы оптимизировать работу сайта и предоставить вам лучший интерфейс; а также для продвижения нашей продукции. Ознакомьтесь с нашей политикой Cookie, чтобы узнать, как именно мы используем cookie-файлы, и как вы можете это контролировать.
Если вы продолжите пользоваться сайтом или закроете это сообщение — это значит, что вы согласны с нашей Политикой конфиденциальности и разрешаете использование cookie-файлов, как описано в политике Cookie.