Приветствую всех! Недавно ко мне обратились клиенты с такой проблемой, что после сбоев в работе блока питания и его замены в сервере, операционная система Windows Server 2019 Standart работает не стабильно, часто фризит и работает не так как раньше. После этого, я решил проверить на целостность системных файлов Windows.
Для проверки целостности системных файлов и восстановления поврежденных файлов (библиотек) компонентов в Windows (Windows Server) можно использовать команды SFC и DISM. Эти две утилиты могут быть крайне полезными, если операционная система Windows работает нестабильно, появляются ошибки при запуске стандартных приложений или служб, после вирусного заражения и т.д.
Первым делом я проверил через командную строку целостность системных файлов с помощью утилиты SFC (System File Checker). Команда sfc /scannow позволяет проверить целостность системных файлов Windows. Если какие-то системные файлы отсутствуют или повреждены, утилита SFC попробует восстановить их оригинальные копии из хранилища системных компонентов Windows (каталог C:\Windows\WinSxS).
Но у меня появилась ошибка "Программа защиты ресурсов Windows обнаружила повреждённые файлы, но не может восстановить некоторые из них" - это говорит о том, что утилита не смогла получить необходимые файла из хранилища компонентов (образа) Windows.
В этом случае вам нужно попробовать восстановить хранилище компонентов вашего образа Windows с помощью DISM.
После восстановления образа вы можете повторно использовать утилиту SFC для восстановления системных файлов.
Восстановление образа Windows с помощью DISM /RestoreHealth
Чтобы исправить повреждения в хранилище компонентов образа Windows нужно использовать опцию RestoreHealth команды DISM. Эта опция позволит исправить найденные в образе ошибки, автоматически скачать и заменить файлы повреждённых или отсутствующих компонентов эталонными версиями файлов из центра обновлений Windows (на компьютере должен быть доступ в Интернет) - но этот способ помогает не всегда и в этот раз он мне не помог.
после чего я приступил ко второму способу.
DISM /Source: восстановление образа Windows с установочного диска
Я указал WIM с оригинальным установочным образом Windows, который нужно использовать в качестве источника для восстановления файлов системы. Cмонтировали установочный ISO образ Windows Server 2019 в виртуальный привод F: (в Вашем случае может быть другая буква)
С помощью следующей PowerShell команды можно проверить, какая версия Windows установлена на вашем компьютере:
Get-ComputerInfo |select WindowsProductName,WindowsEditionId,WindowsVersion, OSDisplayVersion
Выведем список доступных версий Windows в установочном образе:
Get-WindowsImage -ImagePath "F:\sources\install.wim"
В моём случае образ Windows Server 2019 Standart (возможности рабочего стола) в образе install.wim имеет ImageIndex = 2 .
Для восстановления хранилища компонентов из локального WIM файла с блокированием доступа в интернет, выполним следующую команду (главное не забыть указать индекс версии Windows в файле):
DISM /online /cleanup-image /restorehealth /source:WIM:D:\sources\install.wim:2 /limitaccess
Всё прошло отлично, без ошибок, значит можно вернуться обратно к первой команде - sfc /scannow. Пробуем и проверяем результат.
Получилось! Ошибки исправлены)
Спасибо и до новых встреч!