[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [tyndur-devel] [PATCH] ElTorito-CD-Images
Am Dienstag, 7. April 2009 22:46 schrieb Alexander Siol:
> 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
Ich glaube, da wäre $ROOT angebrachter, das ist zumindest halbwegs temporär
(wird auch beim make clean gelöscht) und wird schon jetzt beim Buildvorgang
befüllt. $ROOT_CDROM ist eigentlich Defaultkonfiguration, die unverändert aus
dem Repo kommt.
> +
> + # 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
Den kann man dann weglassen, wenn man in $ROOT arbeitet. Ein bedingungsloses
rm -rf ist immer dann ungünstig, wenn was schiefgeht und man hinterher keine
Chance mehr hat nachzuvollziehen, warum eigentlich.
> + echo "CD-Image erfolgreich erstellt!"
> + echo "Verwendete Methode: Eltorito"
> + exit
> +fi
> +
> +# Floopy-Emulation
Floppy ;-)
> +
> # 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
Ansonsten sehe ich keine Probleme damit.