Как восстановить хранилище компонентов windows

DISM: проверка и восстановление системных компонентов образа Windows 10

Для проверки целостности системных файлов и восстановления поврежденных файлов (библиотек) компонентов в Windows (Windows Server) можно использовать команды SFC и DISM (Deployment Image Servicing and Management). Данные утилиты могут быть крайне полезными, если операционная система Windows работает нестабильно, появляются ошибки при запуске стандартных приложений или служб, после вирусного заражения и т.д.

Утилита DISM включена в состав Windows, начиная с Vista и может быть использована во всех поддерживаемых версиях начиная с Windows 7/Windows Server 2008 R2 (есть ограничения) заканчивая последними билдами Windows 10 / Windows Server 2019. В этой статье мы рассмотрим, как использовать утилиты DISM и SFC для проверки и восстановления целостности образа и системных файлов Windows 10.

SFC /scannow: Проверка и восстановление системных файлов Windows

Утилиту DISM для восстановления Windows обычно рекомендуется использовать после утилиты проверки целостности системных файлов SFC (System File Checker). Команда sfc /scannow сканирует защищенные системные файлы Windows, и, если они отсутствуют или повреждены, попробует восстановить их оригинальные копии из хранилища системных компонентов Windows (каталог C:\Windows\WinSxS).

Если команда sfc /scannow возвращает ошибку “ Программа защиты ресурсов Windows обнаружила повреждённые файлы, но не может восстановить некоторые из них / Windows Resource Protection found corrupt files but was unable to fix some of them ”, скорее всего утилита не смогла получить необходимые файла из хранилища компонентов (образа) Windows.

В этом случае вам нужно попробовать восстановить хранилище компонентов (ваш образ Windows) с помощью DISM.

После восстановления образа вы можете повторно использовать утилиту SFC для восстановления системных файлов.

DISM /RestoreHealth: Восстановление хранилища компонентов образа Windows

Для сканирования образа Windows на наличие ошибок и их исправления используется параметр DISM /Cleanup-image . Рассмотренные ниже команды выполняются в командной строке, запущенной с правами администратора.

Чтобы проверить наличие признака повреждения хранилища компонентов образа Windows (флага CBS) , который выставил один из системных процессов, выполните следующую команду (не применимо к Windows 7/Server 2008R2):

DISM /Online /Cleanup-Image /CheckHealth

При запуске этой команды не выполняется сканирование хранилища, проверяются лишь записанные ранее значения и события в журнале Windows. Изменения не вносятся. Команда проверит, не помечен ли образ как поврежденный и возможно ли устранить данное повреждение.

В этом примере команда вернула, что с образом все хорошо:

No component store corruption detected.
The operation completed successfully.

DISM /Online /Cleanup-Image /ScanHealth – выполнить полное сканирование хранилища компонентов на наличие повреждений в системных образа Windows (выполняется довольно долго от 10 до 30 минут).

Если команда /ScanHealth возвращает ошибки:

  • Хранилище компонентов подлежит восстановлению (The component sore is repairable);
  • Ошибка: 1726. Сбой при удалённом вызове процедуры;
  • Ошибка: 1910. Не найден указанный источник экспорта объекта.

Это однозначно говорит о том, что ваш образ Windows 10 поврежден и его нужно восстановить.

Чтобы исправить ошибки, автоматически скачать и заменить файлы повреждённых или отсутствующих компонентов эталонными версиями файлов (библиотек) из центра обновлений Windows (на компьютере должен быть доступ в Интернет), выполните:

Читайте также:  Pancake 2 mac os

DISM /Online /Cleanup-Image /RestoreHealth

Процесс сканирования и восстановления компонентов может быть довольно длительным (30 минут или более).

Если восстановление выполнится успешно, появится сообщение:

Восстановление выполнено успешно. Операция успешно завершена.
The restore operation completed successfully. The operation completed successfully.

