Hardware Watchdog
os-watchdog · Sistema
Arma el watchdog de hardware del host, de modo que a un host que deja de funcionar lo reinicia su propio hardware, y lee del chipset por qué se reinició el host la última vez.
En el menú
- Con os-xgs-npu instalado: XGS: Hardware Watchdog
- Sin os-xgs-npu: System: Hardware Watchdog

OPNsense no arma ningún watchdog propio. Con su ajuste activado, este plugin arma el temporizador watchdog del chipset con watchdogd(8) en cada arranque y lo desarma en cada apagado, para que una máquina apagada siga apagada. El controlador del temporizador depende del procesador: amdsbwd en AMD, ichwd en Intel.
En procesadores AMD de la familia 17h o posteriores, además lee en cada arranque por qué se reinició el host la última vez - el registro S5_RESET_STATUS del FCH, un bit por cada causa -, conserva lo leído y borra el registro para el siguiente arranque.
En un Sophos XGS con os-xgs-npu, os-xgs-npu ya arma el temporizador y lee el registro de reinicio, y este plugin se hace a un lado: no inicia un watchdogd propio y muestra el de os-xgs-npu, y toma lo que os-xgs-npu leyó en ese arranque en lugar de leer el registro. Sus propios ajustes entran en vigor cuando os-xgs-npu deja de armar el temporizador.
Funciones
-
Temporizador armado al arrancar
watchdogd(8) arma el temporizador del chipset en cada arranque y lo desarma en cada apagado.
-
Dos ajustes
Activado o desactivado, y el tiempo de espera: 64, 128 o 256 segundos.
-
Último reinicio
Por qué se reinició el host la última vez, tal como lo anotó el chipset, con cada bit que activó y lo que significa. En procesadores AMD de la familia 17h o posteriores.
-
Quién tiene el temporizador
La página muestra si el temporizador está armado y por quién: este plugin, os-xgs-npu u otro watchdogd. Un watchdogd iniciado por otra cosa no se toca.
-
Un lector por arranque
La primera lectura de un arranque borra el registro, así que, si os-xgs-npu ya lo leyó, este plugin toma su lectura.
Instalar y actualizar
A partir de la versión de os-xgs-npu posterior a 0.1.0-alpha.7.1, XGS: Updates lo muestra en su pestaña Plugins —una copia instalada se actualiza allí a mano, y una que falta se instala desde allí— y las imágenes listas construidas a partir de esa versión lo incluyen; hasta entonces se instala y se actualiza como se indica abajo. Ninguna entrada de cron ejecuta la actualización. Para instalarlo en un appliance XGS o en cualquier otro OPNsense, como root: desde un checkout del repositorio con sh install/install.sh, que coloca la página bajo XGS con os-xgs-npu y bajo System sin él, y conserva los ajustes si se vuelve a ejecutar; o desde el paquete de la versión, os-watchdog-1.0.0.pkg, comprobado con SHA256SUMS y añadido con pkg. Una copia instalada así se actualiza con su propio self-update.py. No está en el repositorio de plugins de OPNsense.
Límites, y lo que aún no se ha probado
- Armar y desarmar el temporizador desde este plugin: se hace a un lado en todo appliance que tiene os-xgs-npu.
- El temporizador ichwd de los procesadores Intel.
- El paquete, construido por tools/make-package.sh y añadido con pkg.
- Una instalación en OPNsense sin os-xgs-npu.
- Una actualización desde la pestaña Plugins o con self-update.py: 1.0.0 es la primera versión, así que ninguna ha ido por delante de una copia instalada.
Repositorio
Primera versión: 2026-10-25