Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Автоматическая установка Автоматическая установка Windows XP Руководство по мультизагрузке дистрибутивов на базе Linux посредством BCDW RSS

Руководство по мультизагрузке дистрибутивов на базе Linux посредством BCDW

Текущий рейтинг: 4.45 (проголосовало 38)
 Посетителей: 26492 | Просмотров: 43764 (сегодня 0)  Шрифт: - +

Представляю статью, которую написал Сергей Тренин, известный на конференции OSZone под ником greyzy.

Введение

В этой статье рассматривается создание мультизагрузочного диска с дистрибутивами Linux и другими программными продуктами. В качестве общего загрузчика используется Bootable CD Wizard (BCDW). Предполагается, что читатель знаком с работой загрузчика BCDW. Если нет, необходимо изучить статью Создание мультизагрузочного CD на основе Bootable CD Wizard. Под папкой проекта в процессе сборки подразумевается папка XPCD (для удобства применения CDImage).

Все указанные в статье пути актуальны для перечисленных ниже версий программных продуктов. В других выпусках эти параметры могут измениться.

Состав диска

В состав диска включены следующие программные продукты и дистрибутивы Linux:

BCDW Linux

  • offline NT and registry editor, версия от 08.08.08 (сброс пароля winXP/2003/Vista), страница загрузки
  • Gnome Partition Editor 0.3.9 (редактор разделов), страница загрузки
  • Parted Magic 3.2 (включает редактор разделов, инструмент восстановления файлов и разделов, ряд утилит ), страница загрузки
  • Back Track 3 (полухакерский дистрибутив), страница загрузки
  • Ophcrack xp 2.0.1 (подбор пароля администратора winXP, последняя версия работает и для Vista, раньше было или для той, или для другой ОС, хочу предупредить, что данный продукт совсем не понимает русские имена), страница загрузки
  • GEEXBOX Open Media Center (проигрыватель музыки и фильмов без загрузки ОС), страница загрузки
  • SLAX 6.0 (совсем небольшой live-дистрибутив), страница загрузки
  • SAM Linux 2007 live (симпатичный live-дистрибутив, очень удобный, на мой взгляд), страница загрузки
  • OPENSUSE 11.0 live (live-дистрибутив известной настольной системы), страница загрузки
  • Paragon Partition Manager 2009, описание, хочется добавить, что в версию 2009 также включен менеджер образов разделов и дисков, который раньше шел отдельным продуктом
  • Kaspersky Rescue CD (версия сборки конец 2008 года), описание, здесь live-диск на основе linux, существует решение на основе Bart PE, но это другая история
  • DrWeb 4.44 (версия сборки конец 2008 года), страница загрузки, на этом ftp ищем папку livecd

Краткая теория

Материал для данного раздела почерпнут из этой замечательной статьи.

Формат запуска загрузчика какого-либо дистрибутива на базе Linux такой:

/isolinux/isolinux.bin /isolinux/vmlinuz*** initrd=/isolinux/initrd.gz*** init=**** moreoptions*****
  • isolinux.bin - загрузчик
  • vmlinuz - это ядро дистрибутива (kernel), файл может называться как-нибудь иначе, например bzImage
  • initrd.gz - это RAM-диск, в него распаковывается предварительная файловая система, может называться иначе
  • init= - параметр, также отвечающий за функции запуска, о нем ниже
  • moreoptions - тут остальные опции запуска, размер RAM-диска, видео и т.п.
  • isolinux – папка, содержащая загрузчик isolinux.bin, либо путь к файлам дистрибутива, может называться по-другому

Каким образом формируются строки запуска для наших дистрибутивов? Распаковав ISO-образ нашего дистрибутива, мы ищем файл isolinux.cfg, находящийся либо в корне ISO-образа, либо в папке isolinux, либо в папке boot, либо boot\isolinux. Также, вы можете увидеть файл syslinux.cfg, почти такого же содержания. Различие загрузчиков, как гласит руководство к пакету syslinux, следующее:

  1. SYSLINUX - MS-DOS/Windows FAT filesystem
  2. ISOLINUX - ISO9660 CD-ROM

То есть isolinux - для компакт-дисков, а syslinux для FAT, в том числе и для съемных USB носителей («флэшек»).

В файле isolinux.cfg описываются параметры запуска, цвета фона, расположение строк и подобные параметры. Нас же интересуют непосредственно параметры запуска дистрибутива. Находим примерно такие строки:

label GParted Live
MENU DEFAULT
MENU LABEL GParted Live (Default settings)
kernel /live/vmlinuz1
append initrd=/live/initrd1.img boot=live union=aufs noswap noprompt vga=791 ip=frommedia nolocales
TEXT HELP
ENDTEXT

