Любопытное изобретение — все эти LiveCD-дистрибутивы. Каждый из нас когда-то записывал образ свежего Knoppix’а на диск и строил грандиозные планы о том, как он не раз выручит в будущем. Вдруг понадобится восстановить удаленные файлы, реанимировать систему или сбросить в винде пароль администратора? Только вот таскать с собой такую бандуру ты не станешь, и, будь уверен, через некоторое время она просто потеряется у тебя на полке. Намного круче было бы разместить LiveCD на флешке, добавить к экзотическому линуксу обычную винду и всегда носить этой хозяйство с собой. А почему, собственно говоря, нет?
Готовим операционную
Да-да, мы действительно создадим флешку с загрузочными Linux и Windows. Благодаря существующим инструментам это не только возможно, но еще и легко реализуемо. Вот перечень того, что нам понадобится:
- В первую очередь, конечно же, флешка или любой другой USB-носитель. Тут главное – выполнить 2 условия. Во-первых, флешку должен корректно распознавать БИОС материнки, позволяя загружаться с нее во время запуска компьютера. А во-вторых, она должна иметь подходящий размер, чтобы разместить две ОС. В нашем случае потребуется девайс объемом 1 Гб и выше.
- Подходящий LiveCD-дистрибутив на базе SLAX. Вообще, большинство пингвинов давно можно запустить не только с CD, но и с флешки, однако я все-таки рекомендовал бы тебе один из дистрибов, построенных на базе Slackware. А это сам SLAX , Slast, а также известный хакерский чемоданчик Backtrack, который я и буду использовать в этой статье.
- Утилита, которая поможет собрать свой собственный билд дистрибутива и записать его на флешку — MySLAX Creator . Фишка операционных систем SLAX-based в том, что их буквально можно собрать по кирпичам (модули имеют расширение mo), включив в состав диска нужные приложения. Так что установить в пингвине нужную программу будет сущим пустяком.
- Дистрибутив Windows XP или Windows 2003 для создания загрузочной версии винды. Понадобится лишь часть файлов, но проще будет найти диск с виндой, чем перечислять их перечень.
- Программа Bart PE Builder, которая будет главным инструментом, собирающим загрузочную версию Windows. Умелец-автор разобрался с механизмом работы WinPE (официального LiveCD-дистрибутива от Microsoft) и разработал утилиту для создания своего собственного билда, функционального и легко расширяемого.
- Утилита Make Bootable, или сокращенно MKBT,для размещения загрузочного сектора Windows на флешке.
- Загрузчик Syslinux, с помощью которого будет осуществляться выбор ОС во время загрузки с USB.
«Первый, пошел!», или начнем с Linux
Создание нашей убойной флешки мы начнем с копирования на USB-драйв файлов Linux Backtrack’а, в чем нам поможет MySLAX Creator. Сразу после быстрой установки воткни в компьютер флешку и запускай программу.
- MySLAX Creator тут же спросит, откуда ей брать файлы. В качестве исходных материалов будет использоваться образ Backtrack-дистрибутива (ищи его на нашем DVD), поэтому параметр Source type нужно выставить в ISO-default, а потом в текстовом поле указать путь до образа. Теперь необходимо примонтировать ISO в системе, нажав кнопку «Mount».
- Программа предложит создать загрузочный диск (Burn this ISO), либо же загрузочную флешку (USB Stick). Само собой, выбираем второе.
- Внимание: следующая операция требует форматирования флешки, что влечет за собой потерю все данных. Поэтому, если необходимо, сначала сделай бэкап и лишь потом выбирай нужный flash-драйв и нажимай «Create USB Stick».
- Теперь очень важный момент. В окне форматирования флешки в качестве файловой системы обязательно нужно выбрать FAT. По умолчанию выставлен FAT32, и если ты оставишь все как есть, то на одном из следующих шагов получишь ошибку и все придется начинать заново. Будь внимателен!
- Как только форматирование будет завершено, MySLAX Creator скопирует на флешку все необходимые файлы и предложит перегрузиться. Ради эксперимента можешь отправить машину в ребут, выставить в биосе загрузку с USB и посмотреть, что получится. Процесс загрузки ОС Backtrack не заставит себя долго ждать, и уже через минуту ты сможешь воспользоваться Linux’ом, который до отвала напичкан сами разнообразными x-toolz’ами.
Дрессировка винды
Впрочем, линуксом, который работает без установки (пускай, даже с флешки), уже давно никого не удивишь. Да и все-таки хочется при себе иметь любимую винду с привычными программами, а пингвина использовать в более изощренных целях. Поэтому сейчас нужно вооружиться утилитой Bart’s PE Builder и действовать!
- Работать с этой программой проще простого хотя бы потому, что интерфейс полностью переведен на русский язык и запутаться здесь довольно сложно. Просто читаем, что от нас требуется, и выполняем — начнем с указания пути к установочным файлам Windows. Внимание: требуется дистрибутив Windows XP или 2003. И никак иначе: любой другой, включая w2k, не подойдет. Более того, ты должен прописать вручную или выбрать путь именно к установочным файлам (если вставил диск с виндой, то просто выбери здесь свой привод), а не к образу с дистрибутивов (который, возможно, закачаешь из Сети). Если дистриб упакован в ISO или другом формате-образе, то его нужно предварительно оттуда извлечь. В этом случае поможет программа WinISO или WinRAR.
- При желании ты вправе указать папку с файлами, которые будут дополнительно включены в окончательную сборку Windows, но этот шаг опциональный. Главное сейчас — выбрать каталог назначения, куда PE Builder положит готовый билд системы. Необходимо в обязательном порядке указать здесь «BartPE», тем самым ты заведомо исключишь проблемы во время переноса файлов на флешку. Замечу, что в обычном режиме мы бы сразу зажгли полученный билд на CD или, по крайней мере, создали ISO. Но для дальнейшего переноса файлов на USB придется отказаться от всякой записи на носитель.
- Включить в сборку дополнительные программы или, наоборот, убрать что-то лишнее можно через окно «Модули» (рекомендую заглянуть туда после прочтения соответствующей врезки), но сейчас оставим все по дефолту и просто нажмем «Создание сборки».
- Сам процесс создания загрузочной системы не займет много времени. После завершения процесса все сгенерированные файлы будут помещены в папку BartPE (у меня — c:/pebuilder3110a/BartPE), однако просто взять и скопировать их на флешку нельзя. Пришлось бы долго возиться, чтобы все заработало, но разработчик позаботился об этом, включив в состав проги специальный скрипт — pe2usb.cmd.
- Синтаксис для запуска скрипта очень простой: «pe2usb.cmd <drive:>», где drive — буква нужного USB-носителя. Но после первой же попытки запуска он обломает тебя, сославшись на критическую ошибку. Оказывается, для работы pe2usb (точнее говоря, для создания виртуального диска в оперативной памяти для дальнейшей работы винды) требуется несколько файлов из Service Pack 1 for Windows Server 2003. Если таковой у тебя под рукой, то просто извлеки оттуда setupldr.bin, ramdisk.sy_ и скопируй их в предварительно созданную папку srsp1 (у меня — c:/pebuilder3110a/srsp1). После этого распакуй ramdisk.sy_, выполнив из папки srsp1 следующую команду:
expand –r RAMDISK.SY_
Предвижу, что заморачиваться с поиском и распаковкой файлов тебе лень, поэтому специально выложил их на диске – они весят чуть больше 300 Кб. Скопируй их — скрипт выполнится без сучка и задоринки.
Замуты с загрузчиком
Если после этого ты попробовал загрузиться с флешки и по-прежнему увидел Backtrack, сильно не удивляйся. Мало разместить на флешке файлы для винды, необходимо еще настроить загрузчик, чтобы тот знал, какую ОС и когда запускать. Как это делается?
- Из папки Bart PE Builder нужно взять файл с загрузочным сектором винды —— pe2usb.bin, переименовать его в pe2usb.bss и кинуть в корень флеш-накопителя. Переименовать файл нужно в обязательном порядке, так как именно расширение файла указывает загрузчику Syslinux (который мы и будем использовать), что тот имеет дело с boot-сектором.
- Далее в ход идет небольшая утилита MKBT. Просто скопируй ее исполняемый файл (mkbt.exe) на флешку и выполни оттуда команду «mkbt -x pe2usb.bss <drive:>», где drive — буква нужного USB-носителя. Тем самым ты установишь на флешке bootsector винды (поместишь образ загрузочного сектора в специальной системной области накопителя).
- Теперь дело за малым — надо настроить сам загрузчик, то есть Syslinux. Для этого быстренько распаковываем архив syslinux-3.31.zip и копируем файлы \win32\syslinux.exe и \com32\modules\vesamenu.c32 в корень флешки. Далее требуется немного поправить конфигурационный файл syslinux.cfg, установленный еще вместе с Backtrack’ом. Особо не заморачивайся и просто замени его содержание следующим:
default vesamenu.c32
prompt 0
timeout 0
F1 splash.txt
F2 splash.cfg
SAY Type "bartpe" for Bart's Pe, or type "slax" for Slax.
DISPLAY syslogo.lss
MENU TITLE ][akep's Boot UFD
MENU BACKGROUND xakep.png
label slax
menu label Slax
kernel vmlinuz
append max_loop=255 initrd=initrd.gz vga=0x317 maxcpus=1 init=linuxrc load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=4444 root=/dev/ram0 rw
label bartpe
menu label Bart's PE
kernel pe2usb.bss
init=linuxrc load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=4444 root=/dev/ram0 rw
load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=4444 root=/dev/ram0 rw
- Для красоты можно кинуть на флешку фоновую картинку для загрузчика xakep.png, которая должна иметь размер 640x480. Но это не обязательно.
- Самый последний шаг. Остается только вернуть загрузочный сектор Syslinux’а на место (мы его снесли, когда инсталлировали загрузочный сектор винды). И после этого можно отправлять машину в ребут. Переходи на флешку и выполняй команду «syslinux <drive:>». Готово! Теперь во время загрузки ты увидишь менюшку, которая предложит тебе запустить одну из операционных систем.
Не останавливайся
Две рабочие ОС, которые без установки запускаются с флеш-носителя, — это уже здорово. Но не лишним будет подстроить их под себя: установить привычные программы, добавить необходимые драйверы и просто сменить обои на рабочем столе. Все это возможно, причем для этого вовсе не нужно обладать семью пядями во лбу. Достаточно прочитать материал во врезках.
Добавление драйверов в винде
Прикрутить дополнительный драйвер к BartPE — это очень простая задача, но, к сожалению, это касается только дров для устройств хранения данных и сетевых девайсов. Для каждого устройства необходимо создать папку с драйвером и скопировать в папку, соответствующую его принадлежности:
- драйверы устройств хранения данных — drivers\SCSIAdapter;
- драйверы сетевых устройств — drivers\Net.
Предположим, что ты добавляешь дрова для сетевого устройства NetXtreme BCM57xx. Драйвер поставляется в виде zip-архива с именем win_xp_2k3_32-7.86.zip. Делаем все согласно инструкции: в drivers\Net создаем новую папку (скажем, b57xp32) и извлекаем туда все файлы из скачанного с сайта производителя устройства архива. Вот, собственно, и все.
Установить программу в linux?! Легко!
Главная особенность всех LiveCD-дистрибутивов, построенных на SLAX, — это возможность включить в состав ОС любые программы, причем с минимальными усилиями. Дополнительный софт распространяется в виде специальных модулей — файлов с расширением mo. Грамотно собранная коллекция «дополнялок», рассортированных по категориями программ (графика, офис, безопасность, система, сеть, разработка, мультимедиа и другие), расположена на официальном сайте SLAX’а. Там ты обязательно найдешь все необходимое. Но что делать дальше? Как их установить в систему? Оказывается, проще простого. Запускаем уже знакомый нам MySLAX Creator, выбираем ISO-образ дистрибутива, но вместо копирования файлов на флешку (кнопка USB Stick), нажимаем «Далее». В программе откроется вкладка «Add modules», где ты выберешь и в два счета подключишь все скачанные –mo-файлы, после чего получишь обновленный дистрибутив с индивидуальным тюнингом.
Дополнительные программы в Bart PE
Лучший способ расширить функциональность системы — установить в нее полезные программы. В случае Bart PE делать это нужно еще во время компиляции системы, то есть до того, как ее файлы попадут на USB-драйв. Однако просто взять и подключить обычные дистрибутивы программ нельзя и приходится прибегать к специальному механизму плагинов. Когда ты собирал свой дистрибутив, ты, наверное, заметил кнопку «Модули» в нижней части окна PE Builder’а. Попробуй ее нажать, и ты увидишь внушительный список знакомых тебе программ: GFI LANguard Network Security Scanner, IrfanView, Nero Burning Rom, PuTTY, Total Commander и т.д. Подключить модуль можно одним щелчком мыши, однако тулза потребует предоставить ей необходимые для запуска программ файлы. Придется распотрошить их рабочие директории и выбрать оттуда все необходимое (обычно это exe‘шник и несколько dll-файлов). Установить в live-винду любую другую программу, не включенную в состав Bart PE, помогут коллекции плагинов. Среди тысяч модулей можно найти абсолютно все.
Самый полезный плагин для Bart PE
Вы, наверное, заметил, что внешний вид полученной с помощью PE Builder’а системы существенно упрощен по сравнению с обычной виндой. По правде сказать, это не только не привычно, но и ужасно неудобно: ни человеческого «Пуска», ни Сетевого окружения, ни просто эсплорера и консоли MMC. Чтобы все вернуть на свои места, необходимо во время сборки подключить плагин XPE. Он снимет все ограничения и приведет загрузочную ОС к обычному виду винды. Что не менее важно, плагин позволяет подключить драйверы к Bart PE, входящие в дистрибутив Windows, поэтому после загрузки с флешки будут найдены все распространенные устройства.
Но для этого в папку с плагином (у меня — c:\pebuilder3110a\plugin\xpe-1.0.6) тебе придется добавить 3 директории (DRIVERS, SYSTEM, INF) и расположить там названные ниже файлы.
- В папку DRIVERS — все sys-файлы из drivers.cab и sp*.cab (ищи их в дистрибутиве Windows);
- в папку SYSTEM — все dll и exe из drivers.cab и sp*.cab
- в папку INF — все inf, а также запакованные *.in_. Чтобы распаковать их всех разом, воспользуйся хитрой командой:
expand -r "[xp\i386 path\]*.in_" ["XPE plugin\inf sub folder path"]
После этого удали файлы *.inc и *.ins, оставив только файлики *.inf. Готово.
Автор: Степан «Step» Ильин
Взято с январского 2007 номера журнала Хакер
2 комментов оставлено (Add 1 more)