Восстановление windows 10 dism с флешки

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

В этой статье мы рассмотрим, как использовать команды
sfc /scannow
,
DISM /Online /Cleanup-Image /RestoreHealth
или
Repair-WindowsImage -Online -RestoreHealth
для восстановления образа и системных фалов в Windows 10/11 и Windows Server 2022/2019/2016.

Содержание:

  • SFC /scannow: восстановление системных файлов Windows
  • Проверка целостности хранилища компонентов Windows с помощью DISM
  • Восстановление образа Windows с помощью DISM /RestoreHealth
  • DISM /Source: восстановление образа Windows с установочного диска
  • Восстановление образа Windows с помощью PowerShell
  • DISM: восстановление поврежденного хранилища компонентов, если Windows не загружается

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

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

Утилита SFC записывает все свои действия в лог-файл
windir%\logs\cbs\cbs.log
. Для всех записей, оставленных SFC в файле CBS.log проставлен тег [SR]. Чтобы выбрать из лога только записи, относящиеся к SFC, выполните команду:

findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log >"%userprofile%\Desktop\sfc.txt"

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

sfc /scannow Программа защиты ресурсов Windows обнаружила повреждённые файлы, но не может восстановить некоторые из них

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

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

Проверка целостности хранилища компонентов Windows с помощью DISM

Утилита DISM (Deployment Image Servicing and Management) доступна во всех версиях Windows, начиная с Vista.

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

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

DISM /Online /Cleanup-Image /CheckHealth

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

DISM /CheckHealth - проверка повреждений в образе windows

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

No component store corruption detected.
The operation completed successfully.

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

DISM /Online /Cleanup-Image /ScanHealth

