Как в Windows 10 восстановить поврежденное хранилище в автономном режиме

Содержание

Информация к новости

  • Просмотров: 121 960
  • Автор: admin
  • Дата: 27-11-2016

27-11-2016

Категория: Восстановление Windows / Функционал Windows

Здравствуйте, Владимир! У меня целая эпопея с восстановлением хранилища оригинальных компонентов Windows 10. Нужен Ваш совет, думаю я Вас пойму, так как считаю себя опытным пользователем. Установленная на моём ноутбуке Windows 10 работает со значительными ошибками. Решил проверить целостность системных файлов с помощью средства sfc /scannow, но вышла ошибка «Программа защиты ресурсов Windows обнаружила повреждённые файлы, но не может восстановить некоторые из них». Как я понял, ошибка эта обозначает, что нарушена целостность самого хранилища системных компонентов Win 10 (папка WinSxS). Тогда решил проверить целостность этого самого хранилища командой Dism /Online /Cleanup-Image /ScanHealth, вышло сообщение «Хранилище компонентов подлежит восстановлению». Соответственно восстанавливаю хранилище командой Dism /Online /Cleanup-Image /RestoreHealth, данная команда восстанавливает хранилище компонентов с помощью Центра обновлений Windows, и у меня опять выходит ошибка «Не удалось скачать исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра «Источник»». Непонятно, почему вылезла ошибка в этот раз, ведь интернет у меня есть. Ладно думаю, буду использовать для восстановления хранилища компонентов средство PowerShell и ISO-образ Windows 10, скачал дистрибутив Windows 10 и подсоединил его к виртуальному дисководу, запустил PowerShell и ввёл команду: Repair-WindowsImage -Online -RestoreHealth -Source F:sourcesinstall.wim:1 (где буква «F» соответствует букве подключенного образа с Win 10, а цифра «1» — индексу издания в образе Win 10 PRO (именно она у меня установлена), но и в очередной раз я потерпел неудачу — «Ошибка: 0x800f081Сбой восстановления. Не найден источник восстановления, или хранилище компонентов восстановить невозможно». На одном известном форуме подсказали, что не нужно подсоединять ISO-образ Windows 10 к виртуальному дисководу, а нужно смонтировать ISO-образ с файлами Win 10 в папку с помощью команды: Dism /Mount-Wim /WimFile:F:sourcesinstall.wim /index:1 /MountDir:C:WIM /ReadOnly (где WIM, это пустая папка на диске C:, в которую монтируется ISO-образ, а F:sourcesinstall.wim — местонахождение файла-образа install.wim), но у меня и здесь уже при монтировании вышел промах«Ошибка: 11. Была сделана попытка загрузить программу, имеющую неверный формат».Короче я сдался и не знаю, почему у меня ничего не получается. 

Восстановление повреждённого хранилища компонентов Windows 10 при помощи Dism

Автор — ВладимирПривет, друзья. Цель данной статьи рассказать начинающим пользователям в подробностях, как производить восстановление повреждённого хранилища компонентов Windows 10 в различных критических ситуациях. Если вы хотите проверить целостность системных файлов в своей операционной системе, то поможет вам в этом встроенная утилита «sfc /scannow», но если она выдаст ошибку: «Программа защиты ресурсов Windows обнаружила повреждённые файлы, но не может восстановить некоторые из них», 

1480093619_107.jpg

то значит в вашей OSнарушена целостность самого хранилища системных компонентов (содержимое папки WinSxS). В этом случае нужно проверить целостность хранилища компонентов командой «Dism /Online /Cleanup-Image /ScanHealth», если при данной проверке тоже будут выходить различные ошибки, например, «Хранилище компонентов подлежит восстановлению», «Ошибка: 1910 Не найден указанный источник экспорта объекта», «Ошибка: 1726 Сбой при удалённом вызове процедуры», 

1480239943_14.jpg

то в этом случае нужно сначала восстановить хранилище компонентов, а уже затем восстанавливать целостность системных файлов с помощью «sfc /scannow», вот здесь начинается самое интересное, так как имеется очень много нюансов, давайте разберём их все.

Задействуем для восстановления повреждённого хранилища Систему обслуживания образов развертывания и управления ими (Dism)

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

Dism /Online /Cleanup-Image /RestoreHealth

Данная команда восстанавливает хранилище компонентов с помощью Центра обновлений Windows (у вас должен работать Интернет), отсутствующие компоненты будут скачаны на серверах Майкрософт и восстановлены в вашей системе. В итоге должны получить сообщение «Восстановление выполнено успешно».

Но если данная команда выдаст ошибку 0x800f0906«Не удалось скачать исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра «Источник»» или

выйдет другая ошибка 0x800f081f «Не удалось найти исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра «Источник»»,

то нужно использовать для восстановления хранилища ISO-образ Windows 10. Скачиваем дистрибутив Windows 10 на сайте Майкрософт и подсоединяем его к виртуальному дисководу (в моём случае (G:)), затем заходим в папку sources и смотрим какое сжатие у файла-образа Windows 10,

обычно бывает install.esd, запоминаем это, пригодится при вводе последующих команд (если в вашем случае попадётся файл install.wim, то читайте информацию в конце статьи).

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

Dism /Online /Cleanup-Image /RestoreHealth /Source:G:Install.esd /limitaccess

где G: — буква виртуального дисковода с Windows 10,

Install.esd — файл-образ Win 10,

/limitaccess  — параметр, закрывающий доступ к центру обновлений (ведь мы используем для восстановления дистрибутив Win 10)

В итоге получаем сообщение «Восстановление выполнено успешно. Операция успешно завершена».

Вот таким способом мы с вами восстановили повреждённое хранилище компонентов Windows 10.

Хранилище компонентов восстановлено, теперь восстанавливаем целостность системных файлов Windows 10 командой «sfc /scannow». Получаем сообщение «Программа защиты ресурсов Windows обнаружила повреждённые файлы и успешно их восстановила». Целостность системных файлов Windows 10 восстановлена.

Ещё один способ восстановления хранилища компонентов с помощью файла виртуального жёсткого диска VHD

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

Dism /Online /Cleanup-Image /RestoreHealth /Source:G:Install.esd /limitaccess

вы опять получите ошибку, к примеру, «Ошибка: 1726 Сбой при удалённом вызове процедуры».

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

Dism /Online /Cleanup-Image /RestoreHealth /Source:D:Windows /limitaccess

Где D: — буква подсоединённого виртуального диска VHD с развёрнутыми файлами Windows 10.

в результате будет произведено восстановление хранилища компонентов за счёт распакованных на виртуальный диск VHD файлов операционной системы.

Идём в Управлении дисками и создаём виртуальный диск VHD. «Действие»—>«Создать виртуальный жёсткий диск»

Отмечаем пункт «Динамический расширяемый». Размер виртуального жёсткого диска — 20 Гб. Жмём на кнопку «Обзор».

Выбираем в проводнике место сохранения виртуального жёсткого диска. Я выберу диск (F:). Присваиваю имя виртуальному диску — «Win10» и жму кнопку «Сохранить».

«ОК»

Созданный виртуальный диск представляет из себя в Управлении дисками нераспределённое пространство (Диск 1) размером 20 Гб.

Щёлкаем на Диске 1 правой мышью и выбираем «Инициализировать диск»

По большему счёту всё равно какой пункт отмечать — MBR или GPT. Я отмечу пункт «Таблица с GUID разделов (GPT)» и жму «ОК»

После инициализации диска создаём на нераспределённом пространстве простой том.

Новый том (G:) создан.

Архивы операционной системы — install.esd или install.wim могут содержать в себе несколько других архивов (релизов) операционных систем (Про, Домашняя и т.д.) и этим образам присваиваются индексы 1, 2, 3, 4. Чтобы узнать, какие образы находятся внутри нашего файла install.esd, вводим команду:

Dism /Get-WimInfo /WimFile:G:\sourcesinstall.esd

Где G: буква виртуального дисковода с Windows 10,

sourcesinstall.esd — адрес файла-образа install.esd в дистрибутиве Win 10.

На моём компьютере установлена Windows 10 PRO и именно её я хочу восстановить. Нужный мне образ Win 10 PRO имеет индекс 1.

Вводим команду:

Dism /apply-image /imagefile:G:\sourcesinstall.esd /index:1 /ApplyDir:D:\

Где G:sources — адрес расположения файла install.esd, 

index:1 — индекс Windows 10 PRO,

D: — подключенный виртуальный диск VHD (раздел D:).

Операция успешно завершена.

Файл install.esd (Win 10 PRO) развёрнут на виртуальный диск VHD (раздел D:).

Ну и теперь восстанавливаем хранилище компонентов за счёт распакованных на виртуальный диск VHD (раздел D:) файлов операционной

системы Win 10, командой:

Dism /Online /Cleanup-Image /RestoreHealth /Source:D:Windows /limitaccess

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

Вот таким ещё способом мы с вами восстановили повреждённое хранилище компонентов Windows 10! Теперь восстанавливаем целостность системных файлов Windows 10 командой «sfc /scannow». 

В конце статьи вам пригодится такая информация. Если в ISO-образе Windows 10, в папке sourses, вам попадётся вместо файла install.esd файл install.wim, то команда восстановления немного изменится:Dism /Online /Cleanup-Image /RestoreHealth /Source:G:install.wim /limitaccessЭто команда восстановления хранилища компонентов.Статья по этой теме: Восстановление повреждённого хранилища компонентов Windows 10 с помощью PowerShellДрузья, ещё хочу сказать, что вWinPE (Среда предустановки Windows) восстанавливать хранилище компонентов предпочтительнее, так как операция восстановления будет происходить c неработающей операционной системой.ВернутьсяКомментариев: 45 Дорогой посетитель, Вы можете задать на сайте любой вопрос и обязательно получите ответ!

В данной статье показаны действия, с помощью которых можно восстановить 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

Теперь узнаем какие индексы содержит файл образа. В случае, если это 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 10install.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 10install.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), для этого в командной строке открытой от имени администратора выполните команду:

