Windows winsxs manifests amd64

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

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

  • в процессе обновления операционной системы могут повреждаться/удаляться файлы компонентов в местоположениях: %SYSTEMROOT%\Servicing\Packages и %SYSTEMROOT%\WinSxS ;
  • в процессе обновления операционной системы могут повреждаться/удаляться ветви/ключи реестра по путям: HKLM\Components , HKLM\Schema и HKLM\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing ;

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

  • Ошибки при передаче файлов по сетевому интерфейсу;
  • Ошибки дисковой/файловой подсистем;
  • Аппаратные сбои: ошибки чтения/записи оперативной памяти, сбои в любых иных аппаратных компонентах;
  • Ошибки в работе сторонних инструментов оптимизации: средства очистки реестра, оптимизации файловой системы, оптимизации хранилища компонентов, оптимизации каталога распространения и прч.
  • Ошибки в коде модулей компонентов Центра обновления Windows;

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

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

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

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

  1. Запустить проверку целостности системных файлов командой: sfc /scannow . Если вдруг более подробно хотите изучить утилиту, то информация есть в статье про sfc
  2. Произвести восстановления хранилища компонентов:
    • для Windows 8/10+ : Восстановление хранилища компонентов при помощи DISM
    • для Windows Vista/7 : Восстановление хранилища компонентов при помощи SURT
  3. Запустить утилиту SFCFix : Восстановление хранилища компонентов при помощи SFCFix
  4. Выполнить синхронизацию оригинальных файлов с рабочими папками и пересоздание жёстких ссылок повторным запуском команды: sfс /scannow
  5. Если на каком-либо из предыдущих шагов восстановления (1-4) обнаружены поврежденные файлы, которые соответствующие утилиты не смогли автоматически восстановить, то необходимо провести поиск и анализ [оставшихся] ошибок в следующих файлах журналов:
    • для Windows 8/10+ : %Windir%\Logs\CBS\CBS.log (при необходимости CbsPersist_*.cab ) и %Windir%\Logs\DISM\DISM.log
    • для Windows Vista/7 : %Windir%\Logs\CBS\CBS.log (при необходимости CbsPersist_*.cab ) и %Windir%\Logs\CBS\CheckSUR.log (при необходимости CheckSUR.persist.log )