Команда проверки образа Windows может выполняться довольно долго (от 10 до 30 минут). И вернет один из трех результатов:

  • No component store corruption detected – DISM не обнаружил повреждения в хранилище компонентов;
  • The component store is repairable – DISM обнаружил ошибки в хранилище компонентов и может исправить их;
  • The component store is not repairable – DISM не может исправить хранилище компонентов Windows (попробуйте использовать более новую версию DISM или вам придется восстанавливать образ Windows из резервной копии, сбрасывать или полностью переустанавливать вашу копию Windows.

DISM Cleanup-Image ScanHealth проверить хранилище компонентов Windows, хранилище компонентов можно исправить

В Windows 7 и Windows Server 2008 R2 для использования параметра DISM /ScanHealth нужно установить отдельное обновление KB2966583. Иначе при запуске DISM будет появляться “
Ошибка 87. Параметр ScanHealth не распознан в этом контексте
”.

Команда DISM /ScanHealth может вернуть ошибки:

  • Ошибка: 1726. Сбой при удалённом вызове процедуры;
  • Ошибка: 1910. Не найден указанный источник экспорта объекта.

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

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

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

DISM /Online /Cleanup-Image /RestoreHealth

В Windows 7/2008 R2 эта команда выглядит по другому:
DISM.exe /Online /Cleanup-Image /ScanHealth

Процесс сканирования и восстановления компонентов может быть довольно длительным (30 минут или более). DISM автоматически загрузит недостающие или поврежденные файлы образа с серверов Windows Update.

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

DISM /Online /Cleanup-Image /RestoreHealth - восстановление образа windows 10

DISM /Source: восстановление образа Windows с установочного диска

Если на компьютере (сервере) отсутствует доступ в Интернет или отключена/повреждена служба Windows Update (как восстановить клиент 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 files could not be found

<

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

  • Установочный диск/флешка/iso образ Windows
  • Смонтированный файл wim
  • Папка \sources\SxS с установочного диска
  • Файл install.wim с установочным образом Windows

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

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

С помощью следующей PowerShell команды проверьте, какая версия Windows установлена на вашем компьютере:

Get-ComputerInfo |select WindowsProductName,WindowsEditionId,WindowsVersion, OSDisplayVersion

powershell Get-ComputerInfo получить номер билда и редакцию windows

Выведите список доступных версий Windows в установочном образе:

Get-WindowsImage -ImagePath "D:\sources\install.wim"

В нашем случае образ Windows 11 Pro в образе install.wim имеет
ImageIndex = 6
.

Для восстановления хранилища компонентов из локального WIM/ESD файла с блокированием доступа в интернет, выполните следующую команду (не забудьте указать ваш индекс версии Windows в файле):

DISM /online /cleanup-image /restorehealth /source:WIM:D:\sources\install.wim:6  /limitaccess

Или:
DISM /online /cleanup-image /restorehealth /source:ESD:D:\sources\install.esd:6  /limitaccess

dism restorehealth source: восстановить хранилище компонентов из оригинального образа Windows на установочном диске, ISO, WIM файле

Если при запуске появляется

  • Ошибка Error: 50: DISM does not support servicing Windows PE with the /Online option, значит ваша DISM считает, что вы используете WinPE образWindows. Чтобы исправить это, удалите ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MiniNT.
  • Ошибка DISM Error 87: проверьте правильно написания команды, убедитесь что вы используете версию DISM для вашей версии Windows (обычно бывает при загрузке через WinPE/WinRE).

Утилита DISM пишет подробный журнал сканирования и восстановления системных файлов в файл
C:\Windows\Logs\DISM\dism.log
.

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

Программа защиты ресурсов Windows обнаружила поврежденные файлы и успешно их восстановила. 
Windows Resource Protection found corrupt files and successfully repaired them.

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

Если все системные файлы целы, появится сообщение:

Windows Resource Protection did not find any integrity violations

Восстановление образа Windows с помощью PowerShell

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

Repair-WindowsImage -Online –ScanHealth

Repair-WindowsImage -Online –ScanHealth ImageHealth State: Healthy

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

ImageHealth State: Healthy

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


Repair-WindowsImage -Online -RestoreHealth

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

Repair-WindowsImage -Online -RestoreHealth -Source D:\sources\install.wim:5 –LimitAccess

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

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

  1. Для этого загрузите компьютер с установочного образа Windows (проще всего создать загрузочную USB флешку с Windows 10/11 с помощью Media Creation Tool) и на экране начала установки нажмите
    Shift + F10
  2. Чтобы разобраться с буквами дисков, назначенных в среде WinPE, выполните команду
    diskpart
    ->
    list vol
    (в моем примере диску, на котором установлена Windows присвоена буква C:\, эту букву я буду использовать в следующих командах);

    diskpart получить буквы дисков

  3. Проверим системные файлы и исправим поврежденные файлы командой:
    sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows

    sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows

  4. Для исправления хранилища компонентов используйте следующую команду (в качестве источника для восстановления компонентов мы используем WIM файл с установочным образом Windows 10, с которого мы загрузили компьютер):
    Dism /image:C:\ /Cleanup-Image /RestoreHealth /Source:WIM:D:\sources\install.wim:6

    Dism /image /RestoreHealth offline в windows 10

  5. Если на целевом диске недостаточно места, то для извлечения временных файлов нам понадобится отдельный диск достаточного размера, например F:\, на котором нужно создать пустой каталог:
    mkdir f:\scratch
    и запустить восстановление хранилища компонентов командой:
    Dism /image:C:\ /Cleanup-Image /RestoreHealth /Source:D:\sources\install.wim /ScratchDir:F:\scratch

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

  • DISM /Add-Package
    – установка MSU/CAB файлов обновлений, интеграция обновлений в образ Windows;
  • DISM /Get-Drivers
    – получение списка установленных драйверов;
  • DISM /Add-Driver
    – добавление драйверов в образ;
  • DISM /Export-Driver
    – экспорт установленных драйверов Windows;
  • DISM /Add-Capability
    – установка дополнительных компонентов Windows через Features on Demand (например, RSAT, сервер OpenSSH или ssh клиент Windows;
  • DISM /Enable-Features
    и
    /Disable-Features
    – включение и отключение компонентов Windows (например, протокола SMBv1),
  • DISM /online /Cleanup-Image /StartComponentCleanup
    – очистка хранилища компонентов и удаление старых версий компонентов (папки WinSxS);
  • DISM /set-edition
    – конвертирование ознакомительной редакции Windows на полную без переустановки.

Можно ли запустить Windows 10 с USB накопителя — флешки или внешнего жесткого диска, не устанавливая ее на компьютер? Можно: например, в Enterprise версии в панели управления можно найти пункт для создания накопителя Windows To Go, который как раз делает такую флешку. Но можно обойтись и обычной Домашней или Профессиональной версией Windows 10, о чем и пойдет речь в этой инструкции. Если же вас интересовал простой установочный накопитель, то про него здесь: Создание загрузочной флешки Windows 10.

Для того, чтобы установить Windows 10 на флешку и запускать с нее, вам пригодится сам накопитель (не менее 16 Гб, в некоторых из описанных способов этого оказалось мало и потребовалась флешка на 32 Гб) и очень желательно, чтобы это был накопитель с поддержкой USB 3.0, подключенный к соответствующему порту (я экспериментировал с USB 2 и, откровенно говоря, намучился в ожиданиях сначала записи, а потом запуска). Для создания подойдет образ, скаченный с официального сайта: Как скачать ISO Windows 10 с сайта Microsoft (впрочем, с большинством других тоже проблем быть не должно).

Создание накопителя Windows To Go в Dism++

Одна из самых простых программ для создания USB накопителя для запуска с него Windows 10 — Dism++. К тому же программа на русском языке и в ней есть множество дополнительных функций, которые могут пригодиться в этой ОС.

Установка Windows 10 на флешку в Dism++

Программа позволяет подготовить накопитель для запуска системы из образа ISO, WIM или ESD с возможностью выбора нужной редакции ОС. Важный момент, который следует иметь в виду: поддерживается только загрузка UEFI.

Сам процесс установки Windows на флешку подробно описан в инструкции Создание загрузочной флешки Windows To Go в Dism++.

Установка Windows 10 на флешку в WinToUSB Free

Из всех опробованных мною способов сделать флешку, с которой можно запускать Windows 10 без установки, самым быстрым оказался способ с использованием бесплатной версии программы WinToUSB. Созданный в результате накопитель был работоспособен и проверен на двух разных компьютерах (правда, только в режиме Legacy, но судя по структуре папок должен работать и с UEFI загрузкой).

После запуска программы, в главном окне (слева) вы можете выбрать из какого источника будет создаваться накопитель: этом может быть образ ISO, WIM или ESD, компакт-диск с системой или уже установленная система на жестком диске.

Выбор образа Windows 10 в WintoUSB

В моем случае я использовал ISO образ, загруженный с сайта Microsoft. Для выбора образа нажимаем кнопку «Обзор» и указываем его расположение. В следующем окне WinToUSB покажет, что содержится на образе (проверит, все ли с ним в порядке). Нажимаем «Далее».

Следующий этап — выбрать накопитель. Если это флешка, она будет автоматически отформатирована (внешний жесткий диск не будет).

Последний этап — указать системный раздел и раздел с загрузчиком на USB накопителе. Для флешки это будет один и тот же раздел (а на внешнем жестком диске вы можете подготовить отдельные). Кроме этого, здесь же выбирается тип установки: на виртуальный жесткий диск vhd или vhdx (который помещается на накопитель) или Legacy (для флешки недоступно). Я использовал VHDX. Нажмите «Далее». Если вы увидите сообщение об ошибке «Недостаточно места», увеличьте размер виртуального жесткого диска в поле «Virtual hard disk drive».

Выбор разделов в WinToUSB

Последний этап — дождаться завершения установки Windows 10 на флешку (может происходить довольно долго). По окончании, вы можете загрузиться с нее, выставив загрузку с флешки или с помощью Boot Menu вашего компьютера или ноутбука.

Создание Windows To Go в WinToUSB

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

В целом, система в результате работала сносно: интернет по Wi-Fi работал, активация также сработала (я использовал пробную Enterprise на 90 дней), скорость по USB 2.0 оставляла желать лучшего (особенно в окне «Мой компьютер» при инициализации подключенных накопителей).

Важное примечание: по умолчанию, при запуске Windows 10 с флешки, локальные жесткие диски и SSD не видны, их нужно подключить с помощью «Управление дисками». Нажмите Win+R, введите diskmgmt.msc, в управлении дисками, кликните правой кнопкой мыши по отключенным накопителям и подключите их, если есть необходимость в их использовании.

Скачать программу WinToUSB Free можно с официальной страницы: http://www.easyuefi.com/wintousb/

Флешка Windows To Go в Rufus

Еще одна простая и бесплатная программа, позволяющая легко сделать загрузочную флешку для запуска Windows 10 с нее (также в программе можно сделать и установочный накопитель) — Rufus, о которой я уже не раз писал, см. Лучшие программы для создания загрузочной флешки.

Сделать такой USB накопитель в Rufus еще проще:

  1. Выбираем накопитель.
  2. Выбираем схему разделов и тип интерфейса (MBR или GPT, UEFI или BIOS).
  3. Файловую систему флешки (NTFS в данном случае).
  4. Ставим отметку «Создать загрузочный диск», выбираем ISO образ с Windows
  5. Отмечаем пункт «Windows To Go» вместо «Стандартная установка Windows».
  6. Нажимаем «Старт» и ждем. В моем тесте появилось сообщение, что диск неподдерживаемый, но в результате все работало исправно. 
    Сообщение о неподдерживаемом USB

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

Работает она тем же образом: в моем тесте запуск на двух ноутбуках прошел успешно, хоть и пришлось подождать на этапах установки устройств и настройки. Подробнее про Создание загрузочной флешки в Rufus.

Используем командную строку для записи Live USB с Windows 10

Имеется также способ сделать флешку, с которой можно запустить ОС и без программ, используя только инструменты командной строки и встроенные утилиты Windows 10.

Windows 10 на флешке с помощью Dism.exe

Отмечу, что в моих экспериментах USB, сделанный таким образом, не заработал, зависая при запуске. Из того, что нашел — причиной могло послужить то, что у меня «съемный накопитель», в то время, как для его работоспособности требуется, чтобы флешка определялась как фиксированный диск.

Данный способ состоит из подготовки: загрузить образ с Windows 10 и извлечь из него файл install.wim или install.esd (файлы Install.wim присутствуют в образах, загружаемых с Microsoft Techbench) и следующих шагов (будет использован способ с wim файлом):

  1. diskpart
  2. list disk (узнаем номер диска, соответствующий флешке)
  3. select disk N (где N — номер диска из предыдущего шага)
  4. clean (очистка диска, все данные с флешки будут удалены)
  5. create partition primary
  6. format fs=ntfs quick
  7. active
  8. exit
  9. dism /Apply-Image /imagefile:путь_к_файлу_install.wim /index:1 /ApplyDir:E:\ (в этой команде последняя E — буква флешки. В процессе выполнения команды может показаться, что она зависла, это не так).
  10. bcdboot.exe E:\Windows /s E: /f all (здесь E — это так же буква флешки. Команда устанавливает загрузчик на нее).

После этого можно закрыть командную строку и попробовать загрузиться с созданного накопителя с Windows 10. Вместо команды DISM можно использовать команду imagex.exe /apply install.wim 1 E:\ (где E — буква флешки, а Imagex.exe изначально нужно скачать в составе Microsoft AIK). При этом, по наблюдениям, вариант с Imagex требует больше времени, чем с помощью Dism.exe.

Дополнительные способы

И еще несколько способов записать флешку, с которой можно запустить Windows 10 без установки на компьютер, возможно, кому-то из читателей пригодиться.

  1. Вы можете установить пробную версию Windows 10 Enterprise в виртуальную машину, например, VirtualBox. Настроить подключение USB0 накопителей в ней, а потом запустить из панели управления создание Windows To Go официальным способом. Ограничение: функция работает для ограниченного числа «сертифицированных» флешек. 
    Windows 10 to Go в Enterprise версии

  2. В Aomei Partition Assistant Standard есть функция Windows To Go Creator, создающая загрузочную флешку с Windows так же, как это было описано для предыдущих программ. Проверено — работает без проблем в бесплатной версии. Подробнее о программе и где ее скачать я писал в статье про то, Как увеличить диск C за счет диска D. 
    Windows To Go Creator от Aomei

  3. Существует платная программа FlashBoot, в которой бесплатно доступно создание флешки для запуска Windows 10 на UEFI и Legacy системах. Подробно об использовании: Установка Windows 10 на флешку в программе FlashBoot.

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

Здравствуйте, Владимир! У меня целая эпопея с восстановлением хранилища оригинальных компонентов 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:\sources\install.wim:1 (где буква «F» соответствует букве подключенного образа с Win 10, а цифра «1» — индексу издания в образе Win 10 PRO (именно она у меня установлена), но и в очередной раз я потерпел неудачу — «Ошибка: 0x800f081Сбой восстановления. Не найден источник восстановления, или хранилище компонентов восстановить невозможно». 

На одном известном форуме подсказали, что не нужно подсоединять ISO-образ Windows 10 к виртуальному дисководу, а нужно смонтировать ISO-образ с файлами Win 10 в папку с помощью команды: Dism /Mount-Wim /WimFile:F:\sources\install.wim /index:1 /MountDir:C:\WIM /ReadOnly (где WIM, это пустая папка на диске C:, в которую монтируется ISO-образ, а F:\sources\install.wim — местонахождение файла-образа install.wim), но у меня и здесь уже при монтировании вышел промах «Ошибка: 11. Была сделана попытка загрузить программу, имеющую неверный формат».

Короче я сдался и не знаю, почему у меня ничего не получается. 

Автор — Владимир

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

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

 

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

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

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:\\sources\install.esd

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

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

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

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

Dism /apply-image /imagefile:G:\\sources\install.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

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

Время на прочтение5 мин

Количество просмотров107K

Windows Recovery Environment

Загрузиться в WinRE может быть полезно для быстрого ремонта установленной Windows: восстановление запуска системы, восстановление из образа, откат к точке восстановления, изменение параметров загрузки, наконец, доступ к командной строке, а значит возможность делать много разных интересных вещей, типа format C:.
Кроме того, можно запускать regedit.exe и другие системные программы, и даже некоторое стороннее ПО, если конечно для работы оно не требует запущенной «нормальной» Windows.
Альтернативным решением конечно является загрузка с установочного DVD или ISO-образа, но запуск WIM-образа Среды восстановления напрямую будет происходить быстрее — он весит гораздо меньше, чем целый DVD.
К тому же, на одной USB-флешке можно расположить несколько WIM-образов, например, 2 образа WinRE разной разрядности (x32 + x64), и другие образы с «ремонтных» DVD. У меня таким же образом загружается AntiWinLocker, и это без необходимости иметь отдельный ISO с ним.
В общем, возможность загрузить WIM-образ может быть очень полезной. Поэтому перейдем к делу.

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

Что понадобится

1) сам образ winre.wim, получить который можно двумя способами:

— из установленной системы, в Win7 он находится в C:\Recovery\recovery-guid (где папка recovery-guid — это набор букв/цифр); в Win8 и выше — в С:\Recovery\WindowsRE.

Или же папки С:\Recovery может не существовать, тогда она находится на специальном загрузочном разделе Windows «Зарезервировано системой», который имеет размер 100-500 Мб и расположен на диске до основного системного раздела С:\.
Тогда этому мелкому разделу нужно присвоить букву в Управлении дисками.

Более сложный случай: папка \Recovery находится на скрытом OEM разделе восстановления, которому уже просто так не присвоить букву, перед этим нужно сменить его тип.
Делается это при помощи Командной строки, запущенной от имени Администратора, и DiskPart:

diskpart
DISKPART> list disk
DISKPART> select disk 0
DISKPART> list partition
DISKPART> select partition 2
DISKPART> detail partition
DISKPART> set id = 07 override
DISKPART> assign
DISKPART> exit

(disk 0 и partition 2 указаны для примера, см. реальные номера нужного диска/раздела в выводе команд list; при помощи detail посмотрите и запомните ID раздела до изменения, чтобы вернуть его назад)

ВАЖНО: winre.wim, скопированный из раздела восстановления, созданного производителем компьютера или ноутбука, может отличаться от стандартного и не иметь нужных функций!
Поэтому лучше взять его

— с установочного DVD из образа \sources\install.wim — внутри образа файл находится по пути \System32\Recovery.

WIM-образы можно смонтировать в систему при помощи DISM:

md C:\wim
rem в Win7:
dism /Mount-Wim /WimFile:C:\Recovery\recovery-guid\winre.wim /Index:1 /MountDir:C:\wim /ReadOnly
dism /Mount-Wim /WimFile:D:\sources\install.wim /Index:1 /MountDir:C:\wim /ReadOnly
dism /Unmount-Wim /MountDir:C:\wim /Discard
rem в Win8/8.1/10:
dism /Mount-Image /ImageFile:С:\Recovery\WindowsRE\winre.wim /Index:1 /MountDir:C:\wim /ReadOnly
dism /Mount-Image /ImageFile:D:\sources\install.wim /Index:1 /MountDir:C:\wim /ReadOnly
dism /Unmount-Image /MountDir:C:\wim /Discard

или открыть последней версией 7-Zip.

2) вспомогательный файл boot.sdi — тоже находится внутри winre.wim или install.wim по пути \Windows\Boot\DVD\PCAT, или на DVD в \boot.

3) программа bootsect.exe для того, чтобы сделать флешку загрузочной — искать также в WIM в \Windows\System32, или на DVD в \boot.

Форматирование флешки

Обычно этого делать не нужно, и флешки, как правило, уже имеют один раздел отформатированный в FAT32 (не смотря на то, что многие руководства по созданию загрузочных флешек рекомендуют отформатировать в NTFS, это не обязательно), который является активным (загрузочным). А может и не являться. :-)
Поэтому, если ваша флешка не грузится, отформатируйте её так:

