| David 的个人资料David Moisan's IT照片日志列表 | 帮助 |
|
3月19日 Powershell: Quick script to email DST statusDescribed by some as "another Y2K", DST in North America started 3 weeks earlier. Unfortunately, I never got to post this in timefor the changeover, but DST will end 1 week later, so we're not done testing. Here's a Powershell script that gets DST status and mails it to the address specified in the command line. It's great boilerplate code if you need to send a quick status email and much much better than the old way with NT CMD, Blat and VBScript.
# Send-DSTStatus # # Get current time and DST status of specified computer and email to specified user # For use in supporting North American DST changes # # D. Moisan 2/23/2007 # param([string]$computer, [string]$email) # # Parameters (Required): # # -computer <computer to scan for status> # -email <email address> if ($email -eq "") { write-host "Usage:" write-host write-host "send-DSTStatus [-computer <computer>] -email <somebody@somewhere.com>" write-host write-host "`t-computer defaults to local machine if not specified" write-host exit } # # Set up email sender address and server name # $sender = "Administrator@satvonline.org" # Change as needed $mailservername = "salemtv.satv.loc" # Change to your SMTP server's address $mailserver = new-object system.net.mail.smtpClient $mailserver.Host = $mailservername $mailmessage = new-object system.net.mail.mailmessage($sender,$email) # If -computer parameter not specified, use localhost if ($computer -eq "") { $computer = $Env:Computername } # Get WMI Objects $wmios = get-wmiobject "Win32_OperatingSystem" -computer $computer $wmisys = get-wmiobject "Win32_ComputerSystem" -computer $computer # Compose message $maildate = get-date $mailmessage.Subject = "DST Status Report for $computer on $maildate" $mailmessage.Sender = $sender $messagetext = $mailmessage.Subject + "`n`n" $messagetext += "Local Time for $computer : " + $wmios.ConverttoDateTime($wmios.LocalDateTime) + "`n`n" $DSTEnabled = $wmisys.EnableDaylightSavingsTime $DSTInEffect = $wmisys.DaylightInEffect $TZOffset = $wmisys.CurrentTimeZone if ($DSTEnabled) { $messagetext += "DST is ENABLED`n" } else { # We can't tell if Windows 2000 clients have DST implemented since # the WMI property EnableDaylightSavingsTime is not supported there # so if the property is null (as is the case in 2000), we skip reporting # DST enabled. IF it is False (as in an XP/2003 client with DST turned off), # we report that. if ($DSTEnabled -eq $False) { $messagetext += "DST is NOT ENABLED`n" } } if ($DSTInEffect) { $messagetext += "DST is IN EFFECT`n" } else { $messagetext += "DST is NOT IN EFFECT`n" } $messagetext += "Current timezone offset: $TZOffset `n" $messagetext += "`n`n" # Send mail and report it on the console $mailmessage.Body = $messagetext write-host "From: $sender" write-host write-host "To: $email" write-host write-host $messagetext $mailserver.Send($mailmessage) Wow, the regression testing for Windows Server 2003 SP2 is *really* thorough!I saw this KB, Windows Server 2003 Service Pack 2 application compatibility, and noted this program tested:
*snort!* Gee, do you think Duke Nukem Forever will work on Longhorn Server? 3月15日 Windows Server 2003 SP2 Quirk: Exchange doesn't startWindows Server 2003 Service Pack 2 is out. As usual, my home SBS box took it without problems, but not our SBS server at the studio. After a protracted install (over an hour!), I rebooted and Exchange Information Store did not start. I started it manually and it came up. Further analysis got me these two event log entries:
Event Type: Error
Event Source: DCOM Event ID: 10010 Date: 3/14/2007 Time: 9:48:51 PM Computer: [...] Description: The server {9DA0E106-86CE-11D1-8699-00C04FB98036} did not register with DCOM within the required timeout. [And then this...]
Event Type: Error
Event Source: Service Control Manager Event ID: 7024 Date: 3/14/2007 Time: 9:48:56 PM Computer: [...] Description: The Microsoft Exchange Information Store service terminated with service-specific error 2147500037 (0x80004005). The server cited in the DCOM message is the Microsoft Exchange Property Mapping Interface. Exchange has new and interesting dependencies every day!
Exchange started on the next reboot when I reinstalled IE7, so this is probably transient. Just so you know.
Susan Bradley has more to say on SP2. |
|
|