Таким образом, приглядевшись, мы видим, что ядро (kernel) - это файл vmlinuz1, RAM-диск - это файл initrd1.img, а остальное - это опции запуска.

Для init= пишем то, что указано в разделе init= конкретного конфигурационного файла

Добавление собственных дистрибутивов

Вообще, файл isolinux.bin есть во всех рассмотренных дистрибутивах, но для удобства мы будем использовать один такой файл для всего нашего проекта.

  1. Создаем в папке проекта папку isolinux
  2. Загружаем пакет syslinux (у меня это была версия 3.72, страница загрузки находится здесь)
  3. Находим в архиве папку core и извлекаем оттуда файл isolinux.bin в папку isolinux. Таким образом, мы не плодим файлы isolinux.bin на диске и запускаем его последнюю и, хочется верить, самую стабильную и многофункциональную версию.

1. offline NT and registry editor

Создаем в папке проекта папку offline и копируем туда содержимое ISO-образа. Также добавляем в эту папку драйверы для дисков (с этого же сайта)

BCDW Linux

В bcdw.ini пишем

/isolinux/isolinux.bin /offline/vmlinuz initrd=/offline/initrd.cgz,/offline/scsi.cgz rw vga=1 init=/linuxrc ; Offline

2. Gnome Partition Editor 0.3.9

Создаем в папке проекта папку live и копируем туда содержимое папки live ISO-образа. Если вы создадите папку с другим именем, загрузка не произойдет - дистрибутив будет упрямо искать папку live. Возможно, эта проблема будет исправлена в следующих релизах.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /live/vmlinuz1 initrd=/live/initrd1.img boot=live union=aufs noswap vga=791 init=/linuxrc;GParted 0.3.9 Graphic mode;
/isolinux/isolinux.bin /live/vmlinuz1 initrd=/live/initrd1.img boot=live union=aufs noswap vga=791 toram init=/linuxrc; GParted 0.3.9 copy to ram;

3. Parted Magic 3.2

Создаем в папке проекта папку PMAGIC и копируем туда из ISO-образа папку PMODULES со всем содержимым, а также файлы BZIMAGE и INITRD.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /pmagic/bzImage noapic initrd=/pmagic/initrd keymap=us livecd vga=791 sleep=0 quiet tmpfs_size=180M ramdisk_size=25000 init=/linuxrc ;Pmagic 3.2 copy to ram ;
/isolinux/isolinux.bin /pmagic/bzImage noapic initrd=/pmagic/initrd keymap=us livecd vga=791 sleep=0 quiet tmpfs_size=180M ramdisk_size=25000 noeject noreplace-paravirt init=/linuxrc ;Pmagic 3.2 noeject disk ;
/pmagic/isolinux.bin /pmagic/bzImage noapic initrd=/pmagic/initrd keymap=us livecd vga=normal sleep=0 quiet tmpfs_size=180M ramdisk_size=25000 init=/linuxrc ; Pmagic 3.2 normal vga

4. Back Track 3

Создаем в папке проекта папку BT3 (обязательно заглавными буквами, поскольку дистрибутив не может найти путь, если используются строчные) и копируем туда содержимое папки BT3 ISO-образа, а также файлы vmlinuz и initrd.gz из папки boot ISO-образа.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /BT3/vmlinuz initrd=/BT3/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf,kdm vga=0x317 init=/linuxrc ;Back Track 3 Graphics mode (KDE)
/isolinux/isolinux.bin /BT3/vmlinuz initrd=/BT3/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=kdm vga=0x317 init=/linuxrc ;Back Track 3 Graphics mode (VESA KDE)
/isolinux/isolinux.bin /BT3/vmlinuz initrd=/BT3/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw nohd vga=0x317 init=/linuxrc ;Back Track 3 no Hard Disk
/isolinux/isolinux.bin /BT3/vmlinuz initrd=/BT3/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw copy2ram autoexec=xconf,kdm vga=0x317 init=/linuxrc ;Back Track 3 Graphics mode, Copy To RAM

5. Ophcrack xp 2.0.1

Создаем в папке проекта папку ophcrack и копируем в нее содержимое папки ophcrack ISO-образа, а также файлы vmlinuz и initrd.gz из папки boot ISO-образа.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /ophcrack/vmlinuz initrd=/ophcrack/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf,startx init=/linuxrc ;Ophcrack xp 2.0.1 Graphic mode
/isolinux/isolinux.bin /ophcrack/vmlinuz initrd=/ophcrack/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=startx init=/linuxrc ;Ophcrack xp 2.0.1 VESA mode

6. GEEXBOX Open Media