diskpart
DISKPART> list disk
DISKPART> select disk 2
DISKPART> clean
DISKPART> create partition primary
DISKPART> select partition 1
DISKPART> active
DISKPART> format FS=FAT32
DISKPART> assign
DISKPART> exit

(disk 2 указан для примера, см. реальный номер вашей флешки в предыдущей команде, иначе можно отформатировать жёсткий диск; используйте format FS=NTFS, если вам так больше нравится)

Создание загрузочного сектора

bootsect /nt60 E:

(где E: — буква, под которой смонтирована флешка)

Установка загрузчика bootmgr

Опять же, есть 2 способа: с использованием установочного DVD и без него.
1) Сначала рассмотрим способ только при помощи имеющейся системы:

bcdboot C:\Windows /l ru-ru /s E:

Необходимо помнить про разрядность версии ОС!
Если вы создаёте флешку с x32-версией WinRE для лечения x32-систем, то и исходной системой, откуда копируется загрузчик при помощи bcdboot.exe, должна быть именно x32. Про x64, соответственно, тоже самое.
Но плюс в том, что при данном способе вы можете иметь на одной флешке хоть 10 версий WinRE — от всех систем (Windows Vista/7/8/8.1/10 + аналогичные серверные версии) и любой разрядности. Одновременно. Без регистрации и СМС. :-)

