Unterabschnitte


5.1 Erzeugen der fli4l Archive/Bootmedien unter Linux bzw. anderen Unix-Derivaten

Dies geschieht mit Hilfe von Scripts (.sh), die im fli4l Wurzelverzeichnis zu finden sind.

mkfli4l.sh

Das Build-Script erkennt selbständig die unterschiedlichen Bootvarianten.

Der einfachste Aufruf sieht unter Linux so aus:

    sh mkfli4l.sh

Die Aktionen des Build-Scripts werden durch drei Mechanismen gesteuert:

An Hand der Konfigurationsvariable BOOT_TYPE entscheidet sich, welche Aktion des Build-Scripts ausgeführt wird:

Die Beschreibung der Variablen der Konfigurationsdatei <config>/mkfli4l.conf finden sie im Kapitel Steuerungsdatei mkfli4l.conf.

5.1.1 Kommandozeilenoptionen

Der letzte Steuerungsmechanismus ist das Anhängen von Optionsparametern an den Aufruf des Build-Script auf der Kommandozeile. Die Steuerungsmöglichkeiten entsprechen denen der Steuerungsdatei mkfli4l.conf. Die Angabe von Optionsparametern überschreiben die Werte aus der Steuerungsdatei. Aus Komfortgründen unterscheiden sich die Namen der Optionsparameter von den Namen der Variablen aus der Steuerungsdatei. Es existiert teilweise eine Kurz- und eine Langform:

Usage: mkfli4l.sh [options] [config-dir]

-c, --clean             cleanup the build-directory
-b, --build <dir>       sets build-directory to <dir> for the fli4l-files
-v, --verbose           verbose - some debug-output
-s, --safe              safe-mode for floppy-boot
-d, --drive X:          set target-drive to X: - default a:
    --filesonly         creates only fli4l-files - does not create a disk
    --no-squeeze        don't compress shell scripts
-h, --help              display this usage

config-dir              sets other config-directory - default is "config"

--hdinstallscript       generates shellscript for hd-pre-install 

*** Remote-Update options
--remoteupdate          remote-update via scp, implies "--filesonly" 
--remoteuser <name>     user name for remote-update - default is "fli4l"
--remotehost <host>     hostname or IP of remote machine - default
                        is HOSTNAME set in [config-dir]/base.txt
--remotepath <path>     pathname on remote maschine - default is "/boot"
--remoteport <portnr>   portnumber of the sshd on remote maschine

*** Netboot options
--tftpbootpath <path>   pathname to tftpboot directory
--tftpbootimage <name>  name of the generated bootimage file
--pxesubdir <path>      subdirectory for pxe files relative to tftpbootpath

Eine HD-pre-installation einer passend formatierten (FAT16/FAT32) CompactFlash im USB-Cardreader oder eines USB-Sticks ist über die Option --hdinstallscript möglich. Hierbei wird ein separates Shellscript direct_hd_install.sh im fli4l-Verzeichnis erzeugt. Dieses können Sie auf eigenes Risiko zur Installation auf eine CompactFlash oder einen USB-Stick benutzen. Sie rufen dazu zunächst im fli4l-Verzeichnis

     sh mkfli4l.sh --hdinstallscript

auf. Dabei wird im fli4l-Verzeichnis das Shellscript direct_hd_install.sh erzeugt. Überzeugen Sie sich, dass Ihr Ziel-USB-Datenträger im System ein Device zugeordnet bekommen hat (/dev/sdX).

Um das Script ausführen zu können, sind folgende Voraussetzungen zu erfüllen:

Werden Sie also zum superuser (via su -). Stellen Sie sicher, dass Sie sich wieder im fli4l-Verzeichnis befinden. Dann starten Sie das Shellscript:

     sh direct_hd_install.sh <device>

Also zum Beispiel, wenn Ihr USB-Datenträger das Device /dev/sdb hat:
     sh direct_hd_install.sh /dev/sdb

Durch das Script erfolgt eine Kontrolle, ob dieser Datenträger tatsächlich ein USB-Laufwerk ist und die erste Partition eine FAT-Partition ist. Anschließend erfolgt nochmals eine Sicherheitsabfrage, ob Sie wirklich auf die erste Partition des angegebenen Devices schreiben wollen. Dies müssen Sie durch die Eingabe von 'yes' bestätigen.

Anschliessend werden der Bootloader und die nötigen Dateien auf den angegebenen Datenträger kopiert. Sie erhalten eine Meldung über den Erfolg oder Misserfolg.


Als letzter Optionsparameter kann ein alternatives Konfigurationverzeichnis übergeben werden. Das normale Konfigurationsverzeichnis heißt config und liegt direkt im fli4l Wurzelverzeichnis. An diesem Ort legen alle fli4l Pakete die Konfirgurationsdateien ab. Möchte man mehr als eine Konfiguration verwalten, so erstellt man sich ein weiteres Verzeichnis, z.B. hd.conf, legt dort eine Kopie der Konfigurationsdateien ab und verändert diese den Anforderungen entsprechend. Hier einige Beispiele:

     sh mkfli4l.sh --filesonly hd.conf
     sh mkfli4l.sh --no-squeeze config.test

Das Fli4l-Team
3. Mai 2009