Ошибка 14098 хранилище компонентов повреждено - TurboComputer.ru
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд (пока оценок нет)
Загрузка...

Ошибка 14098 хранилище компонентов повреждено

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

Если при тех или иных действиях по восстановлению системных файлов и образа Windows 10 с помощью DISM вы видите сообщение об ошибках «Ошибка 14098 Хранилище компонентов повреждено», «Хранилище компонентов подлежит восстановлению», «Сбой DISM. Операция не выполнена» или «Не удалось найти исходные файлы. Укажите расположение файлов, необходимых для восстановления компонента, с помощью параметра Источник», требуется выполнить восстановление хранилища компонентов, о чем и пойдет речь в этой инструкции.

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

Простое восстановление

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

Для восстановления выполните следующие простые шаги

  1. Запустите командную строку от имени администратора (для этого в Windows 10 можно начать набирать «Командная строка» в поиске на панели задач, затем нажать правой кнопкой мыши по найденному результату и выбрать «Запуск от имени администратора»).
  2. В командной строке введите следующую команду:
  3. Выполнение команды может занять продолжительно время. После выполнения, если вы получаете сообщение о том, что хранилище компонентов подлежит восстановлению, выполните следующую команду.
  4. Если всё прошло гладко, то по завершении процесса (может «зависать», но настоятельно рекомендую дождаться окончания) вы получите сообщение «Восстановление выполнено успешно. Операция успешно завершена».

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

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

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

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

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

  1. В подключенном образе или на флешке (диске) зайдите в папку sources и обратите внимание на находящийся там файл с именем install (самый большой по объему). Нам потребуется знать его точное имя, возможны два варианта: install.esd или install.wim
  2. Запустите командную строку от имени администратора и используйте следующие команды.
  3. В результате выполнения команды вы увидите список индексов и редакций Windows 10 в файле образа. Запомните индекс для вашей редакции системы.

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

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

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

  1. Загрузите компьютер за загрузочной флешки или диска с Windows 10 в той же разрядности и версии, что установлена на компьютере или ноутбуке. См. Создание загрузочной флешки Windows 10.
  2. На экране после выбора языка внизу слева нажмите «Восстановление системы».
  3. Перейдите к пункту «Исправление неисправностей» — «Командная строка».
  4. В командной строке используйте по порядку 3 команды: diskpart, list volume, exit. Это позволит узнать текущие буквы разделов дисков, которые могут отличаться от тех, к которые используются в запущенной Windows 10. Далее используйте команды.
  5. Или install.wim, файл находится в папке sources на флешке, с которой вы загрузились. В этой команде мы узнаем индекс нужной нам редакции Windows 10.
  6. Здесь в /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, перезагрузить компьютер, а затем повторить установку.

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

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

DISM /Online /Cleanup-Image /CheckHealth

DISM /Online /Cleanup-Image /ScanHealth

DISM /Online /Cleanup-Image /RestoreHealth

DISM /Get-WimInfo /WimFile:F:Sourcesinstall.esd

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

DISM /Get-WimInfo /WimFile:G:Sourcesinstall.wim

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

DISM /Get-WimInfo /WimFile: F :Sourcesinstall.wim

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

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

DISM /Online /Cleanup-Image /RestoreHealth /Source:C:WIMWindows /LimitAccess

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

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

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

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

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

В процессе работы разнообразных диагностических и сервисных утилит (модули, входящие в состав Центра обновления Windows), может быть выявлено повреждение хранилища компонентов WinSxS , о чем в лог-файлах нам красноречиво сигнализирует статус ERROR_SXS_COMPONENT_STORE_CORRUPT . Основные причины повреждения хранилища компонентов заключаются в том, что:

  • в процессе обновления операционной системы могут повреждаться/удаляться файлы компонентов в местоположениях с корнем в: %SYSTEMROOT%ServicingPackages и %SYSTEMROOT%WinSxS ;
  • в процессе обновления операционной системы могут повреждаться/удаляться ветви/ключи реестра в местоположениях: HKLMComponents , HKLMSchema и HKLMSoftwareMicrosoftWindowsCurrentVersionComponent Based Servicing ;
Читайте также:  Блютуз ошибка код 43 как исправить