2) Если же использовать DVD, то необходимо скопировать следующие папки и файлы (и конечно же при ручном копировании версия Windows не важна!):

\boot\fonts\chs_boot.ttf
\boot\fonts\cht_boot.ttf
\boot\fonts\wgl4_boot.ttf
\boot\bcd
\bootmgr

(это — минимальный набор необходимых файлов; их можно вручную скопировать и из системы, с диска C: — БЕЗ использования bcdboot.exe, которая скопирует больше файлов)

Отступление про разные версии Windows
От того, какой вы возьмёте файл bootmgr, будет зависеть, каким будет загрузчик: текстовым, с управлением клавиатурой, либо графическим, с поддержкой мыши.
Win7 использует текстовый режим, а Win8/8.1/10 — графический.
Текстовый вариант, естественно, загружается быстрее.
3 файла шрифта выше — это минимальный набор для русского языка для bootmgr из Windows 7, к тому же, эти файлы опциональны — без них шрифт будет более простым.
Более новые версии Windows используют больше файлов шрифтов.

Я рекомендую использовать bootmgr из Windows 7, а образ winre.wim из Windows 10, т.к. среда восстановления теоретически совершенствуется от версии к версии.
Откуда брать файлы: из установленной системы или с DVD — значения не имеет.

Создание загрузочной записи