mkdir C:\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

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

DISM /Unmount-Wim /MountDir:C:\WIM /Discard

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

rmdir C:\WIM

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

shutdown /r /t 0

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

Выполнение команды может занять продолжительно время. После выполнения, если вы получаете сообщение о том, что хранилище компонентов подлежит восстановлению, выполните следующую команду.</li>

Dism /Online /Cleanup-Image /RestoreHealth

</li>Если всё прошло гладко, то по завершении процесса (может «зависать», но настоятельно рекомендую дождаться окончания) вы получите сообщение «Восстановление выполнено успешно. Операция успешно завершена». 

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

Восстановление хранилища компонентов с использованием образа Windows 10

Реклама

Следующий метод — использование образа Windows 10 для использования системных файлов с него для восстановления хранилища, что может пригодиться, например, при ошибке «Не удалось найти исходные файлы».

Вам потребуется: образ ISO с такой же Windows 10 (разрядность, версия), что установлена на вашем компьютере или же диск/флешка с нею. В случае, если используется образ, подключите его (правый клик по файлу ISO — подключить). На всякий случай: Как скачать Windows 10 ISO с сайта Майкрософт.

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

  1. В подключенном образе или на флешке (диске) зайдите в папку sources и обратите внимание на находящийся там файл с именем install (самый большой по объему). Нам потребуется знать его точное имя, возможны два варианта: install.esd или install.wim
  2. Запустите командную строку от имени администратора и используйте следующие команды.
  3. Dism /Get-WimInfo /WimFile:полный_путь_к_файлу_install.esd_или_install.wim
  4. В результате выполнения команды вы увидите список индексов и редакций Windows 10 в файле образа. Запомните индекс для вашей редакции системы. 
  5. Dism /Online /Cleanup-Image /RestoreHealth /Source:путь_к_файлу_install:индекс /LimitAccess

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

