Windows Update による意図しない再起動を防ぐ

updated: 2022-04-25

Windows Update による再起動を防ぎたい。 Windows Update は Windows がアクティブに利用されている時間を判断し、アクティブでない時間帯に自動で再起動する機能がある。

自動で再起動するのを防ぐため、アクティブ時間帯を更新し続けるという方法がある。 現在時刻から 12 時間はアクティブ時間帯だと主張することで再起動を防ぐ方法である。

そこで

  • アクティブ時間帯を更新する処理
  • 更新処理を定期的に実行

することで、再起動を防ぐことができる。

この方法はもちろん先人が自動的に設定できるようにしているので Maimer/update-active-hours を使うと良い。

update-active-hours の active_hours_scheduled_task.ps1 がエラーになったので、手動でタスクスケジューラにタスクを登録した。

powershell.exe を実行するタスクで、オプション引数に -windowstyle hidden -file C:\Documents\update-active-hours-master\update_active_hours.ps1 などと記載した。

メモ

update-active-hours が何をしているか(しようとしているか)を簡単にメモしておく。

  • Windows Update のアクティブ時間帯が、レジストリ コンピューター\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings の ActiveHoursStart, ActiveHoursEnd に定義されている
  • update-active-hours.ps1 は ActiveHours{Start,End} を powershell から設定するスクリプトである
  • active_hours_scheduled_task.ps1 は、 update-active-hours.ps1 の定期実行タスクをタスクスケジューラに登録している