Если на компьютере (сервере) отсутствует доступ в Интернет или отключена служба Windows Update, то при восстановлении хранилища компонентов появляются ошибки вида:

  • 0x800f0906 — Не удалось скачать исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра Источник (0x800f0906 — The source files could not be downloaded. Use the source option to specify the location of the files that are required to restore the feature);
  • Ошибка: 0x800f0950 — Сбой DISM. Операция не выполнена (0x800f0950 — DISM failed. No operation was performed);
  • Ошибка: 0x800F081F. Не удалось найти исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра Источник (Error 0x800f081f, The source files could not be found. Use the «Source» option to specify the location of the files that are required to restore the feature).

Вы можете указать WIM или ESD файл с оригинальным установочным образом Windows, который нужно использовать в качестве источника для восстановления файлов компонентов системы. Предположим, вы смонтировали установочный ISO образ Windows 10 в виртуальный привод E:. Для восстановления хранилища компонентов из образа используйте одну из команд:

DISM /online /cleanup-image /restorehealth /source:E:\sources\install.wim
Или:
DISM /online /cleanup-image /restorehealth /source:E:\sources\install.esd

Чтобы запретить использовать центр обновлений Windows в Интернете, и выполнять сканирование и восстановление образа Windows только из локального WIM/ESD файла:

DISM /online /cleanup-image /restorehealth /source:E:\sources\install.wim /limitaccess
Или:
DISM /online /cleanup-image /restorehealth /source:E:\sources\install.esd /limitaccess

dism /online /cleanup-image /restorehealth /limitaccess

Журнал сканирования и восстановления системных файлов утилиты DISM можно найти здесь: C:\Windows\Logs\CBS.log .

После восстановления хранилища компонентов вы можете запустить утилиту проверки системных файлов sfc /scannow . Скорее всего она успешно восстановит поврежденные файлы (Программа защиты ресурсов Windows обнаружила поврежденные файлы и успешно их восстановила).

Восстановление поврежденного хранилища компонентов Windows 10/Server 2016 с помощью PowerShell

В версии PowerShell в Windows 10 и Windows Server 2016/2019 есть аналоги рассмотренных выше команд DISM. Для сканирования хранилища компонентов и поиска повреждений в образе выполните:

Repair-WindowsImage -Online –ScanHealth

Если ошибок в хранилище компонентов не обнаружено, появится сообщение:

ImageHealth State: Healthy

Для запуска восстановления системных компонентов и файлов наберите:

Repair-WindowsImage -Online -RestoreHealth

Repair-WindowsImage -Online -RestoreHealth -Source E:\sources\install.wim:1

Где, 1 – индекс используемой у вас редакции Windows из WIM или ESD файла (список редакций Windows в WIM файле можно вывести так: Get-WindowsImage -ImagePath «E:\sources\install.wim» ).

Восстановление хранилища компонентов оффлайн если Windows не загружается

Если Windows не загружается корректно, вы можете выполнить проверку и исправление системных файлов в оффлайн режиме.

  1. Для этого загрузитесь с установочного (загрузочного диска) и на экране начала установки нажмите Shift + F10
  2. Чтобы разобраться с буквами дисков, назначенных в среде WinPE, выполните команду diskpart -> list vol (в моем примере диску, на котором установлена Windows присвоена буква C:\, эту букву я буду использовать в следующих командах);
  3. Проверим системные файлы и исправим поврежденные файлы командой: sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows
  4. Для исправления хранилища компонентов используйте следующую команду (в качестве источника для восстановления компонентов мы используем WIM файл с установочным образом Windows 10, с которого мы загрузили компьютер):
    Dism /image:C:\ /Cleanup-Image /RestoreHealth /Source:D:\sources\install.wim
  5. Если на целевом диске недостаточно места, то для извлечения временных файлов нам понадобится отдельный диск достаточного размера, например F:\, на котором нужно создать пустой каталог: mkdir f:\scratch и запустить восстановление хранилища компонентов командой:
    Dism /image:C:\ /Cleanup-Image /RestoreHealth /Source:D:\sources\install.wim /ScratchDir:F:\scratch
Читайте также:  Windows 10 компьютер возвращение

Как восстановить Windows 10 (хранилище компонентов образа) с помощью DISM RestoreHealth

