После установки обновлений в редких случаях Windows может начать постоянно требовать перезагрузить компьютер. Причем сколько бы раз вы его не перезагружали, в Windows Update постоянно будет висеть надпись ‘
Требуется перезагрузка, ожидание перезагрузки
‘ (
Restart required, pending restart
).
Такая проблема связана со сбоем при установке какого-то пакета обновления, которое не смогло внести изменения в образ системы и осталось в промежуточном состоянии.
Откройте консоль PowerShell с правами администратора и проверьте, есть ли пакеты (обновления), которые требуют перезагрузки компьютера (со статусом
Pending Reboot
). Выполните команду:
dism /online /get-packages /format:table | Select-String "Pending"
или такую команду PowerShell (имеет более читаемый вывод)
Get-WindowsPackage -Online | Where-Object { $_.PackageState -like '*Pending*' }
В этом примере видно, что пакет обновлений требует выполнить перезагрузку для внесения изменений в системе. Если после перезагрузки компьютера, статус компонентов не изменится и так же будет требовать перезагрузки, значит нужно отменить отложенную установку такого обновления.
Перезагрузите компьютер в среде восстановления Windows, выполнив команду
shutdown /f /r /o /t 0
(или загрузитесь с любого LiveCD, диска восстановления DaRT, или установочного образа Windows).
Для отмены запланированных обновлений со статусом Pending, нужно выполнить следующую команду (подразумеваем, что диску в Windows назначена буква C):
DISM /image:C:\ /ScratchDir:C: /cleanup-image /RevertPendingActions
Это отменит отложенные действия предыдущих операций обслуживания Windows.
Если команда DISM не помогла, отмените обновления, ожидающие установки. Для этого удалить файл pending.xml.
del C:\Windows\WinSxS\pending.xml
del C:\Windows\WinSxS\cleanup.xml
(файл может отсутствовать)
del C:\Windows\SoftwareDistribution\Download\*.*
(очистить кэш скачанных обновлений)
Затем запустите
regedit
и загрузите с диска куст реестра
C:\WINDOWS\system32\config\Software
.
Перейдите в загруженную ветку реестра
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager
и удалите параметр PendingFileRenameOperations
Сохраните изменения в файле, выгрузив куст реестра File -> Unload hive.
Перезагрузите компьютер, и проверьте, что из списка пропали обновления, ожидающие установки.
После этого обязательно проверьте целостность образа Windows и исправьте системные файлы командами:
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow