News Profil Themen Bücher Magazine Links Kontakt
eisfair FDFormat1.8 BusyBox0.60.5

Neue Serverkonfiguration

2003-03-08 Damit die Diskette auch unter Linux korrekt gemounted werden kann muss sie mit fdformat a: t83 s21 d16 formatiert werden. Sie entspricht dann dem fd0u1743-Eintrag aus dem Block-Devicetreiber FLOPPY.C.

Damit das ganze funktioniert müssen wir einige Modifikationen am eisfair -Paket vornehmen. Das geht nur unter Linux da rootfs.gz ein Filesystem-Container ist, den ich nur von Linux aus mounten kann.

Wir entpacken das eisfair -Paket irgendwo hin und rufen mkboot und mkfloppy für die Diskette auf. Damit werden schon mal alle benötigen Teile auf die Diskette kopiert und diese sollte zumindestens bis zur Nachfrage nach der Datendiskette durchbooten.

Dann entpacken wir rootfs.gz und mounten es. Im Verzeichnis /dev muss ein Floppy-Device namens fd0u1743 mit 2,76 angelegt werden. Das sollte mit mknod kein Problem sein.

Die meisten in rootfs.gz verwendeten Hilfsprogramme sind nur Links auf busybox. Die in eisfair verwendete Version hat aber einige Fehler weshalb sie durch die aktuelle Version (hier 60.5 ) ausgetauscht werden muss. Zum Übersetzen von busybox muss die Config.h modifiziert werden. Die fertige Übersetzung kopieren wir nach /usr/share/bin.

Das init-Script erwartet das der Benutzer die Diskette wechselt bevor es weiter geht. Das macht kein Sinn. Ich ändere das Script so, das erst die Diskette gemountet wird und wir nach den benötigten Files suchen. Erst wenn diese nicht gefunden werden, wird die Diskette wieder un-mounted, der Benutzer zum Wechsel ausgefordert, und dann die Diskette wieder gemountet. Damit bootet die Diskette dann ohne Wechsel durch, wenn die Files schon auf der ersten Diskette sind.

        
rcfile=rc.cfg
optfile=opt.tgz
mount -r $boot_dev -t "$boot_fs" /mnt

if [ ! -r /mnt/"$rcfile" ]
then
    umount /mnt

    echo
    echo "Please remove boot floppy and insert data floppy, then press ENTER"
    echo
    read dummy
    mount -r $boot_dev -t "$boot_fs" /mnt
fi
        

Wir können jetzt rootfs wieder un-mounten, komprimieren und auf die Diskette kopieren. In syslinux.cfg auf der Diskette ändern wir in der APPEND-Zeile die boot=-Angabe auf boot=/dev/fd0u1743.

Wer nur mehr Platz auf seiner Bootdiskette brauchte kann jetzt einfach seine opt.tgz und rc.cfg auf die Diskette kopieren. Diese sollte ohne Probleme durchstarten.

wird fortgesetzt ...