В данной статье показаны действия, с помощью которых можно восстановить Windows 10 (хранилище компонентов образа) с помощью DISM RestoreHealth.

В случае если операционная система работает не корректно, а утилита SFC не может справится с проблемой и выдаёт ошибку, то это значит что в операционной системе нарушена целостность хранилища системных компонентов, которые находятся в папке WinSxS системной директории.

Чтобы восстановить повреждённые компоненты и тем самым вернуть систему в рабочее состояние нужно воспользоваться утилитой для развертывания и обслуживания образов DISM.

Диагностика хранилища компонентов с помощью DISM

Следующие две команды выполняют диагностику (сканирование) системных компонентов образа на наличие повреждений.

Запустите командную строку от имени администратора и выполните следующую команду:

DISM /Online /Cleanup-Image /CheckHealth

Данная команда проверяет, был ли образ помечен как поврежденный и можно ли устранить повреждение, при этом никаких изменений в систему не вносится.

Если при выполнении предыдущей команды повреждение хранилища компонентов не обнаружено, то чтобы убедиться что все в порядке, необходимо запустить диагностику с параметром /ScanHealth. В этом случае выполняется более тщательная проверка целостности и наличие повреждений хранилища компонентов, при этом процесс сканирования занимает больше времени и также никакие изменения в систему не вносятся.

В командной строке открытой от имени администратора выполните команду:

DISM /Online /Cleanup-Image /ScanHealth

Восстановление хранилища компонентов /Restore Health

Если при выполнении предыдущих команд вы получили сообщения о различных ошибках, например: Хранилище компонентов подлежит восстановлению, Ошибка: 1726 Сбой при удалённом вызове процедуры, Ошибка: 1910 Не найден указанный источник экспорта объекта, то чтобы исправить это, нужно восстановить хранилище компонентов.

Чтобы восстановить хранилище компонентов, в командной строке открытой от имени администратора выполните команду:

DISM /Online /Cleanup-Image /RestoreHealth

Данная команда запустит процесс проверки и автоматического восстановления хранилища компонентов, при этом будет использоваться центр обновления Windows для загрузки и восстановления поврежденных файлов, что не гарантирует успешного выполнения в случае проблем с доступом к сети интернет или при повреждении компонентов службы обновления. Процесс сканирования и автоматического восстановления может занять около 20 минут и больше.

Если восстановление хранилища компонентов выполнено успешно, то теперь выполните проверку и восстановление целостности системных файлов с помощью команды sfc /scannow

Восстановление хранилища компонентов с указанием источника

Если команда с параметром /Restore Health после выполнения выдала ошибку 0x800f0906 Не удалось скачать исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра «Источник» или ошибку 0x800f081f Не удалось найти исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра «Источник», или ошибку 0x800f0950 Сбой DISM. Операция не выполнена,.

то для дальнейшего восстановления потребуется оригинальный ISO-образ Windows 10 который можно получить при помощи Media Creation Tool (соблюдая разрядность и редакцию) или установочная флешка (диск) с дистрибутивом Windows 10.

После того, как вы скачали образ, смонтируйте его в виртуальный привод стандартными средствами и в окне Этот компьютер проверьте, какая буква была присвоена смонтированному образу.

Если у вас имеется загрузочный диск DVD или USB накопитель с дистрибутивом Windows 10, то просто вставьте диск или подключите внешний носитель, и посмотрите, какая буква была присвоена этому накопителю в окне Этот компьютер.

Восстановление хранилища с файлом install.esd

После того как вы смонтировали ISO-образ в виртуальный привод или подключили установочный USB накопитель с дистрибутивом Windows 10, заходим в папку sources и смотрим какое расширение у файла образа install , оно может быть install .esd или install .wim , это пригодится в дальнейшем при вводе команды. Обычно при скачивании образа с помощью Media Creation Tool файл образа бывает с расширением .esd , то есть install.esd . Но также файл образа может быть с расширением .wim , то есть install.wim

Читайте также:  Драйверы scanjet для mac os

