假设我对 Windows 10 进行了重大更新,例如功能更新至版本 1803 或更大的月度累积更新。我想在启动更新后让更新保持无人值守运行,也许在我出门时,但需要重新启动才能完成更新,并且活动时间已设置,因此除非是夜间,否则它不会自行重新启动。
我是否可以告诉 Windows 在更新完成后立即重新启动,而不管当前时间或是否有应用程序正在运行?
我的主桌面运行 Windows 10 Pro,因此组策略是一个选项,但最好是不需要 Pro 功能的答案。
答案1
我是否可以告诉 Windows 在更新完成后立即重新启动,而不管当前时间或是否有应用程序正在运行?
几乎。
请参阅 Microsoft 文档:“管理更新后的设备重启“:
“您可以使用组策略设置、移动设备管理 (MDM) 或注册表(不推荐)来配置安装 Windows 10 更新后设备重启的时间。您可以安排更新安装并设置重启策略,配置不发生重启的活动时间,或者您可以同时执行这两项操作。”
我说的“几乎”是什么意思?如果是活动时间并且计算机已经安装了更新可能想要等待并在重新启动之前警告你。这是“几乎”的部分,在活动时间内它需要等待,发出警告,然后如果您不取消,它将重新启动 - 除非您设置了非常短的调度延迟(如果您正在使用计算机并被叫走,它会抓住您),否则不会有“在活动时间内不断检测我是否离开”的情况。
通过该链接继续阅读(该链接位于 Microsoft 网站上,因此它应该保持最新状态并在移动时重定向;或者还有 WayBack):
“安排更新安装
在组策略中的配置自动更新中,您可以配置在指定的安装时间后强制重启。
要设置时间,您需要转到“配置自动更新”,选择选项 4 - 自动下载并安排安装,然后在“安排的安装时间”下拉列表中输入时间。或者,您可以指定在自动维护时间内进行安装(使用“计算机配置\管理模板\Windows 组件\维护计划程序”配置)。
始终在计划的时间自动重启会在指定的安装时间后强制重启,并允许您配置一个计时器来警告已登录用户即将发生重启。
虽然不推荐,但可以通过注册表实现相同的结果。在 HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU 下,将 AuOptions 设置为 4,使用 ScheduledInstallTime 设置安装时间,启用 AlwaysAutoRebootAtScheduledTime 并通过 AlwaysAutoRebootAtScheduledTimeMinutes 指定延迟时间(以分钟为单位)。与组策略类似,AlwaysAutoRebootAtScheduledTimeMinutes 设置计时器以警告已登录用户即将发生重启。
有关这些注册表项的详细说明,请参阅用于管理重启的注册表项。
还有关于“始终在计划时间自动重启”、“预约重启”、“计划自动重启警告”等的附加信息。只需找到适合您的设置组合不会在无人值守时造成太长时间的等待(即使在活动时间内),也不会让您在没有机会在一段时间内中止的情况下重新启动。
也许 10 分钟的警告和 2 小时的时间表对你有用,但“在我离开时下载并立即重启”的设置则不行工作对于不断的中断,如果您急于应用更新,而又不想被打扰重新启动,那么半小时的时间表可能会起作用。
答案2
这是一个我多次使用过的快速而简单的解决方案,它从来没有让我失望过,但它也不是很复杂(但确实很容易)。
我猜测它还要花多长时间,并给它额外的时间(例如,“这不会超过一个小时,我会给它两个小时”),然后我打开命令提示符,并开始这么长时间的倒计时(TIMEOUT 7200
因为 2 小时 = 7200 秒),让它等到命令完成(&&
),然后让它运行shutdown
命令来重新启动计算机。
TIMEOUT 7200 && shutdown -r
您还可以使用关机命令的任何其他参数,例如关机(-s
)、重新启动(-r
)、重新启动并在可能的情况下重新启动打开的应用程序(-g
)。
而且我建议您还将/NOBREAK
参数添加到命令中TIMEOUT
,以便如果命令提示符窗口具有键盘焦点,并且键盘受到撞击,它不会突然意外地运行关机命令。
TIMEOUT 7200 /NOBREAK && shutdown -g