Описанные проблемы впоследствии становятся причиной возникновения различного рода отказов установки обновлений. Повреждение/удаление файлов происходит по совершенно разнообразным причинам: сбои в сетевых модулях, дисковой подсистеме, ошибки чтения/записи оперативной памяти, аппаратные сбои любых компонентов станции, или же по причине ошибок в коде компонентов Центра обновления Windows. Чаще всего повреждаются *.cat , *.mum , *.manifest и *.dll -файлы. Все найденные методы восстановления хранилища компонентов я решил выделить в отдельную статью. И так, для восстановления хранилища компонентов у нас в распоряжении несколько разнообразных методик.

Разновидности повреждений

Причина 1: отсутствующий файл

в лог-файле %WinDir%LogsCBSCBS.log можно встретить сообщения о битых файлах такого вот рода:

Очевидно, что строки, содержащие ключевые слова Cannot repair member file.. указывают на то, что:

  • содержимое файла не соответствует содержимому хранилища для файла и WRP пытается его восстановить, тем не менее..
  • ..WRP не может восстановить файл описанного в строке компонента, потому что записи в реестре о нем присутствуют, а вот сам файл отсутствует в хранилище, о чем недвусмысленно намекает фрагмент строки ..file is missing .

Ниже по тексту можно найти ошибку STATUS_OBJECT_NAME_NOT_FOUND , указывающую на отсутствие подкаталога. В нашем случае, как видно из отчета, повреждению подверглась целая иерархия компонента, состоящая из подкаталогов и файлов, размещавшаяся в каталоге C:WindowsWinSxSamd64_prnbr002.inf_31bf3856ad364e35_6.1.7600.16385_none_49c93aa2c4304e9e . Заглянув в целевой каталог, я убедился, что он действительно пуст, а вот что за событие/действие удалило его содержимое, остается только гадать, хотя подобные инциденты в Windows-системах сплошь и рядом.

Причина 2: Расхождение контрольной суммы

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

В этом случае стек обслуживания компонентов (CSI) сообщает нам, что он не может перепроецировать системный файл C:WINDOWSProvisioningMicrosoft-Desktop-Provisioning-Sequence.dat , потому как информация в хранилище так же повреждена.

Причина 3: поврежденный или нулевой файл

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

В процессе изучения инцидента, в лог-файле %WinDir%LogsCBSCBS.log были обнаружены следующие ошибки:

7601.24443.1.8 , status : 0x80073712 , failure source : Resolve , start state : Absent , target state : Installed , client id : WindowsUpdateAgent

Ключевые слова, на которые в данном случае стоит обращать внимание, это:

  • Manifest hash for component .. does not match expected value .
  • Unable to load manifest for component ..

Из чего следует, что в данном случае возникла проблема с файлом wow64_microsoft-windows-directshow-core_31bf3856ad364e35_6.1.7601.24382_none_0f268a5b523efde9.manifest , который является манифестом и располагается в поддиректории %SystemRoot%WinSxSManifests . При более близком изучении было выяснено, что указанный файл почему-то нулевой.

Причина 4: попытка удаления отсутствующего компонента

При попытках установки того же обновления безопасности KB4499164 на другой рабочей станции, мы сталкиваемся с очередной разновидностью проблемы:

6.1.1.3 , Update : 4019265 – 2871_neutral_LDR , UninstallDeployment : amd 64 _ 006 f 1 bee 347 aa 0 a 86984388 c 82 ccb 379 _ 31 bf 3856 ad 364 e 35 _ 6 . 1.7601.23529_none_4683d079b6ce11b3

6.1.1.3 , Update : 4019265 – 2966_neutral_LDR

6.1.1.3 , Update : 4019265 – 2966_neutral_LDR , UninstallDeployment : amd 64 _ 0 f 4370 f 0564 ad 69 cbf 1 c 9624 ac 455552 _ 31 bf 3856 ad 364 e 35 _ 7 . 6.7601.23775_none_3e0e14d4d5b6573f

6.1.1.3.4019265 – 2966_neutral_LDR [ HRESULT = 0x80004005 – E _ FAIL ]

6.1.1.3 , Update : 4019265 – 2966_neutral_LDR [ HRESULT = 0x80004005 – E _ FAIL ]

6.1.1.3 [ HRESULT = 0x80004005 – E _ FAIL ]

7601.24443.1.8 , status : 0x80004005 , failure source : Execute , start state : Staged , target state : Installed , client id : WindowsUpdateAgent

Судя по всему установщик ругается на попытку удаления отсутствующего компонента amd64_microsoft-windows-w..lient-aux.resources_31bf3856ad364e35_7.6.7601.23775_ru-ru_306f57c17eac5f89 из пакета Package_846_for_KB4019265