cd /d E:\boot
bcdedit /store bcd /copy {default} /d "Windows Recovery Environment"
bcdedit /store bcd /set {new-guid} device ramdisk=[boot]\boot\winre.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
bcdedit /store bcd /set {new-guid} osdevice ramdisk=[boot]\boot\winre.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
bcdedit /store bcd /set {new-guid} locale ru-RU

(где {new-guid} — GUID новой загрузочной записи, см. в выводе первой команды)

После последовательного выполнения всех команд загрузочная запись будет создана, однако её содержание будет немного отличаться, в зависимости от того, откуда был взят файл-хранилище BCD.
Это связано с тем, что за основу для создания новой записи берутся разные исходные записи из хранилища: для запуска программы установки, или для загрузки Windows.

Полный листинг рабочей загрузочной записи, взятой с DVD Windows 7 x32:

Загрузка Windows
-------------------
идентификатор           {c53853d4-c6c5-11e5-af22-0018f368b2c9}
device                  ramdisk=[boot]\boot\winre.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Windows Recovery Environment
locale                  ru-RU
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\boot\winre.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes

На основе этой записи можно точно так же создавать другие, например для загрузки winre.wim из x64-версии Windows, всего лишь меняя путь до WIM-файлов в параметрах device и osdevice.

Копирование WIM-образа

