stasys44
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Модифицирование загрузки. Монолог (монозагрузчики bootmgr, хранилища BCD и виртуальные диски в одной корневой папке SYST) В раздачах мультизагрузки Multisystem предусмотрено специально применять папку 2k10 для расположения bootmgr и BCD. Зачем вовлекать еще одну папку? А, если папка 2k10 уже имееется для мультизагрузки сборок conty, то монозагрузчики conty имеют свое применение. Можно их модифицировать так, чтобы все bootmgr, BCD и VHD находилиь бы в одной корневой папке SYST. Конечно, это поиск трудностей и так далее ... А чего их бояться? Труднее описать, чем сделать Часть 1. Про модифицирование bootmgr описал в другой теме, вроде не имеющей отношения к изменению bootmgr, но как раз там возник такой вопрос. conty предложил свой набор для пропатчивания bootmgr комплект с описанием, утилитой упаковки BOOTMGR_Recompiler и примерами В монозаготовках conty загрузчики нужно модифицировать для использования меню из папки SYST\Fonts. При этом имя меню - BCD с расширением, соответствуюшим расширению заготовки BootSYST.xxx или BootS_BCX.xxx. Для того, чтобы увеличить длину пути в меню BCD, conty из загрузчика выбросил прописки шрифтов для Japan/Chinа/Korea, и на освободившееся место прописал длинный путь к BCD. Задача - все меню монозагрузчиков должны находиться в SYST\Fonts. Cами монозагрузчики могут быть вызываны оттуда-же или из созданной для них папки, например, SYST\Boot. Для загрузки сборок Windows 7, пропатчивается монозагрузчик bootmgr.786 в папке \BOOTMGR_Recompiler_2K10\MakeBootMgr\Заготовки Для анализа можно запустить программу Beyond Compare, открыть для сравнения файлы bootmgr.786 и bootmgr(7).exe в папке ..\Заготовки нажать значок "Отметить отличия" и записать себе куда-нибудь hex адреса, где и что нужно править: 650F2 ... 672C2 - 672E4 длинный путь BCD 67430 7D228, по желанию - возвратить "Windows is loading files" Редактировать bootmgr(7).exe сложнее, легко можно сделать ошибок, поэтому редакции подлежит bootmgr.786. Запускается hex редактор (FlexHex, HxD, WinHex) и открывается упомянутый файл и редактируется (пример для Windows 7 pytex Non PAE) Сохраняем в папке Заготовки через "Сохранить как". В данном лучае - bootSYST.7PN. Возвратиться к 672C2 - 672E4 (длинный путь BCD) и править на BCD.7LP (замена одной буквы) и т.д. Получается: bootSYST.7LN для Win7 (ultimate) Lopatkin NON PAE bootSYST.7LP для Win7 (ultimate) Lopatkin PAE bootSYST.7KN для Win7 Kroha NON PAE bootSYST.7KP для Win7 Kroha PAE bootSYST.7PN для Win7 Pytex NON PAE bootSYST.7PP для Win7 Pytex PAE bootSYST.7EN для Win7 Embedded Lite NON PAE bootSYST.7EP для Win7 Embedded Lite PAE bootSYST.7MN для Win7 Mini xodok NON PAE bootSYST.7MP для Win7 Mini xodok PAE Можно сделать по шаблону bootSYST_BCх.xxx, ибо для Embedded Лопаткина NON PAE - ячейки 672C2 - 672E4 (длинный путь BCD) править на BC7.LEN и сохранить как bootSYST_BC7.ELN Аналогично, для загрузки 8-ок можно запустить программу Beyond Compare и открыть для сравнения файлы bootmgr.886 bootmgr(8).exe в папке ..\Заготовки и записать куда-нибудь hex адреса, где нужно править: 8340A ... 87E12-87E34 87FE2 9C3C2 возвратить "2" Loading files, - но я не стал это делать hex редактором (FlexHex, HxD, WinHex) открывается для правки bootmgr.886 и делается аналогично: bootSYST_BCD.8PN для Win8 pytex NON PAE bootSYST_BCD.8PP для Win8 pytex PAE bootSYST_BCD.8MN для Win8 mini NON PAE bootSYST_BCD.8MP для Win8 mini PAE bootSYST_BC8.1LN для Win8.1 Lopatkin NON PAE bootSYST_BC8.1LP для Win8.1 Lopatkin PAE После полной правки нам нужно из bootSYST_BCx.xxx получить упакованные загрузчики. В этом поможет скрипт BOOTMGR_Recompiler. Имеется 2 версии: для работы под х86 ОС, и для х64. Нужно запускать версию, соответствующую по разрядности работающей ОС.Запускаем BOOTMGR_Recompiler, выбираем настройку упаковки (она различается для загрузчиков 7 и 8). Для 7-ного бутменеджера нужно выбрать LZNT1 и снять птичку с XPressHuff, для 8-ного -оставить по-умолчанию (Use XPressHuff). Пример для 8-ки: . После этого открываем правленный bootSYST_BCx.xxx в папке Заготовки, соглашаемся на исправление контрольной суммы (если НЕХ-редактор этого не сделал сам) и получаем готовый загрузчик bootmgr_mod, который будет искать BCD (как его обозвали) в нужной папке. Сохраняем bootmgr_mod в папке \BOOTMGR_Recompiler_2K10\MakeBootMgr, не Заготовки, чтобы не спутать с неупакованными и меняем имя - как определяем имя как неупакованного, но укорачиваем по шаблону bootS_BCx.xxx (опять. чтоб различить) 2. часть Создание и правка BCD. Чтобы не было много работы с созданием BCD и не было описанного в Примечании, копируем BCD MultiSystem из папки 2k10\Fonts в папку SYST\Fonts, переименовывая, например, для 7-Emb.vhd, bootmgr.WG0 на \SYST\Fonts\BCD.7EN и ..\BCD.7EP. Примечание Устанавливал Windows 8.1 Лопаткина и Return Of Nights - брал полученный следствие того, BCD и сделал его 2 копии с переименованием и оставил в копиях по одной записи соответственно, получил ошибку 000428 Описал здесь Для редактирования меню BCD, пользовался bcdtool (работает и в ХР). Чтобы открылись BCx.xxx, выбрать файлы через *.* Заходить в "Диспетчер загрузки Windows" (не в записи, не обращайте внимание на то, что у меня 1 запись) . Двойным щелчком клавиши поочередно открываем displaybootmenu, правим на No, timeout - на 0 , device - на Переходим в меню с записями "Загрузка Windows", удаляем ненужную, а оставшуюся правим как нужно (device, description, osdevice) и получаем: . Наименования файлов VHD - укороченные, сами файлы помещены в папке SYST без какого либо разбрасывания по подпапкам. Можно все загрузчики и хранилища помещать только в папках Boot и Boot\Fonts, мешать друг другу не будут Часть записи в menu.lst: iftitle [if exist /SYST/W81_9385LBN.vhd] X:/Win8.1 -9385- LBN PAE chainloader /SYST/Boot/bootS_BC8.1LP iftitle [if exist /SYST/W81_9385LBN.vhd] X:/Win8.1 -9385- LBN NON PAE chainloader /SYST/Boot/bootS_BC8.1LN iftitle [if exist /SYST/W8pytex.vhd] X:/Windows 8 pytex.v1.4 PAE chainloader /SYST/Boot/bootS_BCD.8PP iftitle [if exist /SYST/W8pytex.vhd] X:/Windows 8 pytex.v1.4 NON PAE chainloader /SYST/Boot/bootS_BCD.8PN Для сборки Uni-Flash Windows 8.1 Stea подготовил комплект bootmgr и BCD (названия - stea_bcX.XXX, BCX.XXX) для папки STEA Boot - Fonts. Размещаются файлы соответственно в папки \STEA\Boot и \STEA\Fonts Если не нравится помещать хранилища в папку Syst или несколько (для каждой группы сборок отдельная папка), используйте родную папку Boot, в последнее время я склонен к этому | Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 11:47 21-10-2013 | Исправлено: stasys44, 09:51 30-01-2014 |
|