Исправление хранилища компонентов в среде восстановления

Если по той или иной причине восстановление хранилища компонентов не удается выполнить в запущенной Windows 10 (например, вы получаете сообщение «Сбой DISM. Операция не выполнена»), это можно сделать в среде восстановления. Я опишу способ с использованием загрузочной флешки или диска.

  1. Загрузите компьютер за загрузочной флешки или диска с Windows 10 в той же разрядности и версии, что установлена на компьютере или ноутбуке. См. Создание загрузочной флешки Windows 10.
  2. На экране после выбора языка внизу слева нажмите «Восстановление системы». 
  3. Перейдите к пункту «Исправление неисправностей» — «Командная строка».
  4. В командной строке используйте по порядку 3 команды: diskpart, list volume, exit. Это позволит узнать текущие буквы разделов дисков, которые могут отличаться от тех, к которые используются в запущенной Windows 10.  Далее используйте команды. 
  5. Dism /Get-WimInfo /WimFile:полный_путь_к_файлу_install.esd

    Или install.wim, файл находится в папке sources на флешке, с которой вы загрузились. В этой команде мы узнаем индекс нужной нам редакции Windows 10.

  6. Dism /Image:C: /Cleanup-Image /RestoreHealth /Source:полный_путь_к_файлу_install.esd:индекс

    Здесь в /Image:C: указывается буква диска с установленной Windows При наличии отдельного раздела на диске под пользовательские данные, например, D, рекомендую также указать параметр /ScratchDir:D: как на скриншоте для использования этого диска под временные файлы. 

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