Скопируйте файлы winre.wim и boot.sdi в папку \boot на флешке.
Папка может быть любой (тогда скорректируйте пути в командах bcdedit выше), но оба файла должны быть в одной и той же папке.
Для загрузки нескольких образов достаточно одного файла boot.sdi.

Загрузка с флешки

Не забудьте настроить BIOS на загрузку с USB, и через некоторое время вы окажетесь в среде восстановления Windows.

P.S. Комментаторы подсказывают, что этот способ не работает на компьютерах и планшетах с UEFI.
Но проверить это (и может модернизировать эту инструкцию) мне не на чем ввиду отсутствия подходящего устройства.

UPD 02.02.2016, 15:40:
Дополнения про извлечение образов из скрытых разделов и про монтирование их в систему при помощи DISM.

Бывают случаи, когда в Windows были удалены или повреждены системные файлы. Это могло произойти в результате сбоя файловой системы, действий вирусов или ошибочных действий самого пользователя. При этом система может загружаться, а может и нет. Не спешите переустанавливать систему или делать откат к заводским настройкам
(в случае с Windows Server это невозможно или неприемлемо). Зачастую систему можно привести в рабочее состояние.

Восстановление системы

Восстановление системы впервые появилось в Windows Me. Тогда копии важнейших системных файлов (реестра в подавляющем большинстве) хранились в zip архивах. Чуть позже, в Windows XP, они хранились как есть, только скрытые с глаз долой в каталоге System Volume Information. Начиная с Windows Vista восстановление системы использует технологию теневого копирования. Именно из теневой копии Windows может восстановить свои файлы. Этот вариант подходит только для клиентских редакций Windows.

