/dev/char/10:130
é um dispositivo de caractere com o maior número de dispositivo 10 e menor número 130. Em sistemas Linux não incorporados, ele é mais comumente denominado /dev/watchdog
.
Quando você abre um dispositivo watchdog, um temporizador (geralmente um timer em nível de hardware) começa a descer. Espera-se que o programa que abre o dispositivo watchdog escreva periodicamente algo (qualquer coisa, realmente) no dispositivo aberto, para indicar que o sistema ainda está vivo e bem. Isso redefinirá o cronômetro de hardware, que começará a descer novamente em direção ao zero.
Se isso não acontecer, por exemplo Como o sistema está suspenso ou sobrecarregado, o cronômetro de hardware chegará a zero e, em seguida, o mecanismo de watchdog ativará um sinal de redefinição de nível de hardware para executar uma reinicialização rígida. É o equivalente a um interruptor de homem morto para o SO e / ou outro software em execução no sistema.
Se o software que se importa com o watchdog precisar parar, alguns drivers de watchdog requerem o envio de um caractere específico para o dispositivo watchdog antes de fechar o arquivo. Então o driver watchdog no kernel deve desarmar o timer do watchdog. Seu sudo cat /dev/char/10:130
não fez isso.
O problema é que alguns temporizadores de watchdog de hardware aparentemente não podem ser parados sem uma reinicialização depois de ativados. E se o kernel foi compilado com a opção CONFIG_WATCHDOG_NOWAYOUT, o driver irá esperar que uma vez que o watchdog esteja ativado, sempre deve haver um processo watchdog-minder presente, e então o pedido de desativação do watchdog será recusado.