[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[tyndur-devel] [PATCH] ElTorito-CD-Images



Der Patch im Anhang ergänzt build/scripts/image_cdrom um die Fähigkeit auch ElTorito-Images zu erzeugen, falls eine entsprechende 
stage2 vorhanden ist.

-- 
Alexander Siol
alex@xxxxxxxxxx
dunklermeuchler@xxxxxxxxx
Index: build/scripts/image_cdrom
===================================================================
--- build/scripts/image_cdrom	(Revision 1085)
+++ build/scripts/image_cdrom	(Arbeitskopie)
@@ -37,6 +37,8 @@
 ROOT_COMMON=build/root-common
 ROOT_CDROM=build/root-cdrom
 
+STAGE2_ELTORITO=/usr/lib/grub/i386-pc/stage2_eltorito
+
 export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin
 
 source build/config/image_cdrom.sh
@@ -46,6 +48,28 @@
 
 export MTOOLSRC=lostmtools.conf
 
+if [ -f $STAGE2_ELTORITO ]; then # Eltorito
+
+    mkdir -p $ROOT_CDROM/boot/grub
+    cp $STAGE2_ELTORITO $ROOT_CDROM/boot/grub/stage2_eltorito
+    cp build/config/grub_cdrom_eltorito.cfg $ROOT_CDROM/boot/grub/menu.lst
+
+    # Fix für uppercase-Pfade in ISO9660-Dateisystemen.
+    # Ohne wird grub die menu.lst nicht finden.
+    sed -i "s/boot\/grub\/menu.lst/BOOT\/GRUB\/MENU.LST/g" $ROOT_CDROM/boot/grub/stage2_eltorito
+
+    mkisofs -b boot/grub/stage2_eltorito -no-emul-boot \
+        -boot-load-size 4 -boot-info-table -o $IMAGE_PATH \
+        $ROOT $ROOT_COMMON $ROOT_CDROM
+
+    rm -rf $ROOT_CDROM/boot
+    echo "CD-Image erfolgreich erstellt!"
+    echo "Verwendete Methode: Eltorito"
+    exit
+fi
+
+# Floopy-Emulation
+
 # Konfigurationsdatei fuer mtools generieren
 cat << EOF > $MTOOLSRC
 drive l:
@@ -90,3 +114,6 @@
 cp $FLOPPY_IMAGE_PATH $ROOT_CDROM
 mkisofs -b $(basename $FLOPPY_IMAGE_PATH) -o $IMAGE_PATH $ROOT $ROOT_COMMON $ROOT_CDROM
 rm $ROOT_CDROM/$(basename $FLOPPY_IMAGE_PATH)
+
+echo "CD-Image erfolgreich erstellt!"
+echo "Verwendete Methode: Floppy-Emulation"
Index: build/config/grub_cdrom_eltorito.cfg
===================================================================
--- build/config/grub_cdrom_eltorito.cfg	(Revision 0)
+++ build/config/grub_cdrom_eltorito.cfg	(Revision 0)
@@ -0,0 +1,8 @@
+title tyndur
+kernel /BOOT/TYNDUR debug=s
+module /MODULES/INIT boot=file:/
+module /MODULES/ATA
+module /MODULES/ISO9660
+module /MODULES/CONSOLE servmgr:/term servmgr:/term
+module /MODULES/SERVMGR ata:/atapi10|iso9660:/ vterm:/vterm8/out ata iso9660 console
+boot

Attachment: signature.asc
Description: Digital signature