и уже с полученным списком поврежденных файлов [самостоятельно] произвести восстановление компонентов прямой заменой файлов

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

    Выводы

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

    1. Всех вложенных файлов/директорий в папке %WinDir%\WinSxS ;
    2. Всех вложенных файлов/директорий в папке %WinDir%\Servicing ;
    3. Все содержимое ветвей реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing и HKEY_LOCAL_MACHINE\COMPONENTS ;

    но на деле подобный глобальный поход может привести к падению системы в синий экран смерти, так что будьте предельно аккуратны!!

    Что за папка WinSxS в Windows 10/7 и как ее очистить

    Папка WinSxS (Windows Side By Side) — это хранилище компонентов и встречается в системах Windows 10, Windows 7, Windows 8 и может достигать размеров до 20 Гб. Она расположена по пути C:\Windows\Winsxs и имеет уровень «системный». Это значит, что Вы ничего не должны удалять вручную, сжимать и перемещать данные в этой папке для её уменьшения. Также не рекомендую использовать сторонние программы для очистки этой папки. В папке WinSxS многие файлы используют технику, называемую Hard Linking. Эта функция «жестких ссылок» позволяет нескольким файлам получать доступ к одному и тому же местоположению, не создавая копии этого местоположения или данных. И эта главная причина по который вы не должны ничего удалять, если не хотите нарушить работу системы и запуска программ.

    В папке WinSxS хранятся несколько копий «dll», «exe» и других файлов, что позволяет приложениям запускаться в Windows без проблем с совместимостью. Также хранятся файлы обновлений и установки Windows, включая файлы резервных копий, чтобы при каждом сбое исходных файлов можно было легко восстановить систему Windows 10/8.1/7. К примеру, когда Windows 10 обновляется, то в системе устанавливается новая версия обновленного компонента, а старая сохраняется в папке WinSxS. Это необходимо для обеспечения совместимости приложений и возможности отката. Со временем папка WinSxS постоянно увеличивается и это приводит к недостатку места на системном локальном диске.

    Как правильно очистить папку WinSxS в Windows 10/7/8.1

    1 способ. Этот способ подойдет для Windows 10 и Windows 8.1. Откройте командную строку от имени администратора и введите следующую команду, которая сделает анализ папки WinSxS и даст рекомендацию по очистке, в моем случае написано «Да».

    • Dism.exe /online /Cleanup-Image /AnalyzeComponentStore

    Вводим следующую команду, чтобы начать очистку.

    • Dism.exe /online /Cleanup-Image /StartComponentCleanup

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

    • Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase

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

    • Dism.exe /online /Cleanup-Image /SPSuperseded

    2 способ. Этот способ подойдет для Windows 7 и всех остальных версий. Суть заключается в стандартной очистки диска, которая поможет вам уменьшить размер папки WinSxS. Нажмите правой кнопкой мыши на локальном диске C:\, где установлена сама система Window 7 и выберите «свойства«. Далее нажмите «Очистка диска«, выберите все галочками и ниже нажмите на кнопку «Очистить системные файлы«. У вас появится новое окно, где по сути вам нужно удалить старые обновления Windows, но я рекомендую выделить все галочками и нажать «OK»

    Примечание: У вас в Windows 7 может не быть параметра «Очистить системные файлы». Microsoft добавила эту функцию с обновлением патча KB2852386. Если у вас нет такой функции, то скачайте с официального сайта патчи Windows 7 32-bit | Windows 7 64-битная .

    Устранение ошибок, найденных в CheckSUR.log

    В этой статье описывается, как устранить повреждения обслуживания, которые средство проверки готовности к обновлению системы (CheckSUR) находит, но не может исправить самостоятельно. Выходные данные средства записывают в файл %WinDir%\Logs\CBS\CheckSUR.log.

    Исходная версия продукта: Windows 7 Пакет обновления 1, Windows Server 2012 R2
    Исходный номер КБ: 2700601

    Убедитесь, что вы скачали и запустите последние версии CheckSUR.exe, так как средство периодически обновляется. Для этого см. исправление ошибок в Обновлении Windows с помощью средства DISM или system Update Readiness.

    Использование журнала CheckSur

    Чтобы использовать журнал CheckSur, следуйте следующим рекомендациям:

    Если CheckSUR исправил все найденные ошибки, в журнале CheckSUR будут показаны следующие сведения:

    Сводка.
    Выполненные секунды: 100
    Найдено 10 ошибок
    Исправлено 10 ошибок

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

    Если вы получили сообщение о недоступных файлах восстановления, это означает, что некоторые несогласованные файлы, найденные средством, не могут быть исправлены. Это происходит потому, что средство не имеет правильных версий заменяемого файла. После того как появится это сообщение, в checkSUR.log отобра печатались сведения, похожие на следующие:

    Сводка.
    Выполненные секунды: 264
    Найдено 3 ошибки
    Общее число отсутствующих 3 CBS ИТ-2013:
    Недоступные файлы восстановления:

    6.0.1.6.cat
    winsxs\manifests\x86_microsoft-windows-servicingstack_31bf3856ad364e35_6.0.6002.18005_none_0b4ada54c46c45b0.manifest
    winsxs\manifests\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.0.6002.18005_none_676975d87cc9b6e6.manifest

    Чтобы устранить эту проблему, выполните следующие действия.

    1. Скачайте пакет, содержащий отсутствующие файлы. В этом примере необходимо скачать Windows6.0-KB958690-x64.msu.
    2. В %SYSTEMROOT%\CheckSUR папке создайте папку с именем Packages. Скопируйте Windows6.0-KB958690-x64.msu в %SYSTEMROOT%\CheckSUR\Packages папку.
    3. Повторное повторная проверка checkSUR.
    4. Если исходный пакет отсутствующих файлов не является очевидным, необходимо получить файлы с другого компьютера. Убедитесь, что компьютер, с которого копируют filhates, использует ту же версию ОС и системную архитектуру, что и компьютер, на котором вы работаете.
    5. Скопируйте файлы в папку поврежденного компьютера в следующем формате вложенных папок и повторно перезагрузийте %WinDir%\Temp\CheckSUR CheckSUR:
      • Поместите в папку все файлы типа *.and.cat. %WinDir%\Temp\CheckSUR\Packages
      • Поместите все файлы типа *.manifest в %WinDir%\Temp\CheckSUR\Manifests папку.

    Если в файле payload отсутствует сообщение, это означает, что требуемая двоичная папка недоступна. Это означает, что проблема не устранена. В checkSUR.log показаны следующие сведения:

    Сводка.
    Выполненные секунды: 100
    Найдено 3 ошибки
    Устранение 1 ошибки
    Общее число отсутствующих файлов полезной нагрузки CSI: 3
    Исправление того, что в файле полезной нагрузки CSI отсутствует общее число: 1

    (f) Файл payload CSI отсутствует 0x000000000 admparse.dll x86_microsoft-windows-ie-adminkitmostfiles_31bf3856ad364e35_6.0.6000.16386_none_abfb5fd109dad8b8 servicing_31bf3856ad364e35_6.0.6000.16386_none_23ddbf36a8a961bc
    (f) Файл payload CSI отсутствует в файле bootmgr 0x00000000 x86_microsoft-windows-b.. re-bootmanager-pcat_31bf3856ad364e35_6.0.6000.16386_none_c0f2f087b6457236
    (исправление) Файл полезной нагрузки CSI отсутствует в файле bootmgr 0x00000000 x86_microsoft-windows-b.. re-bootmanager-pcat_31bf3856ad364e35_6.0.6000.16386_none_c0f2f087b6457236
    (f) Файл payload CSI отсутствует 0x000000000 winload.exe x86_microsoft-windows-b.. environment-windows_31bf3856ad364e35_6.0.6000.16386_none_6701d52e8fdf8d45

    Чтобы устранить эту проблему, выполните следующие действия.

    1. Узнайте, какие файлы полезной нагрузки отсутствуют. Для этого проверьте журнал CheckSUR. Определите все строки с записью (f), за которой не следует (исправление). В предыдущем примере существует два файла полезной нагрузки, которые не были исправлены.
    2. Скопируйте эти файлы с другого компьютера. Убедитесь, что компьютер, с которого вы копируете файлы, использует ту же версию ОС и системную архитектуру, что и компьютер, на котором вы работаете.
    3. В paste the files into the appropriate subfolder under %windir%\winsxs .

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

    В этих командах представляет имя файла или папки, на которую вы

    нацелены. Например, можно нацелить следующую папку:
    C:\Windows\winsxs\x86_microsoft-windows-ie-adminkitmostfiles_31bf3856ad364e35_6.0.6000.16386_none_abfb5fd109dad8b8

    Читайте также:  Asus pt6 se windows 10
    Оцените статью