Wiren Board Firmware Update: различия между версиями

Нет описания правки
Строка 57: Строка 57:
При удачной загрузке переменная bootcount устанавливается в 0 из скрипта /etc/init.d/wb-init, выполняющимся предпоследним перед rc.
При удачной загрузке переменная bootcount устанавливается в 0 из скрипта /etc/init.d/wb-init, выполняющимся предпоследним перед rc.


== Сборка прошивки с поддержкой установки обновлений ==
=== Сборка прошивки с поддержкой установки обновлений ===


Нужно собрать rootfs с пакетами wb-config и wb-utils из ветки '''dev/fwupdate''' репозитория wirenboard.
Нужно собрать rootfs с пакетами wb-config и wb-utils из ветки '''dev/fwupdate''' репозитория wirenboard.
Так же пакет wb-utils зависит от u-boot-tools, который собирается из той же ветки репозитория u-boot.
Так же пакет wb-utils зависит от u-boot-tools, который собирается из той же ветки репозитория u-boot.


== Сборка FIT-образа обновления ==
=== Сборка FIT-образа обновления ===


Все нужные скрипты есть в той же ветке репозитория wirenboard.
Все нужные скрипты есть в той же ветке репозитория wirenboard.
Строка 73: Строка 73:
При этом в апдейт включается '''install''' из файла '''image/install_update.sh''' и собирается tar.gz с rootfs из указанной директории (также можно указать уже имеющийся tar.gz).
При этом в апдейт включается '''install''' из файла '''image/install_update.sh''' и собирается tar.gz с rootfs из указанной директории (также можно указать уже имеющийся tar.gz).


== Загрузка обновления на Wiren Board ==
=== Загрузка обновления на контроллер ===


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Строка 79: Строка 79:
</syntaxhighlight>
</syntaxhighlight>


Загруженный файл попадает в /var/www/uploads/, где обнаруживается скриптом '''wb-watch-update''' и при полной загрузке (проверяется наличие сигнатуры в конце файла) - запускается скрипт '''wb-run-update''' (оба этих скрипта лежат в пакете wb-utils), который проверяет контрольную сумму скрипта '''install''' и запускает его на исполнение.
Загруженный файл попадает в ''/var/www/uploads/'', где обнаруживается скриптом '''wb-watch-update''' и при полной загрузке (проверяется наличие сигнатуры в конце файла) - запускается скрипт '''wb-run-update''' (оба этих скрипта лежат в пакете ''wb-utils''), который проверяет контрольную сумму скрипта '''install''' и запускает его на исполнение.


Лог выполнения обновления сохраняется в файл /var/log/update.log (он же /mnt/data/var/log/update.log)
Лог выполнения обновления сохраняется в файл ''/var/log/update.log'' (он же ''/mnt/data/var/log/update.log'')