当需要重启才能完成更新时,Windows 是否可以向我发送电子邮件?我的服务器设置为自动安装更新,但是不是之后重新启动。我发现我可以在事件查看器中添加事件的操作,但我不知道要查找什么。
答案1
这是我设置为在我的几台服务器上每天运行的 PowerShell 脚本的一部分。
##############################################
## Review windows updates ##
##############################################
$update = new-object -com Microsoft.update.Session
$searcher = $update.CreateUpdateSearcher()
$result = $searcher.Search("IsAssigned=1 and IsHidden=0 and IsInstalled=0")
if ($result.updates.count -gt 0 )
{
$updatealert = 1
$update_body += "<hr><h1 style="" font-family: 'arial'"">There are ("+$result.updates.count+") pending Windows updates:</h1><table BORDER=1 BORDERCOLOR=#C2C2C2>"
foreach($update in $result.updates)
{
$update_body += "<tr style="" font-family: 'arial' font-size: 7px border:2px groove #FFFFFF"" bgcolor=#FFFF00><td>" + $update.Title + "</td><td>" + $update.Description + "</td></tr>"
$i++
}
$update_body += "</table>"
}
完整的脚本会发送一封包含其他信息的 html 电子邮件,但它会在顶部每天告诉我是否有可用的 Windows 更新。
答案2
您正在使用 WSUS 吗?
如果是,当您批准更新并安装更新时,如果更新不需要重新启动,则机器将显示零所需更新。
如果确实需要重新启动,则会始终显示未完成的更新,即使已安装更新,直到重新启动后,它才会向 WSUS 注册已安装更新。
希望这是有意义的。
答案3
一定有办法做到这一点。只需弄清楚如何检测是否有可用更新即可。
查看下面的 Windows 更新 API。有一些脚本示例说明如何检测是否有可用更新。类似的方法可以与 PowerShell 脚本一起使用。
http://msdn.microsoft.com/en-us/library/aa387102(v=VS.85).aspx
干杯,特雷弗·沙利文
答案4
是的。您可以将任务(发送电子邮件)附加到事件,这样您就可以让服务器在重新启动时向您发送电子邮件,并在事件日志中为您提供“标准”Windows 启动事件之一。