Теперь узнаем какие индексы содержит файл образа. В случае, если это install.esd, то в командной строке открытой от имени администратора выполните команду:

DISM /Get-WimInfo /WimFile:F:\\Sources\\install.esd

Узнав букву диска с дистрибутивом Windows 10 и индекс редакции операционной системы, восстановим хранилище системных компонентов.

Для этого в командной строке открытой от имени администратора выполните команду:

DISM /Online /Cleanup-Image /RestoreHealth /Source:ESD:F:\\Sources\\ install.esd : 4 /LimitAccess

Где F — буква виртуального дисковода с Windows 10 или буква флеш-накопителя с Windows 10
install.esd : 4 — файл образа с нужным вам индексом

LimitAccess — параметр запрещающий доступ к центру обновлений.

Если восстановление хранилища компонентов выполнено успешно, то теперь осталось выполнить проверку и восстановление целостности системных файлов с помощью команды sfc /scannow

Восстановление хранилища с файлом install.wim

Если в папке sources находится файл образа install.wim, то теперь узнаем какие индексы содержит файл образа. В командной строке открытой от имени администратора выполните команду:

DISM /Get-WimInfo /WimFile:G:\\Sources\\install.wim

Узнав букву диска с дистрибутивом Windows 10 и индекс редакции операционной системы, восстановим хранилище системных компонентов.

Для этого в командной строке открытой от имени администратора выполните команду:

DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:G:\\Sources\\ install.wim : 2 /LimitAccess

Где G — буква виртуального дисковода с Windows 10 или буква флеш-накопителя с Windows 10
install.wim : 2 — файл образа с нужным вам индексом

LimitAccess — параметр запрещающий доступ к центру обновлений.

Если восстановление хранилища компонентов выполнено успешно, то теперь выполните проверку и восстановление целостности системных файлов с помощью команды sfc /scannow

Восстановление хранилища путем монтирования install.wim

Далее представлен ещё один, более сложный способ по восстановлению хранилища компонентов.

Смонтируйте (подключите) ISO-образ в виртуальный привод или подключите установочный USB накопитель с дистрибутивом Windows 10, зайдите в папку sources и посмотрите какое расширение у файла образа install , оно может быть install .esd или install .wim , это пригодится в дальнейшем при вводе команды. В данном примере рассмотрены действия с файлом install.wim.

Теперь узнаем какие индексы содержит файл образа, для этого в командной строке открытой от имени администратора выполните команду:

DISM /Get-WimInfo /WimFile:F:\\Sources\\install.wim

Где F — буква флеш-накопителя с Windows 10 или буква виртуального дисковода с Windows 10.

В данном примере мы видит что в файле install.wim имеется два индекса (то есть две редакции Windows 10, в данном примере будет восстанавливаться хранилища компонентов Windows 10 Pro, запоминаем нужный индекс, нужной редакции операционной системы).

Теперь создадим временную папку, в которую смонтируем файл образа Windows (wim), для этого в командной строке открытой от имени администратора выполните команду:

Затем смонтируем файл install.wim в созданную директорию, выполнив команду:

DISM /Mount-Wim /WimFile:F:\\sources\\install.wim /index: 2 /MountDir:C:\\WIM /ReadOnly

Где F — буква флеш-накопителя с Windows 10, которую мы узнали ранее.
index: 2 — нужный индекс, нужной редакции операционной системы, который также мы узнали заранее.

ReadOnly — с помощью этого параметра устанавливаются права полного доступа к папке в которую монтируется файл install.wim.

Теперь собственно запустим процесс восстановления хранилища компонентов, выполнив команду:

DISM /Online /Cleanup-Image /RestoreHealth /Source:C:\\WIM\\Windows /LimitAccess

После того как процесс восстановления успешно выполнится, размонтируйте (отключите) образ, выполнив команду:

Удалите созданную ранее временную папку, выполнив команду:

Теперь обязательно перезагрузите компьютер, для этого выполните команду:

После перезагрузки компьютера выполните проверку и восстановление целостности системных файлов с помощью команды sfc /scannow

Оцените статью