Alt text

Здесь следует помнить, что при использовании точки восстановления, из теневой копии будет восстановлено то, что в неё попало. Это значит, что если файлы на момент создания точки восстановления уже были повреждены или отсутствовали, чуда не произойдёт. Так-же следует отметить отсутствие этого механизма в Windows Server и его автоматическое отключение при установке клиентской редакции Windows на SSD диск.

Восстановление загруженной операционной системы

Рассмотрим порядок действий, если восстановление системы не применимо или не помогло и система загружается.

System File Checker

Начать стоит с проверки системных файлов, в этом нам поможет утилита проверки целостности системных файлов. SFC проверяет системные файлы на несанкционированные изменения или удаление и попытается восстановить их их кэша, расположенного по пути: C:\Windows\WinSxS. Для начала проверки выполните в командной строке, запущенной с повышенными привилегиями команду:

sfc /scannow

Рассмотрим ситуацию на реальном примере, произошедшем со мной недавно:

Windows Server 2016 с установленной ролью Windows Server Update Services. По пути C:\Program Files\Update Services\ отсутствует каталог Tools, что ставит крест на управлении сервером из командной строки. Можно скопировать каталог с аналогичного сервера, если такой есть. У меня не было и я скомандовал описанную ранее команду:

Alt text

Защита файлов не смогла восстановить некоторые файлы. Нужно уточнить, вернулся-ли каталог Tools на своё место. Можно пройти по пути C:\Program Files\Update Services\ и посмотреть, но это не наш метод. SFC создаёт файл журнала, который мы будем изучать. Файл большой, поэтому предварительно отберём нужные данные:

findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log > "%userprofile%\Desktop\sfcdetails.txt"

Открываем файл блокнотом и ищем строку: “Update Services\Tools”

Alt text

Мы видим, что файл восстановлен. Отлично! Но программа сообщила об ошибках — значит капаем дальше. Проводим отбор по тексту ошибки:

findstr /c:"[SR] Cannot repair member file" "%userprofile%\Desktop\sfcdetails.txt" > "%userprofile%\Desktop\error.txt"

