Сборка образов прошивки: различия между версиями
N.maslov (обсуждение | вклад) |
(Подготовка страницы к переводу) |
||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
Для сборки образов прошивки контроллера подготовлен специальный набор скриптов. Процесс сборки образа состоит из двух этапов: | Для сборки образов прошивки контроллера подготовлен специальный набор скриптов. Процесс сборки образа состоит из двух этапов: | ||
Строка 5: | Строка 7: | ||
Скрипты находятся в репозитории [https://github.com/contactless/wirenboard wirenboard]. Далее пути будут обозначаться от директории с репозиторием. | Скрипты находятся в репозитории [https://github.com/contactless/wirenboard wirenboard]. Далее пути будут обозначаться от директории с репозиторием. | ||
== Подготовка rootfs == | == Подготовка rootfs == | ||
Строка 38: | Строка 41: | ||
$ ./create_rootfs.sh ./rootfs/ 55 | $ ./create_rootfs.sh ./rootfs/ 55 | ||
</pre> | </pre> | ||
=== Дополнительные репозитории === | === Дополнительные репозитории === | ||
Строка 49: | Строка 53: | ||
</pre> | </pre> | ||
Формат репозиториев соответствует тому, который создаётся с помощью утилиты [[wbrepo]]. Конкретно, к дополнительному репозиторию предъявляются следующие требования: | Формат репозиториев соответствует тому, который создаётся с помощью утилиты [[Special:MyLanguage/wbrepo|wbrepo]]. Конкретно, к дополнительному репозиторию предъявляются следующие требования: | ||
* В корне на сервере репозитория должен храниться публичный GPG-ключ в файле /repo.gpg.key. Например, если репозиторий расположен по адресу http://localhost:8086/, то ключ должен быть доступен по ссылке http://localhost:8086/repo.gpg.key | * В корне на сервере репозитория должен храниться публичный GPG-ключ в файле /repo.gpg.key. Например, если репозиторий расположен по адресу http://localhost:8086/, то ключ должен быть доступен по ссылке http://localhost:8086/repo.gpg.key | ||
Строка 60: | Строка 64: | ||
deb http://localhost:8086/ testing main | deb http://localhost:8086/ testing main | ||
</pre> | </pre> | ||
== Сборка образа для загрузки на контроллер == | == Сборка образа для загрузки на контроллер == | ||
Строка 83: | Строка 88: | ||
Готовый образ будет лежать по пути image/image/wb5/<current_datetime>/<current_datetime>_emmc_<tag>.img. | Готовый образ будет лежать по пути image/image/wb5/<current_datetime>/<current_datetime>_emmc_<tag>.img. | ||
== См. также == | == См. также == | ||
* [[Обновление прошивки]] | |||
* [[Wiren Board 5: Восстановление прошивки]] | * [[Special:MyLanguage/Обновление прошивки|Обновление прошивки]] | ||
* [[Wiren Board 5: Восстановление прошивки|Wiren Board 5: Восстановление прошивки]] | |||
</translate> |
Версия 13:39, 3 июня 2019
Для сборки образов прошивки контроллера подготовлен специальный набор скриптов. Процесс сборки образа состоит из двух этапов:
- Подготовка корневой ФС (rootfs)
- Сборка образа для загрузки на контроллер
Скрипты находятся в репозитории wirenboard. Далее пути будут обозначаться от директории с репозиторием.
Подготовка rootfs
Скрипт для подготовки корневой ФС находится в директории rootfs.
Как использовать скрипт create_rootfs.sh:
$ ./create_rootfs.sh <path_to_new_rootfs> <board_ver> [<list of additional repos>]
Здесь:
- path_to_new_rootfs - имя директории, в которой будет создана корневая ФС. Директория будет создана автоматически;
- board_ver - версия контроллера, для которого готовится образ. Допустимые значения:
- 5 - для Wiren Board 5
- 55 - для Wiren Board 5.5
- 4 - для Wiren Board 4
- 32 - для WB Smart Home (3.2)
- 28
- NETMON
- MKA3
- CQC10
- MKA31
- AC-E1
- list of additional repos - адреса дополнительных репозиториев с тестовыми пакетами (см. ниже). Опциональный параметр.
Пример. Собираем базовую (без доп. репозиториев) корневую ФС в директории rootfs/rootfs для Wiren Board 5.5:
$ cd rootfs $ ./create_rootfs.sh ./rootfs/ 55
Дополнительные репозитории
Добавление дополнительных репозиториев необходимо, если вы хотите добавить свои версии пакетов в собираемую корневую ФС.
В скрипт передаются только адреса репозиториев. Например:
$ ./create_rootfs.sh ./rootfs/ 55 http://server1.net/ http://server2.net:8086/
Формат репозиториев соответствует тому, который создаётся с помощью утилиты wbrepo. Конкретно, к дополнительному репозиторию предъявляются следующие требования:
- В корне на сервере репозитория должен храниться публичный GPG-ключ в файле /repo.gpg.key. Например, если репозиторий расположен по адресу http://localhost:8086/, то ключ должен быть доступен по ссылке http://localhost:8086/repo.gpg.key
- Имя используемого дистрибутива - testing
- Используемый компонент - main
То есть, если передан адрес репозитория http://localhost:8086/, то в sources.list он будет представлен как
deb http://localhost:8086/ testing main
Сборка образа для загрузки на контроллер
TODO: раздел требует дополнения
Скрипты для сборки образов находятся в директории images. Перед сборкой образа необходима готовая корневая ФС.
Дополнительно на хост-машине потребуются утилиты (названия приведены для Debian/Ubuntu):
- kpartx
- device-tree-compiler
- u-boot-tools
Пример: собираем образ прошивки для Wiren Board 5, корневая ФС находится по пути rootfs/rootfs/:
$ cd image $ ./create_images_wb5.sh ../rootfs/rootfs/ <tag>
Здесь tag - суффикс, который будет добавлен к имени файла образа.
Готовый образ будет лежать по пути image/image/wb5/<current_datetime>/<current_datetime>_emmc_<tag>.img.