6.1.1.3.4019265-2966_neutral_LDR . Сам компонент оказался на месте вместе со собственным манифестом, поэтому не понятно что же не нравится стеку обслуживания. Тем не менее что-то с этим пакетом явно не так.

Автоматическое восстановление хранилища

Windows 7:

В версии операционной системы Windows 7, до определенного момента, для решения проблемы восстановления хранилища компонентов разработчиками рекомендовалось специализированное Средство проверки готовности системы к обновлению (System Update Readiness Tool). Оно было призвано помочь в устранении проблем, препятствующих установке обновлений и сервисных пакетов обновлений, иными словами выполняло проверку файлов/ключей хранилища компонентов на всевозможные повреждения. Однако с выпуском обновления KB2966583 появилась возможность использовать утилиту обслуживания компонентов и пакетов DISM, которая была доступна пользователю лишь в версиях Windows 8 и более поздних. Для выполнения процедуры автоматического восстановления хранилища компонентов в Windows 7 и более поздних ОС запустите следующую команду из командной строки (и дождитесь завершения её работы):

dism /Online /Cleanup-Image /ScanHealth

*в Windows 7 отсутствуют привычные нам по новым версиям ключи /RestoreHealth и /CheckHealth .

Windows 10:

В операционной системе Windows 10 синтаксис командной строки утилиты претерпел некоторые изменения. Для восстановления хранилиша компонентов выполняем команду:

dism /Online /Cleanup-Image /RestoreHealth

В современных ОС при запуске описанной выше команды, DISM уже использует возможности Центра обновления Windows для получения (подкачки) файлов, требуемых программе обслуживания образов для восстановления. Но иногда случается так, что клиент Центра обновления Windows уже поврежден, тогда у нас остается возможность использовать любой аналогичный работоспособный экземпляр Windows в качестве источника файлов для восстановления. Для этого можно скачать папку Windows рабочей копии операционной системы на съемный носитель (USB/DVD), либо подключить её по сети (в качестве сетевой папки). После всех проведенных манипуляций выполните в командной строке следующую команду:

dism /Online /Cleanup-Image /RestoreHealth /Source:C:RepairSourceWindows /LimitAccess

*где параметр /Source указывает местоположение рабочей копии.

Результаты работы

Операция по восстановлению выполняется довольно продолжительное время, а результатом будет сообщение вида: “Выполнение операции scanhealth завершено, см. журнал по адресу %windir%logsCBSChecksur.log. Операция успешно завершена.”

Как можно увидеть из снимка экрана, вся информация о результатах восстановления содержится в файле %WinDir%LogsCBSCheckSUR.log :

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

Ручное восстановление хранилища

При всех стараниях разработчиков из Microsoft предоставить возможность конечному пользователю системы устранять возникающие проблемы в автоматическом режиме (при помощи специальных утилит), никогда полностью не будут исключены ситуации, в которых эти самые автоматизированные средства будут давать сбои. Причина тут кроется в симбиозе старых механизмов операционной системы и необходимостью постоянного внедрения новых (сырых) технологий, должным образом не заботясь о приведении в надлежащее состояние всех связанных (участвующих) компонентов, что, в свою очередь, порождает огромное количество проблем. Поэтому, всегда надо иметь средство на крайний случай, то есть уметь восстановить работоспособность вручную. В любом случае, ручное восстановление хранилища компонентов всегда начинается с анализа лог-файла компонентной модели: %WinDir%LogsCBSCBS.log .

Читайте также:  Ошибка 404 страница не найдена как исправить

Поиск рабочих экземпляров файлов

Методика восстановления хранилища компонентов сводится к поиску рабочих копий поврежденных или отсутствующих файлов на аналогичной, максимально приближенной по версиям, полностью рабочей системе. Для этого, после исследования файла %WinDir%LogsCBSCBS.log и составления списка проблемных файлов, выполняем поиск аналогичных файлов (по строго аналогичным путям) на нормально-функционирующей системе (желательно той же версии обновлений).
Расширения, имена файлов компонента и соответствующие им пути, которые (обычно) подлежат замене:

  • .cat и .mum – файлы компонента — каталог %WinDir%servicingPackages ;
  • .manifest -файлы компонента — каталог %WinDir%WinSxSManifests ;
  • Остальные файлы компонента ( .exe , .dll и другие) — каталог %WinDir%WinSxSимя_компонента;

Сброс безопасности

