Hier beschreibe ich, wie man mehrere CD Images auf eine DVD oder CD bringt und diese dann frei wählbar booten kann.
Im Internet habe ich nach längerem Suchen zwar eine möglickeit entdeckt aus CD Images eine Multiboot DVD zu machen, doch diese hat den Nachteil, dass das jeweilige Bootmenü des jeweiligen CD Image verlohren geht.
In dieser Anleitung beschränke ich mich auf CD Images von LiveCDs, die wie eine Knoppix CD aufgebaut sein müssen.
Als Bootloader wird Grub verwendet. Grub stellt ein einfaches Menü dar, in dem das zu bootendem CD Image dann nur noch ausgewählt werden muss.
Um die CD Images mit ihrem Bootloader booten zu können, brauch man noch Memdisk. Memdisk ermöglicht das Booten von Floppy und Harddisk Images von einer CD.
mkdir MultibootDVDDort werden dann alle Ordner, die für die Multiboot DVD benötigt werden angelegt. Dazu wechsel wir als erstes in den neu angelegten Ordner (bitte an Groß- und Kleinschreibung denken).
cd MultibootDVD mkdir -p bootcd/boot/grubFür jedes CD Image muß ein eigener Ordner angelegt werden. Dabei ist es wichtig, dass man bei den Ordner- und Dateinamen das 8.3 Schema verwendet. Sonnst passiert es, dass der Bootloader die Datei später nicht finden kann. Die Groß- und Kleinschreibung spielt aber eine Rolle.
mkdir bootcd/KNOPPIX mkdir bootcd/DSLFür Floppyimages müssen keine eigene Ordner angelegt werden. Diese werden direkt in dem Ordner bootcd abgelegt. Möchte man auf der Multiboot DVD auch Tomsrtbt mit drauf haben, dann muß kein eigener Ordner angelegt werden, da dies schon ein 2,88 MB Floppyimage ist.
dd if=/dev/zero of=bootcd/knoppix.img bs=2880k count=1Diese muss mit Fat formatiert werden, da hier der Bootloader syslinux zum einsatz kommt und dieser nur von Fat booten kann.
sudo mkdosfs bootcd/knoppix.imgUm nun die Dateien von dem CD Image in das Floppyimage kopieren zu können, müssen beide Images per Loop-Device gemountet werden. Dazu legen wir noch zwei Mountpunkte unter /mnt an.
sudo mkdir /mnt/floppyimage sudo mkdir /mnt/cdimageDann mounten wir die Images.
sudo mount -o loop bootcd/knoppix.img /mnt/floppyimage sudo mount -o loop cdimage.iso /mnt/cdimageNun werden alle Dateien aus dem Ordner boot/isolinux von dem CD Image ins Floppyimage kopiert.
sudo cp -av /mnt/cdimage/boot/isolinux/* /mnt/floppyimage/Anschließend wird im Floppyimage die Datei isolinux.bin gelöscht und die Datei isolinux.cfg in syslinux.cfg umbenannt.
sudo rm /mnt/floppyimage/isolinux.bin sudo mv /mnt/floppyimage/isolinux.cfg /mnt/floppyimage/syslinux.cfgJetzt wird das Floppyimage wieder ungemountet.
sudo umount /mnt/floppyimageUm das Floppyimage bootfähig zu bekommen muß noch der folgende Befehl auf das Image angesetzt werden.
syslinux -s bootcd/knoppix.img
cp -v /mnt/cdimage/KNOPPIX/KNOPPIX bootcd/KNOPPIX/Jetzt kann das CD Image ungemountet werden.
sudo umount /mnt/cdimage
sudo mkdir /mnt/initrd sudo mount -o loop bootcd/dsl.img /mnt/floppyimage cp /mnt/floppyimage/minirt24.gz /tmp/ gunzip /tmp/minirt24.gz sudo mount -o loop /tmp/minirt24 /mnt/initrdDie Änderung erfolgt in der Datei "linuxrc".
editor /mnt/initrd/linuxrcNach dem die Änderung erledigt ist, wird die Initrd ungemountet, gezipt und in das Floppyimage zurück kopiert. Danach wird das Floppyimage ungemountet.
sudo umount /mnt/initrd gzip -9 /tmp/minirt24 sudo cp /tmp/minirt24.gz /mnt/floppyimage/ sudo umount /mnt/floppyimage
cp /usr/lib/syslinux/memdisk bootcd/boot/
cp /lib/grub/i386-pc/stage2_eltorito bootcd/boot/grub/Anschließend wird die Datei bootcd/boot/grub/menu.lst mit dem Liebliengseditor erstellt und die verschiedene CD Images, die gebootet werden sollen als Bootoption eingetragen. Eine mögliche Konfiguration könnte wie folgt aussehen.
timeout 30 default 0 title Booting von Localer Harddisk root (hd0) chainloader +1 title Knoppix 4.0.2 CD kernel /boot/memdisk initrd /knoppix.img title DSL 2.1 kernel /boot/memdisk initrd /dsl.img title Tomsrtbt 2.0.103 kernel /boot/memdisk initrd /tomsrtbt.imgDer erste Booteintrag kann auch entfallen. Diese dient dazu, dass wenn nach 30 Sekunden keine Auswahl getroffen wurde, das installierte System auf der ersten Festplatte gebootet wird.
MultibootDVD/ -+- bootcd/ -+- boot/ -+- grub/ -+- menu.lst
| +- stage2_eltorito
|
-+- DSL/ -+- KNOPPIX
|
-+- KNOPPIX/ -+- KNOPPIX
|
-+- knoppix.img
|
-+- dsl.img
|
-+- tomsrtbt.img
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \
-boot-load-size 4 -boot-info-table \
-o multiboot.iso bootcd/
Das erstellte ISO Image kann nun mit growisofs oder k3b auf eine DVD gebrannt werden.