Classen konfigurieren

Axel Freyn axel-freyn at gmx.de
Sat Mar 14 16:56:45 CET 2009


Hallo Felix,
On Sat, Mar 14, 2009 at 04:23:53PM +0100, Felix Holte Michael Paetow wrote:
> Am Saturday 14 March 2009 15:37:39 schrieb Axel Freyn:
> 
> > Wo genau ist denn dein Problem? Die ganze Klassendefinition ist
> > eigentlich nicht mehr, als dass ein Skript in /srv/fai/config/class den
> > Namen der Klasse ausgibt (z.B. per echo "NEUE_KLASSE").
> > Achtung: es werden nur Skript ausgeführt, die
> > a) als ausführbar Markiert sind (mit chmod +x)
> > b) einen Namen der Form NN-xxxxx haben (NN ist eine zweistellige Zahl,
> >    xx ein beliebiger Name), z.B. 10-base-classes
> 
> Bis jetzt bin ich so vorgegangen, da ich es anders nicht gefunden bzw nicht 
> nachvollziehen konnte, das ich meine, frei erfundene NEUE_KLASSE ohne 
> irgendwelche Skripte in die 50-host-classes eingetragen habe, in Verbindung 
> mit den Namen meines Installclients. Also genau so wie andere Einträge in der 
> Datei.
Das sollte funktionieren. 

Nur zum Testen: Wenn du auf dem FAI-Server ein
HOSTNAME=Tester ./50-host-classes
machst, müsste er dir alle Klassen ausgeben, die für den Client
"Tester" definiert sind. Da müsste deine NEUE_KLASSE oder TESTLAUF
auftauchen (wie sie eben heißt)?

> 
> Mein Rechner "Tester" sollte dann die Klasse FAIBASE und meine Klasse TESTLAUF 
> installiert bekommen.
> 
> Ich habe dann noch jeweils eine Datei in disk_config (umbenannte Kopie von 
> FAIBASE) und eine in package_config angelegt.
> 
> Die Installation lief dann auch. Bloß kamen keine Pakete aus meiner 
> Paketkonfiguration an.
> 
> Doch aus deiner Aussage 
> 
> > Wenn das klappt, müsste auf dem installierten Client in der log-Datei
> > FAI_CLASSES die Klasse "NEUE_KLASSE" stehen (die Log-Datei ist
> > standardmässig in /var/log/fai/localhost/last/FAI_CLASSES).
> 
> entnehme ich mal, das ich das nicht so einfach machen kann. Oder doch? Wenn 
> nciht, wieso nicht? das ist eine Frage, die mich mein Prüfer wahrscheinlich 
> auch fragen wird.
Doch, du kannst es so einfach machen! Meine Kommentar bezog sich nur auf
die Fehlersuche....
> 
> Hättest du vielleicht eine Schritt-für-Schritt Anleitung für mich?
Also, nennen wir den Client-Rechner "tester", und die neue Klasse
"TESTKLASSE". Dann änderst du die Beispiel-Datei 50-host-classes von:

case $HOSTNAME in
    faiserver)
        echo "FAIBASE DEMO FAISERVER" ;;
    demohost)
        echo "FAIBASE DHCPC DEMO" ;;
    gnomehost)
        echo "FAIBASE DHCPC DEMO XORG GNOME";;
    atom*)
        echo "FAIBASE DHCPC DEMO" ;;
    *)
        echo "FAIBASE DHCPC" ;;
esac

zu

case $HOSTNAME in
    faiserver)
        echo "FAIBASE DEMO FAISERVER" ;;
    demohost)
        echo "FAIBASE DHCPC DEMO" ;;
    gnomehost)
        echo "FAIBASE DHCPC DEMO XORG GNOME";;
    atom*)
        echo "FAIBASE DHCPC DEMO" ;;
    tester)
        echo "FAIBASE DHCPC TESTKLASSE ;;
    *)
        echo "FAIBASE DHCPC" ;;
esac

(der neue Rechner muss VOR dem "*)" stehen!)

Das sollte genügen - danach müsste die Paket-Konfigurations-Datei
package_config/TESTKLASSE eingelesen werden, und er müsste die dort
definierten Pakete installieren.


Falls es damit bei Dir nicht klappt - wie gesagt: FAI schreibt eine
Liste von allen Klassen, die bei der Installation definiert waren, in
eine Protokoll-Datei namens "FAI_CLASSES". Wenn du die nach der
Installation anschaust: Hat FAI da "TESTKLASSE" reingeschrieben? Wenn
nicht, hast du irgendwo einen Fehler;-) Ich würde ihn dann mal bei der
Namensvergabe des Rechners vermuten - hat er bei der Installation
wirklich den Namen "tester" bekommen? Ansonsten, mail mir oder der Liste
die Protokoll-Datei "fai.log" vom install-Client - da sollte drinstehen,
was genau passiert ist.

Viel Erfolg,

Axel


More information about the linux-fai mailing list