Восстановление с распакованного образа на виртуальном диске

И еще один метод, более сложный, но также способный пригодиться. Использовать его можно как в среде восстановления Windows 10, так и в запущенной системе. При использовании метода необходимо наличие свободного пространства в объеме около 15-20 Гб на каком-либо разделе диска.

В моем примере будут использованы буквы: C — диск с установленной системой, D — загрузочная флешка (или подключенный образ ISO), Z — диск на котором будет создаваться виртуальный диск, E — буква виртуального диска, которая будет ему присвоена.

  1. Запустите командную строку от имени администратора (или запустите её же в среде восстановления Windows 10), используйте команды.
  2. diskpart
  3. create vdisk file=Z:virtual.vhd type=expandable maximum=20000
  4. attach vdisk 
  5. create partition primary
  6. format fs=ntfs quick
  7. assign letter=E
  8. exit 
  9. Dism /Get-WimInfo /WimFile:D:sourcesinstall.esd (или wim, в команде смотрим на нужный нам индекс образа).
  10. Dism /Apply-Image /ImageFile:D:sourcesinstall.esd /index:индекс_образа /ApplyDir:E:
  11. Dism /image:C: /Cleanup-Image /RestoreHealth /Source:E:Windows /ScratchDir:Z: (если восстановление производится в запущенной системе, то вместо /Image:C: используйте /Online

И ожидаем в надежде на то, что в этот раз получим сообщение «Восстановление выполнено успешно». После проведения восстановления вы можете размонтировать виртуальный диск (в запущенной системе правый клик по нему — отключить) и удалить соответствующий ему файл (в моем случае — Z:virtual.vhd).

Дополнительная информация

Если сообщение о том, что хранилище компонентов повреждено вы получаете при установке .NET Framework, а его восстановление описываемыми методами никак не влияет на ситуацию, попробуйте зайти в панель управления — программы и компоненты — включение или отключение компонентов Windows, отключить все компоненты .Net Framework, перезагрузить компьютер, а затем повторить установку.

</li>

При работе на операционной системе Windows 10, да и любой другой может случится всякое. Например, во время работы вы замечаете жуткие тормоза. Возникает мысль, что поработал вирус или вирусы. При проверке антивирусом, есть вероятность найти вирусы, а когда вы их очистите, то не факт, что произойдут какие-то изменения, так как они успели напортачить.

Итак, для проверки файлов Windows на целостность можно запустить утилиту sfc /scannow из командной строки и, если появится сообщение, что «программа защиты ресурсов Windows обнаружила повреждённые файлы, но не может восстановить некоторые из них», то эта статья поможет вам избавиться от этой ошибки. При наличии доступа в интернет, вы можете воспользоваться статьей: как восстановить повреждённое хранилище с помощью DISM.

При отсутствии интернета читаем далее эту статью.

Когда вы сканируете систему на целостность компонентов, то при обнаружении повреждённых файлов происходит их замена на рабочие из каталога WinSxS. Может быть данная папка удалена или файлы, находящиеся в ней, повреждены, тогда вы увидите сообщение, что «программа защиты ресурсов обнаружила поврежденные файлы…».

Как восстановить поврежденное хранилище компонентов при помощи Power Shell

Прочитайте вот эту статью, в которой я восстанавливал хранилище компонентов, используя следующую команду:

DISM /Online /Cleanup-Image /RestoreHealth

Чтобы она сработала необходимо подключение к сети, так как команда связывается с центром обновлений и загружает оттуда необходимые файлы. Возможно, что эта команда тоже не поможет, тогда воспользуемся более широким по возможностям инструментом – Power Shell.

Нажмите на значок поиска на панели задач, а потом введите фразу «PowerShell», из результатов выбираем пункт «Windows PowerShell», нажимаем по нему правой кнопкой мыши и щелкаем по варианту «Запустить от имени администратора».

В открывшемся окошке вводим такую команду:

Repair-WindowsImage -Online -RestoreHealth

Чтобы все сработало также понадобится интернет. Необходимо немного подождать, когда файлы скачаются, после чего хранилище компонентов будет иметь работоспособное состояние и система не будет доводить вас ошибками.

Если все прошло успешно, то в результатах вы должны заметить строчку:

ImageHealth State : Healthy

Она означает, что все восстановлено.

Что делать при отсутствии интернета для восстановления хранилища компонентов?

В этом случае понадобится загрузочный диск, либо флешка с Windows 10. Подойдет практически любой образ, желательно, чтобы была десятка. Можно загрузить с сайта Microsoft.

Это интересно: Cоздание загрузочной флешки Windows 10 (Rufus и Windows USB/DVD Download Tool)

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

Снова возвращаемся в PowerShell и вводим следующую команду:

Dism /Get-WimInfo /WimFile:R:sourcesinstall.wim, где R: буква созданного образом привода, с установочными файлами Windows 10. Данная команда определит, что за образ системы находится в виртуальном дисководе.

Дальше исполним такую команду:

Repair-WindowsImage -Online -RestoreHealth -Source R:sourcesinstall.wim:1

Буква R – это наш привод, а цифра 1 – индекс образа из первой команды.

Дальше пойдет процесс восстановления. Если этот процесс успешно завершится, вы увидите сообщение ImageHealth State : Healthy.

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

Для проверки целостности системных файлов и восстановления поврежденных файлов (библиотек) компонентов в 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:WindowsWinSxS).

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