Поскольку объекты в иерархии директорий %WinDir%LogsCBSCBS.log защищены, непосредственно перед копированием, необходимо выполнить подготовительные действия по смене владельца необходимых каталогов и поврежденных целевых системных файлов.
Для этого выполним следующую команду:

takeown /f полный_путь_к файлуимя_файла

Далее, дать текущей учетной записи полный доступ к поврежденному файлу.
Для этого выполните следующую команду:

icacls полный_путь_к файлуимя_файла /GRANT АДМИНИСТРАТОРЫ:F

Копирование в целевую систему

И уже в финальной части, можно наконец-то скопировать работоспособные копии восстанавливаемых файлов компонента/пакета на место поврежденного:

  1. Если повреждены/отсутствуют .cat или .mum файлы компонета, то скопировать их в каталог %WinDir%servicingPackages ;
  2. Если поврежден/отсутствует .manifest -файл (манифест) компонента, то скопировать его в каталог %WinDir%WinSxSManifests ;
  3. Если повреждены/отсутствуют остальные файлы компонента, то скопировать их в каталог %WinDir%WinSxSимя_компонента ;

сделать это можно как при помощи командной строки, так и выполнить перемещение с помощью проводника Windows.

Восстановление хранилища компонентов Windows: способы решения проблемы

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

С помощью встроенного средства SFC.exe, запускается проверка на целостность защищенных системных файлов, а в случае обнаружения поврежденных файлов, происходит автоматическое восстановление неисправных или отсутствующих файлов.

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

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

Сначала необходимо выполнить восстановление хранилища компонентов Windows, а затем провести проверку и восстановление с помощью утилиты sfc.exe.

Восстановление поврежденного хранилища компонентов Windows можно провести двумя способами:

  • с помощью системной утилиты DISM.exe;
  • при помощи встроенного средства Windows PowerShell.

В данной статье мы выполним восстановление хранилища компонентов в Windows 10. Прочитайте инструкции для DISM.exe и Windows PowerShell.

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

Встроенное средство операционной системы Windows PowerShell восстанавливает файлы из хранилища компонентов используя Центр обновления Windows. Для выполнения необходимых действий потребуется подключение к интернету.

В Windows 10 расширяемое средство автоматизации Windows PowerShell доступно в меню «Пуск», при нажатии правой кнопкой мыши.

В PowerShell используются две команды:

  • Repair-WindowsImage -Online –ScanHealth — проверка хранилища системных файлов.
  • Repair-WindowsImage -Online –RestoreHealth — проверка и исправление хранилища системных файлов.

Запустите Windows PowerShell от имени администратора.

Для проверки и автоматического исправления поврежденного хранилища компонентов, в окне Windows PowerShell введите команду, а затем нажмите на «Enter»:

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

После завершения операции, в окне Windows PowerShell появится информация о выполненном действии.

Обратите внимание на строку «ImageHealthState», в случае успешного восстановления хранилища компонентов Windows, напротив будет написано: «Healthy».

Восстановление хранилища компонентов Windows при помощи DISM.exe

Встроенная утилита DISM.exe поможет выполнить восстановление системного хранилища компонентов, которое понадобится для проверки и восстановления системных файлов.

В средстве для развертывания и обслуживания образов DISM.exe, для проверки и восстановления целостности хранилища компонентов Windows, используются команды:

  • dism /Online /Cleanup-Image /CheckHealth — получение информации о наличии поврежденных файлов Windows. Проверка не производится, сведения берутся из ранее записанных значений.
  • dism /Online /Cleanup-Image /ScanHealth — проверка хранилища компонентов на целостность.
  • dism /Online /Cleanup-Image /RestoreHealth — проверка и автоматическое восстановление файлов из хранилища компонентов.

Проверка и восстановление хранилища компонентов Windows занимает много времени, вам нужно дождаться завершения процесса.

  1. Запустите командную строку от имени администратора.
  2. В окне интерпретатора командной строки введите команду:
  1. Подождите пока не завершится выполнение команды, которое занимает много времени.
  2. В окне командной строки отобразится информация об успешном завершении восстановления хранилища системных компонентов.

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

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

Образ Windows, используемый для восстановления хранилища компонентов должен соответствовать операционной системе, установленной на компьютере, иметь такую же версию, номер сборки и разрядность.

Если образ Windows будет использован непосредственно из работающей операционной системы, сначала необходимо скачать файл-образ с официального сайта Майкрософт, а затем сохранить его в формате «.ISO» на компьютере.

