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

1670 байт добавлено ,  10 месяцев назад
Строка 462: Строка 462:
== Сторожевой таймер ==
== Сторожевой таймер ==


Контроллер содержит отдельный сторожевой таймер watchdog, реализованный в embedded контроллере, он перезагружает контроллер при зависании ПО.
=== Как устроен ===
В контроллере есть специальный сторожевой таймер watchdog, реализованный в embedded контроллере он перезагружает контроллер при зависании ПО.


Перед редактированием конфигурации сервисов, указанных в файле конфигурации watchdog — желательно остановить его выполнение. После внесения и проверки изменений снова запустите watchdog.
Если таймер досчитывает до 60 секунд embedded контроллер выключает на 1 секунду питание, что приводит к перезагрузке контроллера. Отсчёт таймера начинается после загрузки ОС Linux, это где-то 120 секунд после включения контроллера.


Если при редактировании конфигурации была допущена ошибка и watchdog вызывает циклическую перезагрузку — войдите в систему контроллера по [[SSH]] и остановите выполнение watchdog. На это у вас есть 10–12 секунд после запуска операционной системы.
В нормальном режиме таймер циклично сбрасывается через внутренний интерфейс, по которому embedded контроллер общается с основным процессором. Сброс сторожевого таймера контролируется специальным сервисом Linux '''watchdog'''.  


Как остановить и запустить watchdog читайте в статье [[Watchdog|Watchdog]].
На контроллере есть физическая кнопка сброса сторожевого таймера, находится она на плате и подписана как Watchdog OFF. Используйте её, если один из отслеживаемых сервисов зависает, или если вам нужно внести изменение в конфигурацию.
 
=== Отключение ===
Отключайте слежение за сервисами только в крайнем случае, например, если вы не используете отслеживаемый сервис или он не работает должным образом. После устранения причин, сторожевой таймер надо включить.
 
Watchdog следит за сервисами, указанными в файле <code>/etc/watchdog.conf</code> в разделе <code># Test if vital daemons are running</code>.
 
Вы можете добавить в него свой сервис или отредактировать заводской список:
# Разберите корпус контроллера.
# Нажмите и держите кнопку Watchdog OFF на протяжении всей процедуры.
# Включите контроллер.
# Остановите сервис командой <code>systemctl stop watchdog</code>.
# Измените список отслеживаемых сервисов в файле <code>/etc/watchdog.conf</code>
# Запустите сервис командой <code>systemctl start watchdog</code>.
# Отпустите кнопку Watchdog OFF.


== Питание ==
== Питание ==