Обновления Windows

Материал из Lblss.ru
Перейти к: навигация, поиск

Содержание

Агент обновления

Как утверждают специалисты компании Microsoft, используется один и тот же агент как для обновлений через интернет (с сайта производителя), так и для получения обновлений с локального сервера.

Установка и настройка

Для работы с локальным сервером WSUS необходимо установить WindowsUpdateAgent30-x86.exe. Взять его можно у производителя. Это актуально для Windows XP sp2 и более ранних.

Если компьютер входит в домен, то удобно выполнить настройки клиента обновления через политику. Без домена настройки клиенту можно подсунуть непосредственно в реестр:

wsus_client_setings.reg

Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate]
"WUServer"="http://wsus.local"
"WUStatusServer"="http://wsus.local"
"ElevateNonAdmins"=dword:00000001
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
"AUOptions"=dword:00000003
"NoAutoRebootWithLoggedOnUsers"=dword:00000001
"NoAutoUpdate"=dword:00000000
"UseWUServer"=dword:00000001
"AutoInstallMinorUpdates"=dword:00000001

Здесь http://wsus.local - локальный сервер обновлений с доступом по протоколу http://, работающий на 80 порту.

После очередной загрузки машины пойдут обновления.

Еще ключи

Для ветки HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU

  • RebootRelaunchTimeout (REG_DWORD), задает время, через которое будет появляться окно напоминания перезагрузки. Время в минутах, от 1 до 1440.
  • RebootRelaunchTimeoutEnabled (REG_DWORD), 0 - отключить окно напоминания перезагрузки.

Если обновления не идут

Если обновления были недавно установлены, то есть вероятность, что автоматический поиск не будет выполнен. Тогда следует аккуратно пиннуть агента. Из командной строки даём команду от админа:

wuauclt /detectnow

или, то же самое когда залогинены под юзером:

runas /user:admin "wuauclt /detectnow"

Отмена регистрации

Бывает нужна когда ОСь/софт ставились путем клонирования диска. Если это не сделать, то все клоны будут светиться в консоли WSUS как один комп, периодически меняя свое имя и айпишник. Лечится так:

  • Останавливаем службу обновления:
net stop wuauserv
  • Открываем regedit и идем в ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate, где удаляем пару ключей: SusClientId и SusClientIdValidation
По другой статье ключей всего три, но их не нарыл в WinXP: PingID, AccountDomainSid и SusClientId
  • Запускаем службу обновления:
net start wuauserv
  • Запускаем агента с запросом на обновление авторизации и поиск обновлений:
wuauclt.exe /resetauthorization /detectnow

Переустановка агента

Для переустановки WindowsUpdateAgent exe-файл надо запустить с ключиком /wuforce

Если не получится (в конце установки ошибка) - сперва ребутнуть машину и повторить.

Еще ключи

Для wuauclt.exe

  • /? - стандартно, вызов справки :-)
  • /ShowSettingsDialog - вызывает окно настроек автоматического обновления.
  • /DemoUI - вызывает значок Security Center в трее.
  • /v - verbose mode - и так понятно :-)
  • /vv - very verbose mode
  • /clearlogfile - очистить логи обновления.
  • /clearandsaveogfile - сохранить лог обновления в файл и очистить лог.
  • /downloadnow - скачать обновления сейчас по протоколу BITS
  • /downloanowfast - скачать обновления сейчас по HTTP.
  • /stopdownload - остановить скачивание обновлений (HTTP или BITS).
  • /TestWSUSServer - проверить подключение к серверу обновления
  • /configlist - показать конфигурацию агента.

Не документированы:

  • /ReportNow
  • /UpdateNow

Файлы

Где искать скаченные обновления?

Файлы, скачанные при автоматическом обновлении хранятся в каталогах типа

C:\Windows\SoftwareDistribution\Download\65945cc1dfa014013f966ebdb9dc8c1d

Там есть папка \update\ (или \i386\update\ для сервиспаков), куда помещены распакованные файлы. Номер обновления - в имени файла *.CAB или *.CAT.

Для установки следует заглянуть в файл _file_to_execute_.txt - там путь к исполняемому файлу.


Как очистить кэш обновлений?

Очистка локального кэша (Windows XP):

  • остановить службу автоматического обновления
  • преименовать или удалить папку Windows/SoftwareDistrubution
  • с командной строки: перейти в system32
  • остановить службу шифрования
  • переименовать или удалить локальную базу обновлений
  • запустить службы строго в обратном порядке

В итоге получается примерно следующее:

net stop wuauserv
rmdir /s /q %windir%\SoftwareDistribution
cd %windir%/system32
net stop cryptsvc
ren CatRoot2 CatRoot5
net start cryptsvc
net start wuauserv

В принципе, можно сохранить как bat-файл.

Персональные инструменты