Ошибка sfc.exe: Для завершения восстановления системы требуется перезагрузка. Приветствую всех на страницах блога К76, сегодня попытаемся справиться с очередной ошибкой утилиты восстановления системных файлов Windows sfc.exe. На этот раз симптомы проблемы таковы. Запуская утилиту с целью проверить целостность жизненно важных для Windows файлов из консоли
sfc /scannow
консоль возвращает нам бессмысленную, казалось бы, ошибку, обозначенную в заголовке:
Для завершения восстановления системы требуется перезагрузка. Перезапустите систему Windows и выполните sfc еще раз.
Перезапуск системы и повторный прогон утилитой ничего не дают: пользователя преследует всё то же сообщение.
Как избавиться от ошибки ” Для завершения восстановления системы требуется перезагрузка “?
Чаще всего эта проблема подстерегает владельцев Windows 7. Подойдём к решению вопроса с нескольких сторон. По определению, я всё-таки должен вас попросить послушаться совета консоли и перезагрузить Windows с целью запустить sfc.exe повторно. Но, раз уж вы здесь, постоянный перезапуск системы уже не помогает.
Убиваем файл pending.xml
Ну не могу я вас оставить без теории. Вероятнее всего, что причиной такого поведения утилиты (и системы в целом) стали некорректно установленные обновления. И указанный файл pending.xml содержит в себе информацию по полученным и применяемым файлам обновлений и ключей (а иногда и целых разделов) реестра. Которые, как вы успели заметить, просятся к установке во время завершения работы Windows. Как только мы согласимся, в систему полезут критические и не очень обновления. Если что-то пойдёт не так ещё на этапе применения критических обновлений, система откатится обратно. Если критические обновления установятся успешно, но неудача подстережёт нас на этапе установки некритических, система попытается их установить при перезагрузке, используя ключ реестра SetupExecute и подсистему Диспетчера сеанса (smss.exe). Когда система загружается, она читает указанный ключ реестра на повторную установку обновлений. И, если снова беда – установка обновлений откладывается. Так что при круговой перезагрузке из-за неудачных обновлений следует удалять именно указанный ключ. Однако в нашем случае система не может именно разобрать границы между “качеством” обновлений на очереди: где критические, а где нет. И Windows загружается нормально. А, раз она загрузилась, значит и обновлений никаких к применению нет. Таким образом ситуация глупая – внешне всё работает, однако до очередной попытки обновиться неполадки в системе может заметить только sfc и DISM. Вывод? Он в заглавии абзаца.
- Отправляемся в папку
C:\Windows\WinSxS\
ищем файл pending.xml и переименуем его любым понравившимся вам способом. Все стающие в очередь при перезагрузке задачи не появятся в следующем сеансе, и можно будет попробовать запустить sfc повторно.
Если не помогло…
Перезагружаем Windows в ремонтную консоль, вызывая средство восстановления системы. В Windows это делается обычно прерыванием (один-два раза) нормальной загрузки системы. Вобщем, нам нужна “аварийная” консоль команд:

- Запускаем команды поочерёдно:
del *:\Windows\WinSxS\cleanup.xml del *:\Windows\WinSxS\pending.xml
где * – буква тома с системными файлами Windows. ВНИМАНИЕ! Буква диска может отличаться от привычной С. Для определения нужной буквы вам пригодится утилита по работе с разделами DISKPART.
Для Windows 8|10 можно попробовать и такую команду:
dism.exe /image:*:\ /cleanup-image /revertpendingactions
Обратите внимание, флаг /online отсутствует не случайно, дабы избежать ошибки типа DISM doesn’t support servicing Windows PE with /Online option.
- Теперь попробуем запустить sfc.exe отсюда:
sfc /scannow /offbootdir=*:\ /offwindir=*:\windows
- Выходим из консоли
exit
и перезагружаемся.
Успехов.
Большое спасибо автору за данную статью !!!
На днях данный совет помог мне восстановить свою Windows 8.1, до прочтения этой статьи пришлось изрядно “помучаться” )))
К стати, после успешного выполнения “sfc /scannow” файл “pending.xml” пришлось вернуть на место (переименовать не получалось, поэтому переместил на рабочий стол))))) , т.к. без него виндовс уходила в bsod.
Вообщем автору респект !!!
Автору много благодарностей за полезную статью. Совет помог на 100 %. Файл “pending.xml” просто убрал, загрузившись с флешки WinPE Стрельца. Возвращать указанный файл назад в папку WinSxS не пришлось.
файл pending.xml оказался поврежден. спасибо.
Автору респект. Тоже сразу помогло, хорошо в гугле эта ссылка была первой.