И снова смотрим, что получилось:

Alt text

Не восстановились некоторые ярлыки. В принципе на этом можно и закончить, но если хочется довести начатое до конца, то следует использовать DISM.

DISM

Утилита обслуживания образов развертывания и управление ими позволяет творить чудеса даже в очень трудных случаях. DISM занимается обслуживанием хранилища компонентов (WinSxS). Его проверка и восстановление как раз по плечу DISM.

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

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

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

DISM /Online /Cleanup-Image  /CheckHealth    

Repair-WindowsImage -Online -CheckHealth    

Эта команда не проверяет хранилище, а отображает последнее известное его состояние.

Alt text

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

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

DISM /Online /Cleanup-Image /ScanHealth   

Repair-WindowsImage -Online –ScanHealth   

Она найдет ошибки и предупредит об их наличии, но не восстанавливает. Как видим, у меня с системой всё в порядке.

Alt text

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

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

  • Windows Update или WSUS
  • Установочный образ ESD или WIM

Как видим, вариантов источников много, их можно указывать последовательно в одной команде. Будет использоваться первый, где требуемый компонент будет найден. Есть особенность, что если мы укажем образ соседней системы и компонент там найден не будет, будет произведён поиск в Windows Update.

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

DISM /Online /Cleanup-Image /RestoreHealth   

Repair-WindowsImage -Online -RestoreHealth   

Однако метод может потерпеть неудачу, если отсутствует соединение с интернетом или повреждены компоненты центра обновления Windows. Рассмотрим восстановление с установочного носителя. С загрузочного образа, диска или флешки нам нужен всего один файл: install.wim или install.esd

DISM /online /cleanup-image /restorehealth /source:D:\sources\install.wim

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

Alt text

Иногда требуется указать номер индекса требуемой редакции. Уточнить номер индекса требуемой редакции совсем несложно — например через PowerShell:

Get-WindowsImage -ImagePath "E:\sources\install.wim"

Alt text

Индекс сборки потом указываете через двоеточие. Например:

DISM /online /cleanup-image /restorehealth /source:D:\sources\install.esd:2

Если требуется запретить использование Windows Update или WSUS, используйте параметр /LimitAccess.

DISM /online /cleanup-image /restorehealth /source:D:\sources\install.wim /LimitAccess

Восстановление системы, которая не загружается

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

Alt text

Среду восстановления можно запустить с установочного носителя:

Alt text

Одним словом, не имеет значения как вы получите доступ к диску. Диск можно также подключить к другому компьютеру. Если использовали среду восстановления, то следует разобраться с буквами дисков. Можеn использовать для этих целей команду bcdedit или запустить notepad и через меню файл — открыть увидеть буквы дисков и их содержимое.

System File Checker

Утилита проверки целостности системных файлов и в этой ситуации может прийти на помощь! Для этого у ней есть соответствующие параметры /offbootdir и /offwindir. Нам остаётся лишь указать букву системного диска и путь папки Windows.

sfc /scannow /offbootdir=c:\ /offwindir=c:\windows    

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

DISM

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

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

Команда используется как и ранее с той лишь разницей, что мы указываем путь к системному диску повреждённой Windows

Dism /Image:E:\ /Cleanup-Image /CheckHealth

Repair-WindowsImage -Path "E:\" -CheckHealth

Мы видим, что хранилище компонентов моей тестовой системы требует восстановления.

Alt text

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

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

Dism /Image:E:\ /Cleanup-Image /ScanHealth

Repair-WindowsImage -Path "E:\" -ScanHealth

Alt text

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

Восстановление хранилиза компонентов по сути своей не отличается от ситуации с загруженной системой, поэтому не буду приводить полный список команд. Ограничусь простой командой восстановления через Windows Update. Разница лишь в указании пути к системе.

Dism /Image:E:\ /Cleanup-Image /restorehealth   

Repair-WindowsImage -Path "E:\" -RestoreHealth     

Заключение

Как видите есть масса способов привести систему в чувства и без переустановки Windows. Надеюсь предложенные способы помогут вам.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Windows server 2003 сервер времени
  • C windows softwaredistribution sls
  • Ошибка 4096 при установке windows xp
  • Обои windows 10 rtm
  • Windows live writer resources