Как исправить поврежденный WIM-файл?

Как исправить поврежденный WIM-файл?

TLDR
У меня есть поврежденный архив WIM, который я пытаюсь извлечь. Я пробовал использовать DISM, но он не позволяет мне смонтировать его, потому что не распознает его как файл WIM. Я также пробовал редактировать его в шестнадцатеричном редакторе, но я не знаю, что я могу изменить.

Проблема
Я использовал 7-zip на Windows 10 для создания WIM-файла, содержащего кучу папок в моем домашнем каталоге, а затем переместил его на внешний жесткий диск по сети. Когда я попытался извлечь его позже с помощью 7-zip, он открылся только как zip-файл со следующим содержимым:

  • _rels
    • .rels.xml
  • docProps
    • приложение.xml
    • ядро.xml
  • слово
    • _rels
      • документ.xml.rels
    • тема
      • тема1.xml
    • документ.xml
    • Таблица шрифтов.xml
    • настройки.xml
    • стили.xml
    • webSettings.xml
  • [Типы_контента].xml

Что я уже пробовал
Это результат использования тестовой функции архивации 7-zip:

D:\WIMFile.wim
Предупреждения:
После окончания полезных данных имеются некоторые данные
Предупреждение
Невозможно открыть файл как архив [wim]
Файл открыт как архив [zip]

Я немного погуглил и наткнулсяэтотгде говорится, что вы можете использовать DISM для восстановления WIM-файла. К сожалению, если я ничего не упустил, для исправления требуется смонтировать файл. Я попытался смонтировать его с помощью "dism /Apply-Image /ImageFile:D:\WIMFile.wim /Index:1 /ApplyDir:D:\mountPoint" в командной строке Windows и получил эту ошибку:

Ошибка: 11

Была предпринята попытка загрузить программу в неверном формате.

Файл журнала DISM можно найти по адресу C:\WINDOWS\Logs\DISM\dism.log.

Просмотр файла журнала показывает следующее:

Предупреждение DISM Поставщик DISM WIM: PID=6912 [ReadWimHeader:(1723) -> несоответствие версии/заголовка] D:\WIMFile.wim (HRESULT=0x8007000B) - CWimManager::WimProviderMsgLogCallback [6912] [0xc144012e]

Ошибка DISM Поставщик DISM WIM: PID=6912 [WIMCreateFile:(425) > -> Не удалось прочитать заголовок WIM] D:\WIMFile.wim (HRESULT=0x8007000B) - CWimManager::WimProviderMsgLogCallback

Я погуглил еще немного и нашелздесьчто с архивами 7z вы можете вручную редактировать архив с помощью шестнадцатеричного редактора и заменять поврежденные части. Я сделал несколько других файлов WIM просто для сравнения и смог открыть их в FAR Manger. Однако поврежденный файл имеет размер 43 ГБ, что, по-видимому, слишком много, потому что он сообщает мне следующее:

Невозможно открыть файл
D:\WIMFile.wim
Недостаточно памяти для обработки этой команды

Итак, я вернулся в Google и не смог найти ничего, связанного с FAR Manager, но я нашел support.microsoft.com/en-us/kb/106167 (извините, я исчерпал свою квоту ссылок) и решил, что попробую. Мне пришлось создать запись в реестре и установить значение на максимум 12, но это не помогло.

Далее, в попытке получить больше места, я подумал, что могу переключиться на свой почти пустой жесткий диск на 500 ГБ с Kubuntu 14.04 на нем. Мне пришлось переключиться на шестнадцатеричный редактор под названием Bless, потому что FAR Manager работает только под Windows, но я смог открыть поврежденный файл. Единственным очевидным сходством между тестовыми WIM-файлами, которые я сделал, был текст «MSWIM» в самом начале каждого файла. В поврежденном файле этого не было, поэтому я его добавил, но это не имело значения. Я не уверен, что еще я могу изменить, не испортив файл еще больше.

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

Редактировать
Я забыл упомянуть, что я также попробовал режим разбора 7-zip. Он дал мне кучу архивов, некоторые из которых я смог открыть, и в них были некоторые мои файлы. Был еще один большой файл, который составлял около 90% от исходного файла WIM, и он все еще отказывался открываться.

Связанный контент