Spiegata del kirnel kernel di Linux

Spiegata del kirnel kernel di Linux

Watchdog del kernel Linux

Il cane da guardia del kernel Linux viene utilizzato per monitorare se un sistema è in esecuzione. Dovrebbe riavviare automaticamente i sistemi impiccati a causa di errori software irrealizzabili. Il modulo watchdog è specifico per l'hardware o il chip utilizzato. Gli utenti di computer personali non hanno bisogno di un cane da guardia in quanto possono ripristinare manualmente il sistema. Tuttavia, è utile per i sistemi che sono missionali e hanno bisogno della capacità di riavviare se non l'intervento umano. Ad esempio, server su una posizione remota o apparecchiatura incorporata su un veicolo spaziale che necessitano di funzionalità di ripristino hardware automatico.

ATTENZIONE: procedere con cautela

Configurazioni errate di un cane da guardia sul sistema possono causare problemi come:

  • Fini di riavvio infinito
  • Corruzione del file a causa di hard reset
  • Riavvii casuali imprevedibili

Quindi evita di usare server live per testare il watchdog del kernel Linux.

Modulo del cane da guardia

La funzionalità del cane da guardia sul lato hardware imposta un timer che si spende dopo un periodo predeterminato. Il software del cane da guardia aggiorna quindi periodicamente il timer hardware. Se il software smette di rinfrescare, dopo il periodo predeterminato, il timer esegue un ripristino hardware del dispositivo. Affinché un timer del cane da guardia sia funzionale, il produttore della scheda madre deve utilizzare la funzionalità del cane da guardia del chip. Spesso la documentazione del produttore non è chiara sul fatto che la funzionalità sia stata implementata. In tal caso, devi provarlo.

Inoltre, è necessario caricare il modulo kernel di guardia giusto nel sistema Linux. Chip diversi usano moduli diversi. Per esempio:

  • I chipset Intel potrebbero utilizzare il modulo "ITCO_WDT"
  • L'hardware HP potrebbe usare "HPWDT"
  • I mainframe IBM potrebbero usare "VMWATCHDOG"
  • Xen VM potrebbe usare "xen_wdt"

Dopo aver caricato il modulo, è possibile controllare /dev /watchdog sul sistema Linux. Se questo file è presente, ciò significa che il driver o il modulo del dispositivo kernel del watchdog è stato caricato. Il sistema continua periodicamente a scrivere a /dev /watchdog. Si chiama anche "calciare o alimentare il cane da guardia". Se il sistema non riesce a calciare o alimentare il cane da guardia, dopo un po 'il sistema è hard reset.

Watchdog Daemon

Il daemon del cane da guardia apre il dispositivo e fornisce l'aggiornamento necessario per evitare che il sistema. Può testare lo spazio della tabella dei processi, l'utilizzo della memoria, l'accessibilità dei file, il sovraccarico di lavoro, il trabocco della tabella dei file, il ping dell'indirizzo IP, il traffico dell'interfaccia di rete, la temperatura, i processi in esecuzione e altro ancora. Se i test falliscono, il cane da guardia causa un arresto.

Avvio e fermare il cane da guardia

Il daemon del cane da guardia dovrebbe iniziare al momento dell'avvio e mettersi in background. Puoi verificare se è in esecuzione:

PS -Af | orologio grep*

Se il kernel non viene compilato con config_watchdog_nowayout, se si chiude correttamente /dev /watchdog, non causerà un riavvio. Puoi scrivere il carattere V in /dev /watchdog e quindi chiudere il file. Questo dovrebbe fermare il cane da guardia.

Testare il cane da guardia

Se si desidera testare se il cane da guardia hardware funziona, è possibile eseguire quanto segue dal prompt dei comandi dell'amministratore:

Cat >> /dev /watchdog

E premere "Invio" due volte e aspetta. Il prompt non tornerà. Dopo un po 'a seconda dell'impostazione del kernel, il sistema dovrebbe eseguire il riavvio duro.

Riferimenti:

  • http: // www.Madore.org/~ David/Linux/Itco-WDT-test.html
  • http: // www.sab.Dundee.AC.UK/PSC/watchdog/watchdog-background.html
  • http: // www.sab.Dundee.AC.UK/PSC/watchdog/watchdog-install.html
  • http: // www.sab.Dundee.AC.Regno Unito/PSC/watchdog/watchdog test.html
  • https: // incorporato.WordPress.com/2010/08/23/howto-us-linux-watchdog/
  • https: // launchpad.Net/Ubuntu/Trusty/+pacchetto/watchdog
  • https: // stackoverflow.com/Domande/2020468/who-is-refreshing-hardware-watchdog-in-linux
  • https: // www.Intel.com/content/dam/www/public/us/en/documenti/application-notes/abilita-and-configuring-watchdog-timer-app-note.PDF
  • https: // www.SUSE.com/supporto/kb/doc/?ID = 7016880
  • https: // www.sytorials.com/docs/linux/man/8-watchdog/