Внимание! Официальная версия, совсем недавно обновленная до версии 1.2, является англоязычной. Ее проблема в том, что она абсолютно не видит русские имена файлов и папок. Вы можете использовать эту версию, однако здесь будет рассмотрена русифицированная ATF’ом (Raptor) версия GEEXBOX 1.1, взятая с сайта http://greenflash.su.

Создаем в папке проекта папку GEEXBOX, копируем туда все содержимое папки GEEXBOX загруженного архива.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /GEEXBOX/vmlinuz initrd=/GEEXBOX/initrd.gz root=/dev/ram0 noapic nolapic acpi=off rw boot=cdrom lang=ru splash=silent vga=789 keymap=qwerty remote=LG receiver=leadtek video=vesafb:ywrap,mtrr init=/linuxrc; GEEXBOX Open Media Center

7. SLAX 6.0

Создаем в папке проекта папку slax, копируем туда содержимое папки slax ISO-образа и файлы vmlinuz и initrd.gz из папки boot ISO-образа.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /slax/vmlinuz initrd=/slax/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf,telinit~4 init=/linuxrc; Slax Graphics mode (KDE);
/isolinux/isolinux.bin / slax /vmlinuz initrd=/ slax /initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=telinit~4 init=/linuxrc; Slax Graphics VESA mode;
/isolinux/isolinux.bin / slax /vmlinuz initrd=/ slax /initrd.gz ramdisk_size=6666 root=/dev/ram0 rw copy2ram autoexec=xconf,telinit~4 init=/linuxrc; Slax Copy To RAM;

8. SAM Linux 2007

Создаем в папке проекта папку SAM, в нее копируем файлы vmlinuz и initrd.gz из папки isolinux ISO-образа, а в корень папки SAM копируем файл livecd.sqfs из корня ISO-образа.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /SAM/vmlinuz livecd=livecd initrd=/SAM/initrd.gz root=/dev/rd/3 acpi=on vga=788 keyb=us splash=silent fstab=rw,noauto init=/linuxrc; SAM LINUX 2007 LiveCD;
/isolinux/isolinux.bin /SAM/vmlinuz livecd=livecd initrd=/SAM/initrd.gz root=/dev/rd/3 acpi=on vga=788 keyb=us splash=silent fstab=rw,noauto vesa init=/linuxrc; SAM LINUX 2007 VideoSafeMode;
/isolinux/isolinux.bin /SAM/vmlinuz livecd=livecd initrd=/SAM/initrd.gz root=/dev/rd/3 acpi=off vga=normal keyb=us noapic nolapic noscsi nopcmcia init=/linuxrc; SAM LINUX 2007 Safeboot;
/isolinux/isolinux.bin /SAM/vmlinuz livecd=livecd copy2ram initrd=/SAM/initrd.gz root=/dev/rd/3 acpi=on vga=788 keyb=us splash=silent fstab=rw,noauto splash=verbose init=/linuxrc; SAM LINUX 2007 copy to ram;

9. OPENSUSE 11.0 live

Создаем в папке проекта папку opensuse и копируем в нее файлы initrd и linux из папки boot\i386\loader ISO-образа, в корень папки opensuse копируем файлы openSUSE-11.0-read-only.i686-2.7.0 и config.isoclient из корня ISO-образа.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /opensuse/linux initrd=/opensuse/initrd ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showopts init=/linuxrc; OpenSUSE-11.0 LiveCD;
/isolinux/isolinux.bin /opensuse/linux initrd=/opensuse/initrd ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showopts ide=nodma apm=off acpi=off noresume selinux=0 nosmp noapic maxcpus=0 edd=off init=/linuxrc; OpenSUSE-11.0 Failsafe;

10. Paragon Partition Manager 2009

К сожалению, этот продукт не загружается из ISO-образа с помощью BCDW, поэтому воспользуемся приведенным ниже принципом. Создаем в папке проекта папку paragon и копируем в нее содержимое ISO-образа.

BCDW Linux

в bcdw.ini пишем

/isolinux/isolinux.bin /paragon/vmlinuzp initrd=/paragon/initrd.gz splash=silent quiet root=/dev/ram0 ru_ver vga=0x314; Paragon Partition Manager 2009

11. Kaspersky Rescue CD

Создаем в папке проекта папку kav и копируем туда файлы rescue, rescue.igz и System.map-rescue из папки isolinux ISO-образа. В папку проекта копируем папку bases из корня ISO-образа (перед сборкой диска раздобудьте свежие базы и запишите в эту папку с заменой), а также в папку проекта копируем файлы image.squashfs и livecd из корня ISO-образа.

BCDW Linux

в bcdw.ini пишем