Щелкните правой кнопкой мыши по образу Windows с расширением «.ISO».

  1. В контекстном меню выберите «Подключить».
  2. Запустите командную строку от имени администратора.

В образе Windows в папке «sources» расположен файл «install.esd» или «install.wim», в котором находится операционная система. Посмотрите на расширение файла: «.esd» или «.wim», оно понадобится для правильного выполнения команд. Применяемые команды одинаковы для обоих типов расширений, нужно лишь вводить то расширение, которое используется в вашем случае.

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

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

На моем компьютере использована команда:

Образ Windows 10 монтирован на диске «F», а файл «install» имеет расширение «.esd».

Мы восстанавливаем хранилище компонентов для Windows 10 Pro (Профессиональная), в файле образе Windows данной редакции соответствует индекс «4».

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

В моем случае, используется следующая команда:

В этой команде «F:sourcesinstall.esd» — путь до файла install с расширением «.esd», «4» — индекс подходящей редакции операционной системы, «LimitAccess» — команда для ограничения работы служб обновления Windows.

Дождитесь окончания выполнения операции.

Восстановление хранилища системных компонентов из среды восстановления Windows

В случае неисправности или отключения Центра обновления Windows, для восстановления хранилища компонентов можно использовать образ Windows c установочного диска или флешки.

При использовании установочного диска или флешки c записанной Windows, сразу после включения ПК, выполните следующие действия:

  1. С помощью соответствующей клавиши войдите в загрузочное меню (Boot Menu) для выбора диска, с которого следует загрузить ПК.
  2. В первом окне программы установки Windows нажмите на кнопку «Далее».
  3. Во втором окне нажмите на «Восстановление системы».
  4. В следующих окнах пройдите по пути: «Выбор действия» → «Поиск и устранение неисправностей» → «Диагностика» → «Дополнительные параметры» → «Командная строка».
  5. После перезагрузки и входа в учетную запись откроется окно командной строки.
Читайте также:  Windows 10 выдает ошибку и перезагружается

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

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

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

Введите команду для отключения утилиты Diskpart:

Теперь нам нужно узнать индекс версии Windows, находящейся на установочном DVD диске или загрузочной флешке. Для этого, введите команду:

На своем ПК я ввел следующую команду:

Загрузочный диск обозначен именем «E», версия операционной системы Windows 10 Pro имеет индекс «4». Эти данные я буду использовать в дальнейших командах.

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

В моем случае, я ввел команду:

В этой команде «Image:C:» — буква диска установленной Windows, «E:sourcesinstall.esd» — путь к файлу «install.esd», «4» — индекс операционной системы на загрузочном диске.

Если на диске недостаточно свободного места для временных файлов, после этой команды можете добавить параметр «ScratchDir:D:», где «D:» — другой раздел диска достаточного размера.

В этом случае, введите полную команду подобного вида:

Подождите, пока операция успешно завершится.

Теперь ничто не помешает запустить проверку и выполнить восстановление системных файлов с помощью утилиты sfc.exe.

Выводы статьи

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

После завершения восстановления хранилища системных компонентов, можно перейти к проверке и восстановлению системных файлов.

Восстановление хранилища компонентов в Windows 8

Возвращаясь к технологии хранилища компонентов (Component Store)в Windows 8 рассмотрим сценарии его восстановления. Напомним, что начиная с Windows Vista Microsoft ввела концепцию компонентного обслуживания ОС (component based servicing). Благодаря компонентной структуре удалось добиться создания более стабильной системы установки/удаления обновлений, патчей и пакетов обновлений SP. Эта же система лежит в основе архитектуры Windows 8. Файлы хранилища компонентов Windows на диске располагаются в каталоге WindowsWinSxS, имеющего свойство со временем значительно разрастаться в размерах (подробнее о том, почему размер этого каталога со временем растет и как уменьшить размер папки WinSxS читайте в этой статье).

Однако в некоторых случая хранилище компонентов может повреждаться, что приводит к проблемам при установке обновлений Windows и другого ПО Microsoft. Для восстановления хранилища компонентов в предыдущих версиях Windows (Windows Vista, Windows 7, Windows Server 2008 /R2) Microsoft разработала специальную утилиту — CheckSUR или System Update Readiness Tool (KB947821). Данная утилита является достаточно большой по размеру (более 350 Мб), и по мере выход новых обновлений Windows регулярно обновляется. Это означает, что каждый раз приходится выкачивать свежую версию CheckSUR.

