LINUX.ORG.RU

не пашет watchdog

 ,


0

1

Всем доброго дня! :)

Не получаетcя завести watchdog(iTCO_wdt) на десктопе. С пол-пинка завелся на планшете (какой-то SoC с i5-8200Y), но ни в какую не хочет на «десктопе» (i7-7700 на Gigabyte H110-D3)

шаги:
установил пакет watchdog - # apt-get install watchdog
в файле /etc/watchdog.conf раскомментировал строчку watchdog-device = /dev/watchdog
затем в файле /etc/default/watchdog строчку watchdog_module=«none» заменил на watchdog_module=«iTCO_wdt»
потом на планшете

# systemctl start watchdog
# systemctl status watchdog
...
# systemctl enable watchdog

на десктопе просто перезагружаю

скажите, пожалуйста, что я мог пропустить на десктопе? шаги те же , и dmesg говорит одно и то же:
$ dmesg | grep -i wdt
[   15.740676] iTCO_wdt iTCO_wdt: Found a Intel PCH TCO device (Version=4, TCOBASE=0x0400)
[   15.741361] iTCO_wdt iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0)

Ответ на: комментарий от vel
$ wdctl 
Device:        /dev/watchdog0
Identity:      iTCO_wdt [version 0]
Timeout:        5 seconds
Timeleft:       4 seconds

root@metamini ~# cat >/dev/watchdog
-bash: /dev/watchdog: Device or resource busy


и /var/log/watchdog/ пустой

но только что получилось так:

$ sudo sysctl kernel.panic=1 
kernel.panic = 1
$ echo c | sudo tee /proc/sysrq-trigger

это можно считать за работу watchdog'a? %)

metawishmaster ★★★★★
() автор топика
Ответ на: комментарий от vel
root@metamini ~# /etc/init.d/watchdog stop
Stopping watchdog daemon....
Starting watchdog keepalive daemon....
kernel.panic = 0
root@metamini ~# sysctl kernel.panic=1
kernel.panic = 1
root@metamini ~# echo c | sudo tee /proc/sysrq-trigger


завис и перезагрузился... а на /dev/watchdog0 я всера для проверки поменял

p.s.
«Starting watchdog keepalive daemon....» - зачем это нам?

metawishmaster ★★★★★
() автор топика
Последнее исправление: metawishmaster (всего исправлений: 1)
Ответ на: комментарий от metawishmaster

«echo c | sudo tee /proc/sysrq-trigger» никак не связан с watchdog.

Останови сервис watchdog, посмотри что говорит wdctl,

попробуй выполнить «cat >/dev/watchdog0»

Если при остановленном watchdog запись в /dev/watchdog0 вызывает ошибку - значить что-то не так watchdog.

vel ★★★★★
()
Ответ на: комментарий от vel


root@metamini ~# rmmod iTCO_
iTCO_vendor_support  iTCO_wdt             
root@metamini ~# rmmod iTCO_vendor_support 
rmmod: ERROR: Module iTCO_vendor_support is in use by: iTCO_wdt
root@metamini ~# rmmod iTCO_wdt 
rmmod: ERROR: Module iTCO_wdt is in use
root@metamini ~# lsmod | grep iTCO_wdt
iTCO_wdt               16384  2
iTCO_vendor_support    16384  1 iTCO_wdt
root@metamini ~# lsmod | grep watchdog
root@metamini ~# ps aux | grep watchdog
root        71  0.0  0.0      0     0 ?        S    14:23   0:00 [watchdogd]
root      2631  0.0  0.0   6320   648 pts/0    S+   14:30   0:00 grep watchdog
root@metamini ~#

и kernel.panic стал нулём... короче, ну его в баню, при зависаниях перегружается, и ок :)

metawishmaster ★★★★★
() автор топика
Ответ на: комментарий от vel
root@metamini ~# /etc/init.d/watchdog stop
Stopping watchdog daemon... failed!
Starting watchdog keepalive daemon... failed!
ln: failed to create symbolic link '/run/sendsigs.omit.d/wd_keepalive.pid': File exists
kernel.panic = 0
root@metamini ~# wdctl 
Device:        /dev/watchdog0
Identity:      iTCO_wdt [version 0]
Timeout:        5 seconds
Timeleft:       4 seconds
root@metamini ~# cat >/dev/watchdog0
-bash: /dev/watchdog0: Device or resource busy


wd_keepalive мешается

metawishmaster ★★★★★
() автор топика
Ответ на: комментарий от vel
bauer@metamini ~$ sudo /etc/init.d/wd_keepalive stop
Stopping watchdog keepalive daemon....
sbauer@metamini ~$ sudo /etc/init.d/watchdog stop
Stopping watchdog daemon....
kernel.panic = 0
sbauer@metamini ~$ sudo su -
root@metamini ~# cat >/dev/watchdog0
sss
root@metamini ~# wdctl
Device:        /dev/watchdog0
Identity:      iTCO_wdt [version 0]
Timeout:        5 seconds
Pre-timeout:    0 seconds
Timeleft:       4 seconds
FLAG           DESCRIPTION               STATUS BOOT-STATUS
KEEPALIVEPING  Keep alive ping reply          1           0
MAGICCLOSE     Supports magic close char      0           0
SETTIMEOUT     Set timeout (in seconds)       0           0
root@metamini ~# sysctl kernel.panic
kernel.panic = 0
root@metamini ~# sysctl kernel.panic=1
kernel.panic = 1
root@metamini ~# echo c | sudo tee /proc/sysrq-trigger


и перезагрузка
в общем, мне помог 'sysctl kernel.panic=1' :)

metawishmaster ★★★★★
() автор топика