Запуск обновлений windows скриптом

Управление Windows Update с помощью PowerShell

Модуль PSWindowsUpdate, автором которого является Michal Gajda, позволяет управлять параметрами обновления ОС Windows на любом компьютере под управлением PowerShell 2.0 или выше.

PSWindowsUpdate даёт возможность администраторам предприятий проверять и устанавливать обновления на удаленных рабочих станциях и серверах. Он особенно удобен в использовании для установки обновлений на Windows Server Core, у которых нет GUI, а также во время настройки Windows в режиме аудита.

После загрузки, извлекаем содержимое файла в папку C:\Windows\System32\WindowsPowerShell\v1.0\Modules\ .

Если на данном этапе появляется предупреждение User Access Control, выбираем «Продолжить».

Для извлечения файлов, необходимо запустить консоль PowerShell с правами администратора и выполнить команду, которая разрешит выполнять системные сценарии:

Данная команда дает возможность выполнять нам неподписанные скрипты PowerShell, но при этом несколько снижает уровень безопасности (т.к. в случае ошибки администратора может быть запущен скрипт, способный навредить системе).

В случае, если на данном этапе возникнет ошибка:

…необходимо зайти в gpedit.msc (Нажать сочетание клавиш Windows + R, откроется окно выполнить, ввести gpedit.msc и нажать Enter), перейти в раздел Конфигурация компьютера > Административные шаблоны > Компоненты Windows > Windows PowerShell и переключить состояние политики «Включить выполнение сценариев» в режим «Включено».

После изменения настроек политики, необходимо перезапустить консоль PowerShell, повторно выполнить команду, разрешающую сценарии, и проверить, повторится ли ошибка. Если выполнение завершится без ошибок, то можно проверить состояние политики с помощью команды:

Теперь, если всё прошло успешно, вывод PowerShell будет примерно следующим:

Затем, импортируем модуль PSWindowsUpdate и запрашиваем список доступных команд:

Одним из наиболее значимых командлетов является Get-WUInstall , который предназначен для загрузки и установки обновлений. Для просмотра обновлений, доступных для установки из MicrosoftUpdate, выполним команду

Точно такой же результат можно получить с помощью команды Get-WUList –MicrosoftUpdate :

Для установки с подтверждением вручную для каждого обновления можно использовать команду Get-WUInstall –MicrosoftUpdate :


Прочие параметры PSWindowsUpdate

Рассмотрим некоторые параметры, способные упростить жизнь системному администратору:

  1. Установка всех доступных обновлений из MicrosoftUpdate с последующей перезагрузкой:
  2. Запрет установки отдельного обновления из MicrosoftUpdate по названию и номеру KB:

и отмена запрета в случае необходимости:

Скрипт совместим со всеми операционными системами, начиная с Windows Vista и заканчивая Windows 10. Работоспособность сценария пока не проверялась на Windows Server 2016. Операционная система Windows Server 2003 не поддерживается.

При необходимости, для задания параметру ExecutionPolicy значения Restricted (настройки по умолчанию), можно воспользоваться следующей командой:

Запуск обновлений windows скриптом

Задача Установка обновлений Центра обновления Windows позволяет устанавливать обновления программного обеспечения, предоставляемые службой Центра обновления Windows, на управляемые устройства.

Если у вас нет лицензии на Системное администрирование, вы не можете создавать задачи с типом Установка обновлений Центра обновления Windows. Чтобы установить новые обновления, вы можете добавить их в существующую задачу Установка обновлений Центра обновления Windows. Рекомендуется использовать задачу Установка требуемых обновлений и закрытие уязвимостей вместо задачи Установка обновлений Центра обновления Windows. Задача Установка требуемых обновлений и закрытие уязвимостей позволяет автоматически устанавливать несколько обновлений и закрывать несколько уязвимостей в соответствии с заданными правилами. Также эта задача позволяет устанавливать обновления для программ сторонних производителей, то есть программ производства не Microsoft.

Вмешательство пользователя может потребоваться при обновлении программ сторонних производителей или при закрытии уязвимостей в программах сторонних производителей на управляемом устройстве. Например, пользователю может быть предложено закрыть программу стороннего производителя.

Чтобы создать задачу Установка обновлений Центра обновления Windows, выполните следующие действия:

  1. В главном окне программы перейдите к закладке Устройства → Задачи .
  2. Нажмите на кнопку Добавить .

