Linux Kernel Watchdog forklarte

Linux Kernel Watchdog forklarte

Linux Kernel Watchdog

Linux -kjernen Watchdog brukes til å overvåke hvis et system kjører. Det er ment å starte på nytt med å starte hengte systemer på grunn av uopprettelige programvarefeil. Watchdog -modulen er spesifikk for maskinvaren eller chipen som brukes. Brukere av personlige datamaskiner trenger ikke vakthund, da de kan tilbakestille systemet manuelt. Imidlertid er det nyttig for systemer som er oppdragskritisk og trenger evnen til å starte seg på nytt uten menneskelig innblanding. For eksempel servere på et eksternt sted eller innebygd utstyr på et romfartøy som trenger automatisk tilbakestillingsmuligheter for maskinvare.

Advarsel: Fortsett med forsiktighet

Feil konfigurasjoner av en vakthund på systemet ditt kan forårsake problemer som:

  • Uendelig omstartsløyfe
  • Filkorrupsjon på grunn av hard tilbakestilling
  • Uforutsigbare tilfeldige omstarter

Så unngå å bruke live -servere for å teste Linux Kernel Watchdog.

Watchdog -modul

Vakthundfunksjonalitet på maskinvaresiden setter opp en tidtaker som går ut etter en forhåndsbestemt periode. Watchdog -programvaren oppdaterer deretter med jevne mellomrom maskinvaretimeren. Hvis programvaren slutter å være forfriskende, utfører timeren etter den forhåndsbestemte perioden en tilbakestilling av maskinvaren på enheten. For at en vakthundtimer skal være funksjonell, må hovedkortprodusenten bruke brikkens vakthundfunksjonalitet. Ofte er dokumentasjonen fra produsenten ikke tydelig på om funksjonaliteten ble implementert. I så fall må du teste det ut.

Du trenger også at riktig vakthundkjernemodul skal lastes i Linux -systemet ditt. Ulike brikker bruker forskjellige moduler. For eksempel:

  • Intel -brikkesett kan bruke “ITCO_WDT” -modulen
  • HP -maskinvare kan bruke “HPWDT”
  • IBM Mainframes kan bruke “VMWatchDog”
  • Xen VM kan bruke “Xen_wdt”

Etter at modulen er lastet, kan du sjekke /Dev /Watchdog på Linux -systemet. Hvis denne filen er til stede, betyr det at vakthundkjernen er driver eller modul lastet. Systemet fortsetter med jevne mellomrom å skrive til /dev /vakthund. Det kalles også "spark eller mate vakthunden". Hvis systemet ikke klarer å sparke eller mate vakthunden, er systemet etter en stund hardt tilbakestilt.

Watchdog Daemon

Watchdog -demonen åpner enheten og gir nødvendig oppdatering for å forhindre at systemet tilbakestiller. Det kan teste prosessbordplass, minnebruk, filtilgjengelighet, overbelastning av arbeid, filtabelloverløp, IP -adresse Ping, nettverksgrensesnitttrafikk, temperatur, løpsprosesser og mer. Hvis testene mislykkes, forårsaker vakthund.

Start og stoppe vakthund

Watchdog Daemon bør starte på oppstartstiden og sette seg i bakgrunnen. Du kan sjekke om den kjører:

ps -af | grep klokke*

Hvis kjernen ikke er samlet med config_watchdog_nowayout, så hvis du lukker /dev /watchdog riktig, vil det ikke føre til en omstart. Du kan skrive tegnet V til /Dev /Watchdog og deretter lukke filen. Dette skal stoppe vakthunden.

Testing av vakthunden

Hvis du vil teste om maskinvarevakthunden fungerer, kan du gjøre følgende fra administrator -kommando -ledeteksten:

Cat >> /Dev /Watchdog

Og trykk “Enter” to ganger og vent. Ledeteksten vil ikke komme tilbake. Etter en stund avhengig av kjernen din, bør systemet utføre den harde omstarten.

Referanser:

  • http: // www.Madore.org/~ David/Linux/ITCO-WDT-test.html
  • http: // www.lørdag.Dundee.Ac.Storbritannia/PSC/Watchdog/Watchdog-Background.html
  • http: // www.lørdag.Dundee.Ac.Storbritannia/PSC/Watchdog/Watchdog-Install.html
  • http: // www.lørdag.Dundee.Ac.Storbritannia/PSC/Watchdog/Watchdog-testing.html
  • https: // embeddedfreak.WordPress.com/2010/08/23/howto-use-linux-watchdog/
  • https: // Launchpad.nett/ubuntu/pålitelig/+pakke/vakthund
  • https: // stackoverflow.COM/SPØRSMÅL/2020468/WHO-IS-REFRESHING HARDWARE-WATCHDOG-IN-LINUX
  • https: // www.Intel.com/innhold/dam/www/public/US/EN/Documents/Application-Notes/Enabling-and-Configuring WatchDog-Timer-App-Note.PDF
  • https: // www.Suse.com/support/kb/doc/?ID = 7016880
  • https: // www.Systutorials.com/docs/linux/man/8-watchdog/