Збираємо власну live-cd збірку winpe2
Перша і друга частини статті були присвячені встановленню та конфігурації сервера для завантаження та інсталяції з мережі різноманітних дистрибутивів операційних систем. Будемо вважати, що все налаштовано і працює. З поставлених завдань, залишається тільки одне питання: "Як це може допомогти лікувати від вірусів комп'ютери, відновлювати ОС і завантажувачі і т.д.?". Відповіді на це питання і присвячується ця частина.
Минуло небагато часу після виходу WinPE для Windows XP і голландець Барт Лагервей (Bart Lagerweij) запропонував для використання замість неї свою альтернативу - BartPE [2]. Ця збірка операційної системи відрізнялася від WinPE можливістю розширення функцій за рахунок системи плагінів [3].
Модулі пропонувалося використовувати для інтеграції самого різного програмного забезпечення, зміни зовнішнього вигляду і роботи операційної системи. Також була запропонована можливість використовувати власноруч написані плагіни. Архітектура збірки виявилася настільки вдалою, що кількість розширень стало нестримно зростати. Це дозволило збірок на BartPE впритул наблизитися і зовні і функціонально до традиційної Windows XP (Рис.1), вивівши дистрибутив на перше місце за популярністю серед збірок Windows Live CD.
Малюнок 1. Зовнішній вигляд збірки BartPE з плагіном XPE.

З появою BartPE створення власного Live CD стало зовсім простою справою. Навколо BartPE утворилася велика кількість спільнот різноманітних збірок, які розробляють плагіни і поліпшують систему. З основних, які розвиваються і оновлюються до сих пір, можна відзначити Ieshua's Live CD і (Y) PE by Yurkesha (CD) [4].
На жаль, сам продукт вже дуже давно не оновлювався. Існують проблеми зі створенням версій на основі Windows XP SP3. Але основний недолік - для створення збірки заснованої на Windows Vista або Windows 7 він не підходить, а необхідність в цьому була. І ось на зміну BartPE прийшов конструктор WinBuilder [5].
Розглянемо, що повинен містити дистрибутив "рятувальної" системи, з урахуванням мінімально необхідних завдань адміністрування:
- Можливість завантаження з мережного сервера, USB, CD-ROM;
- Робота з розділами жорсткого диска;
- Підключення до мережевих дисків для збереження інформації;
- Антивірусні утиліти;
- Робота з завантажувачами операційних систем;
- Відновлення даних;
- Скидання пароля Windows.
- Копіюємо всі файли з установочного диска або образу в папку на жорсткий диск, наприклад c: \ win7lv;
- Встановимо WAIK;
- Розпакуємо WinBuilder в папку c: \ winbuilder. Увага: при розпакуванні багато антивіруси, наприклад Антивірус Касперського і Microsoft Essential, починають подавати сигнали тривоги перевіряючи сам збирач або його сценарії, тому рекомендується додати цю папку в винятки або відключити їх на час;
- Розпакуємо комплект драйверів в папку c: \ x86 \ drivers. Архіви самих драйверів 7z розпаковувати не треба. При необхідності додати відсутні драйвера, просто скопіюйте набори * .inf, *. Sys, *. Dll і * .exe в цю папку. EXE-файли інсталяторів копіювати не треба.
Конструктор готовий до роботи: залишається завантажити сценарії. Для цього запустимо файл c: \ winbuilder \ winbuilder.exe і виберемо для поновлення два пункти: updates.boot-land.net і win7pe.winbuilder.net/SE. Що вони означають. Updates.boot-land.net- проект, який містить лише перевірені сценарії і вільні програми, готові до інтегрування в winpe7. Win7pe.winbuilder.net- містить основні програми і сценарії використовуються в збірках (Рис.2).
Потім натиснемо на кнопку Download і дочекаємося завершення процесу завантаження (Рис.3).
Малюнок 2. Вибір скриптів для установки.

Малюнок 3. Завантаження й оновлення скриптів для збирача Wibuilder.

