Как вы наверное знаете, в ночь с 29 на 30 октября 2011г. произошли изменения в часовых поясах в России. Подробнее об этом можно почитать на Хабре. Собственно хотелось поделиться скриптами по автоматизации процесса под виндовым доменом, где не настроено автообновление. Итак, первое — сканирование сети на предмет не установленного патча от MS.
Не забываем сохранять файл в кодировке 866
1 2 3 |
FOR /L %%i IN (1,1,254) DO ( ping -n 1 192.168.0.%%i | find /i "недоступен" >nul && echo Компьютер не доступен 192.168.0.%%i || (PsExec.exe \\192.168.0.%%i -u username -p PaSSwORD reg export "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Russian Standard Time" \\mycomp\share\192.168.0.%%i.txt) ) |
В результате получаем файлы \\mycomp\share\192.168.0.X.txt, в которых смотрим, значение
«Display», если оно равно «(UTC+04:00) Moscow, St. Petersburg, Volgograd», то ничего делать не надо, обновление было. Если значение отличается, то необходимо установить обновление. Это можно сделать так:
1 2 3 4 5 6 |
rem W2K8 R2 x64 rem PsExec.exe \\192.168.0.1 -u username -p PaSSwORD wusa \\mycomp\share\Windows6.1-KB2570791-x64.msu /quiet rem W2K3 x64 rem PsExec.exe \\192.168.0.2 -u username -p PaSSwORD \\mycomp\share\WindowsServer2003.WindowsXP-KB2570791-x64-ENU.exe /quiet rem W2K3 x86 rem PsExec.exe \\192.168.0.3 -u username -p PaSSwORD \\mycomp\share\WindowsServer2003-KB2570791-x86-ENU.exe /quiet |
расскоментировав соответственную строчку.
Можно сделать все вручную, без установок патча, просто импортировав ветку реестра (пример для Московской временной зоны):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Russian Standard Time] "TZI"=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 "MUI_Display"="@tzres.dll,-1520" "MUI_Dlt"="@tzres.dll,-421" "MUI_Std"="@tzres.dll,-422" "Display"="(GMT+04:00) Волгоград, Москва, Санкт-Петербург" "Dlt"="Московское время (лето)" "Std"="Московское время (зима)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Russian Standard Time\Dynamic DST] "2010"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,\ 00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00 "2011"=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 "FirstEntry"=dword:000007da "LastEntry"=dword:000007db |
Инструкция по «ручному» изменению можно так же прочитать на MS (англ.)
На этом можно считать, что со «временем» мы разобрались.