Перезагрузите компьютер сразу после установки обновлений Windows независимо от времени работы

507
bwDraco

Допустим, у меня есть серьезное обновление для Windows 10, например, обновление функции до версии 1803 или, возможно, более крупное ежемесячное накопительное обновление. Я хочу оставить обновление работающим без присмотра после его запуска, возможно, пока меня нет дома, но для завершения обновления необходим перезапуск, а активные часы установлены так, чтобы оно не перезапускалось само, если только не наступило ночное время.

Могу ли я попросить Windows перезагрузить компьютер сразу после завершения обновления, независимо от текущего времени или запущенных приложений?

Мой основной рабочий стол работает под управлением Windows 10 Pro, поэтому можно использовать групповую политику, но предпочтительным является ответ, который не требует функций Pro.

7
Существует множество групповых политик, которые управляют поведением Центра обновления Windows, но обе потребительские версии работают одинаково, обновление обычно устанавливается либо по расписанию, либо при перезагрузке компьютера вручную. Как долго вы можете переходить от времени ожидания обновления к фактическому перезапуску, зависит от того, какая у вас версия Windows. Если вы хотите, чтобы обновление было установлено, сразу после его установки потребуется использовать WSUS и эти групповые политики. Поскольку я не знаю, как конкретно это сделать, я воздержусь от предоставления ответа. Ramhound 5 лет назад 0
Напоминаю, что события записываются в журналы событий WU. Если есть тот, который указывает, что все ожидающие обновления были установлены ... или что есть ожидающая перезагрузка ... сценарий мог бы легко отслеживать это и запускать необходимый перезапуск. Twisty Impersonator 5 лет назад 2

2 ответа на вопрос

4
Rob

Могу ли я попросить Windows перезагрузить компьютер сразу после завершения обновления, независимо от текущего времени или запущенных приложений?

Почти.

См. Microsoft Docs: « Управление перезагрузками устройства после обновлений »:

«Вы можете использовать параметры групповой политики, управление мобильными устройствами (MDM) или реестр (не рекомендуется) для настройки, когда устройства будут перезагружаться после установки обновления для Windows 10. Вы можете запланировать установку обновления и установить политики для перезапуска, настроить активные часы, когда перезагрузки не произойдет, или вы можете сделать и то, и другое.

Что я имею в виду под «почти» ?, если часы активны и установлено обновление, компьютер может подождать и предупредить вас перед перезагрузкой из-под вас. Это «почти» часть, в активные часы, которые нужно подождать, предложить предупреждение, а затем, если вы не отмените его, он перезагрузится - не будет «постоянно обнаруживать, что я ухожу в активные часы», если вы не установите очень короткая задержка планирования (которая поймала бы вас, если бы вы использовали компьютер и были отозваны).

Читайте по этой ссылке (которая находится на веб-сайте Microsoft, поэтому она должна оставаться актуальной и перенаправлять при перемещении; в качестве альтернативы есть WayBack):

« Расписание обновления установки

В групповой политике в разделе «Настройка автоматических обновлений» вы можете настроить принудительный перезапуск после определенного времени установки.

Чтобы установить время, вам нужно перейти в «Настройка автоматических обновлений», выбрать опцию 4 - «Автоматическая загрузка» и запланировать установку, а затем ввести время в раскрывающемся списке «Время установки по расписанию». Кроме того, вы можете указать, что установка будет происходить во время автоматического обслуживания (настраивается с помощью Конфигурация компьютера \ Административные шаблоны \ Компоненты Windows \ Планировщик обслуживания).

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

Хотя это и не рекомендуется, тот же результат может быть достигнут через Реестр. В разделе HKLM \ Software \ Policies \ Microsoft \ Windows \ WindowsUpdate \ AU установите для AuOptions значение 4, установите время установки с ScheduledInstallTime, включите AlwaysAutoRebootAtScheduledTime и укажите задержку в минутах через AlwaysAutoRebootAtScheduledTimeMinutes. Подобно групповой политике, AlwaysAutoRebootAtScheduledTimeMinutes устанавливает таймер для предупреждения вошедшего в систему пользователя о том, что произойдет перезапуск.

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

Существует дополнительная информация о: «Всегда автоматически перезапускать в запланированное время», «Задействованный перезапуск», «Запланированные предупреждения о автоперезапуске» и т. Д. Просто найдите комбинацию параметров, которая работает для вас, не вызывая слишком долгое ожидание, пока без присмотра ( даже в активные часы) и не обязывает вас перезагружаться без возможности прервать работу в течение определенного периода времени.

Возможно, 10-минутное предупреждение и двухчасовое расписание подойдут вам, настройка «загрузить и немедленно перезагрузить, пока я в отъезде» не сработает при непрекращающихся перерывах, полчаса может сработать, если вы хотите применить обновляет информацию о любых неприятностях от проникновения, чтобы позволить перезагрузку.

1
3D1T0R

Вот быстрое и грязное решение, которое я использовал много раз, оно никогда не подводило меня, но и не очень изощренно (хотя, конечно, легко).

Я предполагаю, сколько времени это займет, и дать ему дополнительное время (например, «это не займет больше часа, я дам два»), затем я открываю командную строку и начинаю обратный отсчет для так долго ( TIMEOUT 7200потому что 2 часа = 7200 секунд), подождите пока команда завершит работу ( &&), а затем запустите shutdownкоманду для перезагрузки компьютера.

TIMEOUT 7200 && shutdown -r 

Вы также можете использовать любые другие параметры команды shutdown, например, shutdown ( -s), reboot ( -r), перезагрузка и повторный запуск открытых приложений, если это возможно ( -g).

И я рекомендую вам также добавить /NOBREAKаргумент в TIMEOUTкоманду, чтобы, если окно командной строки имеет фокус клавиатуры, и клавиатура постукивала, оно не внезапно и неожиданно запускало команду выключения.

TIMEOUT 7200 /NOBREAK && shutdown -g