Зазвичай процес завантаження займає не дуже багато часу. Про закінчення завантаження сигналізують включені галочки в панелі зліва головного вікна програми. Якщо все сценарії скрипти, то можна переходити до складання дистрибутива. В іншому випадку доведеться видалити з папки з утилітою (c: \ winbuilder) все, крім неї самої, і заново повторити завантаження. Можна спробувати ще раз повторити завантаження, але без очищення папки. Це дозволить заощадити час і трафік, але не гарантує подальшої правильної роботи. Так само необхідно звернути увагу на те, що якщо у Вашій системі включений UAC, запускати WinBuilder необхідно виключно з правами адміністратора. Ще один важливий момент - під час роботи конструктору потрібно викликати консольні утиліти з комплекту WAIK. Щоб забезпечити йому цю можливість є два шляхи.
Первийпуть. Додати в змінні оточення робочі шляху WAIK:
- Скопіювати з папки C: \ ProgramFiles \ WindowsAIK \ Tools \ PETools \ файл pesetenv.cmd в папку c: \ winbuilder;
- Замінити в ньому відносні шляхи до утиліт (%
Второйпуть. Скопіювати необхідні файли:
- З папки C: \ ProgramFiles \ WindowsAIK \ Tools \ x86 \ файли bcdboot.exe, imagex.exe, wimgapi.dll, wimmount.inf, wimmount.sys і wimserv.exe в папку C: \ winbuilder \ Projects \ Tools \ Win7PE_SE \ x86 \;
- З папки C: \ Windows \ System32 файл bcdedit.exe в папку C: \ winbuilder \ Projects \ Tools \ Win7PE_SE \ x86 \. Увага: якщо файлу bcdedit.exe немає цим шляхом, його необхідно шукати в папці C: \ Windows \ winsfx \.
Перейдемо до налаштування WinBuilder. Запустимо додаток, натискаємо кнопку Tools-Language і перемикаємо на українську мову. Інтерфейс програми, на жаль, переведений в повному обсязі. Закриваємо цю вкладку і натискаємо на кнопку Ресурс. розташовану в правій частині вікна. У розділі Рабочіекаталогі вказуємо шлях до папки з файлами дистрибутива Windows 7 - c: \ win7lv, целевойкаталогіisoфайл. Потім вибираємо пункт меню Drivers-DriverIntegration і натискаємо на кнопку Explore. У діалоговому вікні виберемо папку з драйверами. Нею, в даному випадку, є папка c: \ x86 \ drivers. У VirtualTest встановлюємо прапор в пункті VirtualBoxEmulation. це дозволить викликати встановлений VirtualBox. Якщо збірка відбувається на системі Microsoft Vista, то необхідно в розділі ImagesConfiguration поставити галочку навпроти пункту AlwaysuseWIMMountDriver (veryslow). Це дозволить використовувати стару утиліту монтування файлів imagex.exe, яка входить склад Microsoft Vista.
На цьому підготовка закінчена, перейдемо до створення пробної збірки дистрибутива.
Перед тим як почати додавати додаткові додатки рекомендується на даному етапі перевірити роботу збирача. Для цього натиснемо кнопку Play.
Малюнок 4. Зовнішній вигляд системи за умовчанням.

Якщо все сценарії виконалися коректно. то WinBuilder запустить віртуальну машину з створеним чином. В іншому випадку програма видасть повідомлення про помилку, зробить відповідний запис в журналі і запропонує варіант вирішення проблеми. Після запуску в віртуальній машині і перевірки працездатності, можна перейти до створення реальної збірки операційної системи. Для цього в головному меню програми натиснемо на кнопку Download. В панелі, розташованої в правій частині екрану, необхідно вибрати необхідні для завантаження компоненти системи. У розділі Win7PE_SE вибираючи їм пункти:
- Apps-HDTask. Використовується для роботи з розділами жорсткими дисками відновлення даних і відновлення завантаження операційних систем;
- Apps-Security. Забезпечує захист від вірусів і скидання пароля користувачів Windows в разі потреби;
Нарешті, натиснемо на кнопку Завантажити. Після завершення процесу завантаження перейдемо до головного меню програми і виберемо, доступні тепер компоненти і знову запускаємо збірку образу. Далі виконаємо перевірку і переконавшись, в правильній роботі всіх додатків перейдемо до розміщення на сервері установки. Зауважимо, що отриманий iso-образ можна використовувати за призначенням - записати CD диск.
У першій частині статті [10] дано докладний опис технології завантаження wim-образів систем. Коротко нагадаю. При завантаженні по мережі файл pxelinux.0 створює і відображується меню доступних для завантаження систем. Меню описується файлом конфігурації pxelinux.cfg. Для систем Window Vista і старше завантажуваних файлом є «pxeboot.0» (перейменований «pxeboot.n12»). Він в свою чергу завантажує «bootmgr.exe» - Windows Boot Manager (диспетчер завантаження) і запускає його на виполненіе.Тот запитує у сервера файл BCD - boot configuration data (сховище параметрів запуску) і на основі отриманих даних «bootmgr.exe» виробляє завантаження «boot.sdi» і «boot.wim» - образа Windows PE2.0. Всі вище перераховані необхідні файли необхідно взяти з створеного дистрибутива winpe7.iso.
Для настройки виконаємо послідовно:
1.Создадім нову секцію winpe7 в файлі конфігурації меню /srv/tftpboot/pxelinux.cfg.
label winpe7
menu label ^ WinPE WIN7
kernel sources / pxeboot.0
2.Монтіруем створений iso з WinPE7.
mount -o loop /home/iso/winpe7.iso / home / temp / pe7
3.Копіруем файл /home/temp/pe7/sources/boot.wim в / srv / tftpboot / sources /.
Якщо сервер вже був налаштований на мережеву завантаження Windows 7 [10], файли pxeboot.0, bootmgr.exe і boot.sdi копіювати немає необхідності. В іншому випадку для більш докладного роз'яснення зверніться до [9-10]. Завантажуємося з мережі і перевіряємо створений образ.
Існує велика кількість «завантажувальних» дискет для виконання різноманітних операцій з комп'ютером. До їх числа відносяться дискети для перепрошивки BIOS, HDD і т.д. Зазвичай вони поширюються в вигляді файлу формату IMA. Це ні що інше, як розширення діскетной образу, стандартної дискети Windows 98.
Спеціально для цього формату в комплекті syslinux існує мережевий завантажувач memdisk, який за замовчуванням розташовується в / usr / share / syslinux /.
Його можна використовувати для завантаження будь-якого способу ima.
Наведемо приклад використання цієї утиліти. Для цього додамо в завантаження образ ima містить FreeDos:
1.В секцію freedos в файл конфігурації /srv/tftpboot/pxelinux.cfg додамо наступний текст:
label freedos
menu label ^ FreeDOS + MHDD util
kernel memdisk
append initrd = pe / freedos.ima
2.Копіруем файл / usr / share / syslinux / memdisk в корінь tftp сервера (/ srv / tftpboot /).
3.Скачіваем базовий образ FreeDOS за посиланням [12].
4.Создаем папку / srv / tftpboot / pe / і копіюємо туди файл freedos.ima.
Тепер можна перевірити завантаження вибравши в меню пункт FreeDOS + MHDDutil (Рис.5).
Малюнок 5. Завантаження Freedos.