Что же делает данная утилита? System Update Readiness Tool проверяет целостность следующих ресурсов:

    Файлы в каталогах:

  • %SYSTEMROOT%ServicingPackages
  • %SYSTEMROOT%WinSxSManifests
    • Содержимое веток реестра:

    • %SYSTEMROOT%WinSxSManifests
    • HKEY_LOCAL_MACHINESchema
    • HKEY_LOCAL_MACHINEComponents
    • HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionComponent Based Servicing

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

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

    Список ошибок WindowsUpdate, вызванных повреждением хранилища компонентов

    CodeErrorDescription
    0×80070002ERROR_FILE_NOT_FOUNDThe system cannot find the file specified.
    0x8007000DERROR_INVALID_DATAThe data is invalid.
    0x800F081FCBS_E_SOURCE_MISSINGThe source for the package or file not found.
    0×80073712ERROR_SXS_COMPONENT_STORE_CORRUPTThe component store is in an inconsistent state.
    0x800736CCERROR_SXS_FILE_HASH_MISMATCHA component’s file does not match the verification information present in the component manifest.
    0x800705B9ERROR_XML_PARSE_ERRORUnable to parse the requested XML data.
    0×80070246ERROR_ILLEGAL_CHARACTERAn invalid character was encountered.
    0x8007370DERROR_SXS_IDENTITY_PARSE_ERRORAn identity string is malformed.
    0x8007370BERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAMEThe name of an attribute in an identity is not within the valid range.
    0x8007370AERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUEThe value of an attribute in an identity is not within the valid range.
    0×80070057ERROR_INVALID_PARAMETERThe parameter is incorrect.
    0x800B0100TRUST_E_NOSIGNATURENo signature was present in the subject.
    0×80092003CRYPT_E_FILE_ERRORAn error occurred while Windows Update reads or writes to a file.
    0x800B0101CERT_E_EXPIREDA required certificate is not within its validity period when verifying against the current system clock or the time stamp in the signed file.
    0x8007371BERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETEOne or more required members of the transaction are not present.
    0×80070490ERROR_NOT_FOUNDWindows could not search for new updates.

    В Windows 8 и Windows Server 2012 функционал, аналогичный утилите CheckSUR, уже встроен в систему и называется Inbox Corruption Repair (встроенное восстановление компонентов). Встроенное восстановление компонентов может работает в двух режимах: фоновом и ручном. Фоновое восстановление автоматически запускается в случае появления ошибок при попытке установить обновление Windows Update. Windows в этом случае автоматически пытается исправить поврежденный компонент и переустановить пакет Windows Update. В том случае, если автоматическое восстановление не может самостоятельно исправить проблему, администратор может исправить ошибки вручную, восстановив работоспособное состояния хранилища компонентов. Сделать это можно с помощью утилиты обслуживания образа DISM (команда Dism /Online /Cleanup-Image) или с помощью Powershell (командлет Repair-WindowsImage).

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

    Советы.

    1. DISM в отличие от большинства утилит Windows чувствительна к регистру символов.
    2. Команда Dism /Cleanup-Image сохраняет логи в каталогах C:WindowsLogsCBSCBS.log и C:WindowsLogsDISMdism.log

    Аналогичная команда Powershell:

    Проверка CheckHealth займет несколько минут. Как вы видите, текущий статус хранилища компонентов в образе – Healthy (Здоровый), т.е. восстановление не требуется.

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

    Аналогичная Powershell команда:

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

    В том случае, если система самостоятельно не смогла восстановить некоторые компоненты в хранилище, вам может понадобится дистрибутив (установочный диск) Windows 8. Вставьте данный диск в привод или смонтируйте его iso образ. Допустим, диску с дистрибутивом назначена буква E. Получим список доступных версий Windows 8 на диске с помощью команды PoSH:

    В данном примере, мы видим, что на диске имеется только один образ (Windows 8 Pro) с индексом 1 (Index: 1).

    Следующая команда запустит восстановление хранилища с восстановлением повреждённых компонентов из оригинального образа Windows 8:

    , где 1 – индекс версии образа в дистрибутиве, полученный ранее.

    После завершения восстановления удостоверьтесь, что хранилище компонентов находится в работоспособном состоянии (статус: Healthy)

    Следующий (не всегда обязательный этап) – проверка целостности системных файлов с помощью команды:

    Ссылка на основную публикацию
    Adblock
    detector