windows-server-2008 – Nagios检查Windows Server 2008上的wuauserv

Windows Server 2008开始,wuauserv不再是一直运行的服务,而是作为计划任务运行.我不确定如何创建计划任务的确切行为,因为计划似乎是由另一个服务生成和编辑的.在此之前,我们设置nagios来检查正在运行的服务,以确保它接受更新.

我的问题是,如何利用nagios跟踪Windows Server 2008中wuauserv服务的正确执行/运行,以确保它接受更新?

看起来在 Nagios Exchange有许多插件可以检查可用的更新 – 例如,this one.我相信我过去使用过 this one.但这并不是你所要求的;这些是否存在更新,并且您询问系统是否正在检查更新.

什么可能更接近你正在寻找的是这样的PowerShell脚本:

$lastcheck = Get-ItemProperty -Path Registry::"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\Results\Detect" 

$lastdate=[datetime]$lastcheck.LastSuccesstime
$currdate = (Get-Date)
$status = new-timespan -start $lastdate -end $currdate


If ($status.days -eq 0 -and $lastcheck.LastError -eq 0) {
    Write-Host "OK:  Wuauserv last ran $lastdate."
    $exitcode = $status.Days
}
elseif ($status.days -eq 1 -and $lastcheck.LastError -eq 0) {
    Write-Host "WARNING:  Wuauserv last ran $lastdate."
    $exitcode = $status.Days
} else {
    Write-Host "CRITICAL:  Wuauserv last ran $lastdate."
    $exitcode = 2
}
exit $exitcode

(您需要检查日期是否在过去24小时内(认时间间隔为22小时),最后一个错误为0)

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...