sfc-scannow-programma-zashity-resursov-windows-obn.png

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

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

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

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

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

DISM /Online /Cleanup-Image /CheckHealth

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

dism-checkhealth-proverka-povrezhdenij-v-obraze.png

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

No component store corruption detected.The operation completed successfully.

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

В Windows 7 / Windows Server 2008 R2, чтобы работал параметр DISM /ScanHealth нужно установить отдельное обновление KB2966583 (иначе при запуске DISM будет появляться “Ошибка 87. Параметр ScanHealth не распознан в этом контексте”). Кроме, того эта же команда в Windows 7 используется для проверки хранилища и восстановления системных файлов (нет ключей /CheckHealth и /RestoreHealth).

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

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

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

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

DISM /Online /Cleanup-Image /RestoreHealth

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

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

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

dism-online-cleanup-image-restorehealth-vosst.png

Если на компьютере (сервере) отсутствует доступ в Интернет или отключена служба 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).

dism-restorehealth-error-0x800f081f-the-source.png

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

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

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

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

dism /online /cleanup-image /restorehealth /limitaccess

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

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

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

sfc-scannow-programma-zashity-resursov-windows-obn-1.png

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

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

Repair-WindowsImage -Online –ScanHealth

repair-windowsimage-online-scanhealth-imagehealt.png

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

ImageHealth State: Healthy

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

Repair-WindowsImage -Online -RestoreHealth

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

Repair-WindowsImage -Online -RestoreHealth -Source E:sourcesinstall.wim:1

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

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

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

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

Совет. Полезные параметры DISM, которые должен знать администратор:

  • DISM /Add-Package – установка MSU/CAB файлов обновлений, интеграция обновлений в образ Windows;
  • DISM /Get-Drivers – получение списка установленных драйверов;
  • DISM /Add-Driver – добавление драйверов в образ;
  • DISM /Add-Capability – установка компонентов и RSAT;
  • Dism.exe /StartComponentCleanup – очистка хранилища компонентов и удаление старых версий компонентов (папки WinSxS);
  • Dism /set-edition – переход с ознакомительной Windows на полную без переустановки.

Используемые источники:

  • https://remontcompa.ru/windows/vosstanovlenie-windows/1105-vosstanovlenie-povrezhdennogo-hranilischa-komponentov-windows-10-pri-pomoschi-dism.html
  • https://winnote.ru/instructions/405-kak-vosstanovit-windows-10-hranilische-komponentov-obraza-s-pomoschyu-dism-restorehealth.html
  • https://remontka.pro/component-store-recover-windows-10/
  • https://computerinfo.ru/vosstanovlenie-xranilishha-komponentov-v-windows-10/
  • https://winitpro.ru/index.php/2019/07/08/dism-cleanup-image-restorehealth/

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий