2

Одна из моих рабочих задач - настроить компьютеры, поставляемые в наших продуктах, с образами ОС Windows (Embedded и OEM) с разделом восстановления. Я использовал Clonezilla Live с GRUB2 для реализации этого процесса. Это работало нормально с Windows XP/Embedded Standard 2009. Это не работает с Windows 7, и я предположил бы что-нибудь позже, чем Vista, из-за изменений в Boot Manager. Текущий образ системы, который я пытаюсь настроить, выглядит следующим образом:

/dev/sda1, ntfs, PRIMARY, 62,5 ГиБ, 3,15 ГиБ, 59,35 ГиБ, без флагов
/dev/sda2, ntfs, RESTORE, 4,00 ГиБ, 1,74 ГиБ, 2,26 ГиБ, скрытые
/dev/sda3, fat32, CLONEZILLA, 4,00 ГиБ, 115,22 МБ, 3,89 ГиБ, скрытые
/dev/sda4, ext4, BOOT, 1,00 ГБ, 53,91 МБ, 970,09 МБ, загрузка

/dev/sda1 содержит Windows 7 OEM (запечатанный), dev/sda2 содержит образ восстановления clonezilla (запечатанный)

/dev/sda MBR - загрузчик GRUB2

Я могу заставить GRUB2 нормально загружаться и восстанавливать образ Windows 7. Тем не менее я не могу загрузить Windows 7 и получить ошибку 0xc0000225. Обновление: после того, как я изменил загрузочный сектор, как описано ниже, чтобы заставить начальный раздел sda1 согласиться с MBR, 0xc0000225 исчез, и я начал получать ошибку 0xc000000e с файлом winload.exe, на который он жаловался пользователю , Тем не менее, этот файл присутствует и не поврежден, насколько я могу судить с помощью других утилит.

Информация из загрузочного файла Meierfrankenfeld и Hulselmans показывает проблемы с sda1 (загрузочный сектор показывает sda1 в секторе 411648, стихи fdisk, который показывает 2048) и sda3 (загрузочные сектора показывают sda3 в секторе 0 и fdisk, который показывает 164628480). Я не уверен, что мне нужно изменить в данный момент или лучший инструмент для этого. Я в порядке с шестнадцатеричным редактором, если бы я мог дать хорошее описание того, как расположены BCD и grub2 MBR. Обновление: я наконец обновил загрузочный сектор, чтобы получить согласие с fdisk для sda1.

Прежде чем запечатать машину и добавить /dev /sda3 и /dev /sda4, я слил загрузочный раздел Windows 7 в /dev /sda1. Перезагрузился и работал нормально.

Я попытался прочитать материалы BCD, которые предоставляет Microsoft, и убедился, что объекты Windows Boot Manager и Loader указывают на правильный раздел (они использовали некоторый синтаксис custom = xyz, который тоже не работал).

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

Я подтвердил, что bcd использует partition = C: для обозначения устройства /os device /bootmgr.

Итак, я смог подтвердить, что MBR присутствует нетронутым, VRB на sda1 присутствует и не поврежден, файлы $ MFT и $ MFTMirr существуют в месте, указанном в VBR, что подтверждается инструментом istat (не lstat) в sleuthkit , Файл winload, указанный в приведенной выше ошибке, находится в месте, указанном мне утилитой fls sleuthkit, и согласуется с размером файла из других установок.

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

1 ответ1

0

Похоже, были проблемы с добавлением этих разделов в середине. Какой редактор разделов вы использовали? Программа testdisk, найденная на LiveCD и Hiren от PartedMagic.com, позволила мне исправить некоторые испорченные проблемы с разделами и проблемы двойной загрузки на нескольких машинах. Я бы дважды проверил предположение, что «bcd использует partition = C:» означает, что вы думаете, что это означает, так как это намного больше зависит от GUID.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .