Batch, Skriptování, Windows

Check running Windows services

Jednoduchá kontrola požadovaných služeb na zadaných serverech. Používá se psservice.exe a postie.exe pro odeslání upozornění e-mailem – na spouštěném stroji je nutný otevřený port TCP 25.
echo off
 
set conf=sluzby.ini
set log=sluzby.log
set mail_komu=administrator@%userdnsdomain%
set smtp_server=192.168.2.100
set zprava=zkontrolujte nastaveni popsane sluzby
set poslimail=postie -host:%smtp_server% -to:%mail_komu% -msg:"%zprava%"
 
for /f "eol=# tokens=1-2 delims= " %%a in (%conf%) do (
 psservice \\%%a query %%b | findstr /i "state" | findstr /i "running"
 if errorlevel 1 (
  %poslimail% -s:"Sluzba %%b nebezi" -from:%%a@%userdnsdomain% >> %log%
  echo [%date%, %time%] %%a %%b CHYBA >> %log%
  ) else (
  echo [%date%, %time%] %%a %%b OK >> %log%
  )
)

Příklad kontrolního souboru ‚sluzby.ini‘
#Konfiguracni soubor pro kontrolu sluzeb
#
#syntaxe:
#nazev_serveru nazev_sluzby
#
#priklad:
#serv1 wuauclt
 
#AV sluzby
192.168.1.30 mcafeeframework
192.168.1.30 mcshield
192.168.1.30 mctaskmanager
 
#Printspooler na PDC
192.168.1.10 spooler

Napsat komentář

*

*povinné položky - email nebude zobrazen