/kav/isolinux.bin /kav/rescue initrd=/kav/rescue.igz root=/dev/ram0 looptype=squashfs loop=/image.squashfs cdroot quiet trace init=/linuxrc ; Kaspersky rescue 2009
/kav/isolinux.bin /kav/rescue initrd=/kav/rescue.igz root=/dev/ram0 looptype=squashfs loop=/image.squashfs cdroot nox trace init=/linuxrc ; Kaspersky rescue 2009 safe
/kav/isolinux.bin /kav/rescue initrd=/kav/rescue.igz root=/dev/ram0 looptype=squashfs loop=/image.squashfs cdroot nox dolvm dodmraid init=/linuxrc ; Kaspersky rescue 2009 raid

12. DrWeb 4.44

Дистрибутив такой же вредный, как GParted, работает только из папки boot, поэтому если у вас уже есть папка boot (например, оттуда запускается WinPE), то копируем в нее файлы initrd, vmlinuz, DrWebLiveCD-4.44.0.0811190 и папку module вместе с содержимым из папки boot ISO-образа. Другими словами, создать отдельную папку не получается – загрузка не работает, автоматического обновления баз также не происходит (только, если организуете обновление баз после загрузки).

BCDW Linux

в bcdw.ini пишем

/Boot/isolinux.bin /Boot/vmlinuz initrd=/Boot/initrd init_opts=4 root=/dev/ram0 quiet dokeymap looptype=squashfs loop=/Boot/module/white.mo usbroot slowusb vga=791 splash=silent,theme:drweb CONSOLE=/dev/tty1 init=/linuxrc; Dr.Web 4.44 Graphic Mode;
/Boot/isolinux.bin /Boot/vmlinuz initrd=/Boot/initrd init_opts=3 root=/dev/ram0 quiet dokeymap looptype=squashfs loop=/Boot/module/white.mo usbroot slowusb init=/linuxrc ; Dr.Web 4.44 Text Mode

Пример файла bcdw.ini

Вы можете загрузить пример файла bcdw.ini по этой ссылке. Конечно, можно организовать в нем систему подменю.

Заключение

В заключение хочу отметить, что в зависимости от конфигурации компьютера, некоторые программы могут не работать в штатном режиме. Например, DrWeb в графическом режиме на слабой машине зависал и работал только в текстовом режиме. Также, описанный в статье метод не сработал для некоторых дистрибутивов и программных продуктов. Например, не удалось запустить, Mandriva 2009 rc1 и загрузочный диск антивируса Avira, а продукты фирмы EASEUS отказались работать по невыясненным причинам. Возможно, мне просто не хватило терпения, поэтому я желаю вам удачи в экспериментах!

Автор: Сергей Тренин  •  Иcточник: www.oszone.net  •  Опубликована: 26.02.2009
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER


Оценить статью:
Вверх
Комментарии посетителей
13.03.2010/20:33  scynet

Хотел приклеить minDrWebLiveCD-5.0.2, но почему-то по описанному способу, он у меня так и не запустился, решение же с сохранением загрузочной информации в drweb.wbt с помощью Win Iso, и копированием папки BOOT полностью на диск, с занесением в BootCat.ini "\boot\drweb.wbt ; Dr Web Live CD" сработало без проблем.
24.03.2010/18:44  yegres

подскажите пожалуйста, хочу прикрутить Slax, но после запуска с строчкой /isolinux/isolinux.bin /slax/vmlinuz initrd=/slax/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf,telinit~4 init=/linuxrc; Slax Graphics mode (KDE); - запускается Slax? с возможностью выбора загрузки, и сразу же, мгновенно, курсор выделяется на тестировании памяти, и запускается MemTest, что неправильно сделал?
19.09.2010/11:35  AlexAm

Для minDrWebLiveCD-5.0.3 сработала такая строка
/isolinux/isolinux.bin /boot/vmlinuz initrd=/boot/initrd init_opts=4 ID=F8GozmJxlnIOLwJr root=/dev/ram0 vga=791 CONSOLE=/dev/tty1 init=/linuxrc splash=silent,theme:drweb ; Загрузить DrWeb LiveCD
При этом важно удалить файл \boot\isolinux\isolinux.cfg иначе DrWeb запускает еще и свое меню (в котором у меня сразу запускал memtest)
25.10.2011/03:13  ya4496

Статья красивая . описано понятно.
Одна беда все выше написанное не работает.
Бьюсь 2 неделю , не могу добавить kav_rescue_10 и drweb-livecd-600 на рабочий диск BCDW
Я понимаю, что там дос тут линукс .
Как совместить? ну и хотелось, что бы работало.
все источники инета с одной статьи?
Может вы поможите?
28.01.2012/21:18  ringoh

в принципе всё понятно написано, надеюсь, что сработает в моём случае с Paragon!
Комментарии отключены. С вопросами по статьям обращайтесь в форум.