Запустится мастер создания задачи. Для продолжения работы мастера нажмите на кнопку Далее .

  • Для программы Kaspersky Security Center выберите тип задачи Установка обновлений Центра обновления Windows .
  • Укажите имя задачи, которую вы создаете.

    Имя задачи не может превышать 100 символов и не может содержать специальные символы («*<>?\:|).

  • Выберите устройства, которым будет назначена задача.
  • Нажмите на кнопку Добавить .

    Откроется список обновлений.

  • Выберите обновления Центра обновлений Windows, которые вы хотите установить и нажмите на кнопку ОК .
  • Укажите параметры перезагрузки операционной системы:
    • Не перезагружать устройство

    Клиентские устройства не будут автоматически перезагружаться после выполнения операции. Для завершения операции потребуется перезагрузить устройство (например, вручную или с помощью задачи управления устройствами). Информация о необходимости перезагрузки сохранена в результатах выполнения задачи и в статусе устройства. Этот вариант подходит для задач на серверах и других устройствах, для которых критически важна бесперебойная работа.

    В этом случае перезагрузка всегда выполняется автоматически, если перезагрузка требуется для завершения операции. Этот вариант подходит для задач на устройствах, для которых допустимы периодические перерывы в работе (выключение, перезагрузка).

    На экране клиентского устройства будет выводиться сообщение о том, что устройство должно быть перезагружено вручную. Для этого варианта можно настроить дополнительные параметры: текст сообщения для пользователя, периодичность сообщения, а также время, после которого перезагрузка будет выполнена принудительно (без подтверждения пользователя). Этот вариант является оптимальным для рабочих станций, чтобы пользователи могли выбрать наиболее удобное время для перезагрузки.

    По умолчанию выбран этот вариант.

    Если выбран этот вариант, программа с определенной частотой предлагает пользователю выполнить перезагрузку операционной системы.

    По умолчанию параметр включен. По умолчанию интервал составляет 5 минут. Допустимые значения: от 1 до 1440 минут.

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

    После предложения пользователю перезагрузить операционную систему, программа выполняет принудительную перезагрузку по истечении указанного времени.

    По умолчанию параметр включен. По умолчанию интервал времени составляет 30 минут. Допустимые значения: от 1 до 1440 минут.

    Запущенные программы могут не позволить перезагрузить клиентское устройство. Например, если выполняется работа с документом в текстовом редакторе и изменения не сохранены, программа не позволяет перезагрузить устройство.

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

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

    По умолчанию параметр выключен.

    Задача будет запускаться под той же учетной записью, под которой была установлена и запущена программа, выполняющая эту задачу.

    По умолчанию выбран этот вариант.

    В полях Учетная запись и Пароль укажите данные учетной записи, под которой должна запускаться задача. Учетная запись должна иметь необходимые права для выполнения задачи.

    Учетная запись, от имени которой будет запускаться задача.

    Пароль учетной записи, от имени которой будет запускаться задача.

    Задача будет создана и отобразится в списке задач.

  • Нажмите на имя созданной задачи, чтобы открыть окно свойств задачи.
  • В окне свойств задачи укажите общие параметры задачи в соответствии с вашими требованиями.
  • Нажмите на кнопку Сохранить .
  • Записки IT специалиста

    Технический блог специалистов ООО»Интерфейс»

    • Главная
    • Используем PowerShell для автоматизации установки обновлений

    Используем PowerShell для автоматизации установки обновлений

    Установка большого количества обновлений Windows Update обычно относится к тем рутинным операциям, которые каждый системный администратор хотел бы как можно сильнее автоматизировать. Действительно, данная задача занимает довольно много времени и требует время от времени отвлекаться, чтобы перейти от одного этапа к другому. Отчасти выручить в этой ситуации может создание собственного дистрибутива, уже включающего все необходимые обновления, но воспользоваться им удается не всегда. Иногда надо просто быстро обновить до актуального состояния какую-либо систему, тогда на помощь нам придет PowerShell.

    Кроме того, в режиме аудита Windows 8 использовать Центр обновления Windows нельзя и установить обновления привычным образом не получится.

    В этих, а также во многих других, случаях имеет смысл воспользоваться специальным модулем PowerShell для работы с Windows Update. Скачать его можно со страницы разработчика на Technet: Windows Update PowerShell Module. Мы настоятельно рекомендуем скачивать данный модуль именно оттуда.

    Данный модуль работает в системах, начиная с Windows Vista и Server 2008 и требует PowerShell 2.0, хотя оптимально будет использование PowerShell 3.0 и выше.

    Архив с модулем содержит папку PSWindowsUpdate, которую следует разместить в одном из двух возможных расположений:

    Если вы хотите использовать данный модуль на постоянной основе, то имеет смысл разместить его в системной папке, в остальных случаях лучше использовать для этого директорию в профиле пользователя. Учтите, в папке Мои документы отсутствуют вложенные директории WindowsPowerShell и Modules, поэтому их следует создать самостоятельно.

    Что дальше? В принципе уже сейчас можно воспользоваться одним из пакетных скриптов для данного модуля, доступных в сети. Но лучше сначала поработать с ним самостоятельно, после чего создать свой собственный пакетный файл.

    Откроем консоль PowerShell от имени Администратора. Прежде всего выясним установленную политику командой:

    По умолчанию обычно установлена политика Restricted, которая запрещает выполнение скриптов даже администратору. Поэтому изменим ее на RemoteSigned, позволяющую запускать локальные скрипты, также, в целях безопасности, рекомендуем изменять политику только для текущего сеанса. Выполним команду:

    Ключ -Scope позволяет задавать область применения политики, в данном случае это текущий процесс. Теперь можно выполнить импорт модуля командой:

    В Windows 7 и иных системах, использующих PowerShell 2.0 вы можете столкнуться со следующей ошибкой: Имя «Unblock-File» не распознано как имя командлета. Она возникает из-за использования в одном из скриптов функции появившейся в PowerShell 3.0.

    Однако ее несложно исправить. В папке с модулем откройте файл PSWindowsUpdate.psm1 и удалите в первой строке последовательность:

    Сохраните исправленный файл и повторите импорт модуля. Теперь можно приступить к работе с ним.

    Прежде всего получим список доступных обновлений:

    А вот и первый сюрприз, в списке обновлений присутствуют языковые модули, Skype и обновление для перехода на Windows 10. Все это приехало бы на ваш компьютер, воспользуйся вы одним из популярных скриптов для этого модуля, доступных в сети.

    К счастью модуль обладает широкими возможностями. Мы можем исключить пакеты из списка по их категории, ключ -NotCategory, названию, ключ -NotTitle, или номеру обновления, ключ -NotKBArticleID. Используем каждый из них, в нашем случае уберем категорию языковых пакетов, Skype и обновление до Windows 10:

    Вот, уже гораздо лучше.

    Теперь можно установить обновления командой:

    Ключи -AcceptAll и -IgnoreReboot включают одобрение всех пакетов и подавляют требование перезагрузки после установки некоторых обновлений.

    Убедившись, что все работает как надо, можно создать собственный пакетный файл, откроем блокнот и в одну строку запишем:

    Данная команда запускает PowerShell, устанавливает политику RemoteSigned, импортирует модуль, затем передает ему вышеуказанную команду. В общем делает все тоже самое, что мы только-что выполнили вручную. Сохраните данный файл как PSWindowsUpdate.cmd и теперь все что вам потребуется, это разместить модуль в нужном расположении и запустить данный пакетный файл с правами администратора.

    Удобно? Да. Правда учтите, что некоторые обновления требуют обязательной установки предыдущих, поэтому, если вы давно не обновлялись, данный скрипт придется запускать несколько раз. Но это все равно проще, чем проделывать все эти операции вручную, кликнул на скрипт и занимайся своими делами, время от времени поглядывая на экран.

    В Windows 8 языковые пакеты через WindowsUpdate не распространяются, поэтому команду можно немного упростить.

    Однако на этом возможности данного модуля не заканчиваются, он позволяет быстро установить нужные обновления зная только их номер. Это значительно облегчает задачу, так как не надо посещать сайт Microsoft, искать необходимую статью и скачивать пакет именно для вашей версии системы.

    Для установки отдельного пакета используйте команду (номер пакета использован исключительно для примера):

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

    Мы не ставили своей целью дать в данной статье полный обзор этого модуля, сфокусировавшись на решении конкретной задачи. Поэтому, если вас заинтересовали иные возможности данного модуля, то обратитесь к встроенной справке. Для этого откройте в блокноте файл интересующей функции, например, Get-WUInstall.ps1, каждый из которых автор снабдил подробным описанием.

    Надеемся, что данный материал поможет вам автоматизировать некоторые рутинные задачи и добавит в ваш арсенал новый, удобный инструмент.

    Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

    Или подпишись на наш Телеграм-канал:

    Читайте также:  Активатор reloaded для windows
    Оцените статью