• Die kleine Baumschule

  • Die kleine Baumschule ist ein Software-Verteilmechanismus für Linux-Systeme. Sie kann ohne weitere Formalitäten von allen Instituten der Universität genutzt werden.

Die kleine Baumschule

Die kleine Baumschule ist ein Software-Verteilmechanismus für Linux-Systeme. Sie kann ohne weitere Formalitäten von allen Instituten der Universität genutzt werden; um ein einwandfreies Funktionieren zu garantieren, sollten allerdings einige Vorgaben beachtet werden. Die kleine Baumschule steht momentan für die Plattformen HP-UX 10.20, HP-UX 11.00, Linux Glibc 2.2 (32 Bit), Linux Glibc 2.11 (32 und 64 Bit) und Linux Glibc 2.13 (nur noch 64 Bit) zur Verfügung.

Verzeichnisstruktur

Die kleine Baumschule versucht, einen Kompromiss zwischen schnellem Zugriff und Einsparung von Plattenspeicher zu schaffen. Sie unterscheidet deswegen zwischen kleinen Dateien, die zum Betrieb der Maschine unbedingt notwenig sind und deswegen auf der lokalen Platte liegen müssen (.../machine), oft gebrauchten Dateien, die im lokalen Netz-Segment vorhanden sein sollten (.../segment), und wenig gebrauchten großen Dateien, die im Bedarfsfall vom zentralen Fileserver geholt werden (.../rzserv). Zudem wird zwischen betriebssystemspezifischen (/usr/...) und -unabhängigen Dateien (/usr/common/...) unterschieden, so dass auch in gemischten Pools doppelte Datenhaltung vermieden wird. Zur Vervollständigung dieser automatisch campusweit verteilten Software gibt es noch Verzeichnisse für lokale Installationen auf einer einzelnen Maschine (/usr/local) oder in einem spezifischen Pool (/usr/app). Es ergibt sich damit folgende Aufteilung:

 

  Globale Installation Lokale Installation
Betriebssystem-
spezifisch
Betriebssystem-
unabhängig
Lokale Festplatte /usr/machine /usr/common/machine /usr/local
Lokales Netz-Segment /usr/segment /usr/common/segment /usr/app
Zentraler Fileserver /usr/rzserv /usr/common/rzserv -

Verzeichnisse mounten

Um die kleine Baumschule zu nutzen, muss man erst einmal die entsprechenden Verzeichnisse verfügbar machen. Man kann diese hart mounten, wir empfehlen aber, hierzu einen Automounter wie z.B. den AMD (Anleitung auf der HP-UX-Seite) oder AutoFS zu verwenden. Zum Anlegen der Verzeichnisse, der Mountpoints und der Mount-Einträge gibt es eine fertige Installationsprozedur:

  • Falls noch nicht vorhanden, Mountpoint einrichten: mkdir /mnt, dann chmod 555 /mnt

     

  • Installationsverzeichnis mounten: mount rzcomserv.rz.uni-karlsruhe.de:/export/rzcomserv /mnt

     

  • Um die Verzeichnisse der kleinen Baumschule verfügbar zu machen, steht jetzt das Installationsscript /mnt/install/system/baumschule/INSTALL zur Verfügung. Sie müssen dem Script mitteilen, wo es das Segment und das Common Segment findet:
    -S
    Das Segment wird auf dem lokalen Rechner in /usr/segment angelegt. Der Platzbedarf beträgt ca. 500 MB in der Grundversion; inklusive aller zur Verfügung stehenden speziellen Anwendungsprogramme kann der Bedarf bis auf 1.5 GB wachsen. Pro Ethernet-Segment / Hub-Stack und Betriebssystemversion sollte ein Rechner das Segment vorhalten und an die anderen Rechner exportieren. -s
    Gibt es bereits einen Segment-Server für die jeweilige Betriebssystemversion, so können Sie hier den entsprechenden Hostname angeben; /usr/segment wird dann automatisch gemountet. Soll das Segment zwar lokal angelegt werden, aber nicht im /usr-Filesystem, so können Sie hier auch einen anderen Pfad angeben (z.B. /hfs/1/segment); es wird dann dieses Verzeichnis sowie ein entsprechender Symlink eingerichtet. -C
    Das Common Segment wird auf dem lokalen Rechner in /usr/common/segment angelegt. Momentan umfasst es ca. 300 MB in der Grundversion (ca. 1 GB mit allen Anwendungen). Pro Ethernet-Segment / Hub-Stack sollte ein Rechner (egal welches Betriebssystem) das Common Segment vorhalten und an alle anderen Rechner exportieren. -c
    Gibt es bereits einen Common Segment-Server, so können Sie hier den entsprechenden Hostname angeben; /usr/common/segment wird dann automatisch gemountet. Soll das Common Segment zwar lokal angelegt werden, aber nicht im /usr-Filesystem, so können Sie hier auch einen anderen Pfad angeben (z.B. /hfs/1/comseg); es wird dann dieses Verzeichnis sowie ein entsprechender Symlink eingerichtet.

    Typischer Aufruf: /mnt/install/system/baumschule/INSTALL -S -c ifchp1
    (Hier würde der Rechner das Segment lokal halten und das Common Segment von dem Rechner ifchp1 holen).

  • Installationsverzeichnis unmounten: umount /mnt

Manuell mounten

Sollten Sie statt des vorgegebenen Installations-Scripts die mounts manuell eintragen wollen, stellen Sie bitte sicher, dass anschließend folgende mount-Struktur vorliegt:

/home/sys/rzinstcommach  -> rzinstcommach.rz.uni-karlsruhe.de:/export/rzinstcommach
/home/sys/rzinstcomseg   -> rzinstcomseg.rz.uni-karlsruhe.de:/export/rzinstcomseg
/home/sys/rzcomserv      -> rzcomserv.rz.uni-karlsruhe.de:/export/rzcomserv
/home/sys/rzinstmach     -> rzinstmach-system.rz.uni-karlsruhe.de:/export/rzinstmach-system
/home/sys/rzinstseg      -> rzinstseg-system.rz.uni-karlsruhe.de:/export/rzinstseg-system
/home/sys/rzserv         -> rzserv-system.rz.uni-karlsruhe.de:/export/rzserv-system

wobei für system je nach verwendeter Betriebssystemversion hp10, hp11, lx22, lx211, lx211-64 oder lx213 stehen muss. Legen Sie die Verzeichnisse /usr/machine und /usr/common/machine an, richten Sie Symlinks von /usr/rzserv nach /home/sys/rzserv und von /usr/common/rzserv nach /home/sys/rzcomserv ein und erzeugen Sie entweder die Verzeichnisse /usr/segment und /usr/common/segment oder legen Sie Symlinks auf entsprechende Mountpoints an.

Autoop installieren

Um die kleine Baumschule nun auf den eigenen Rechner zu bringen, muss der autoop (Automatic Operator) laufen. Dieser ruft jede Nacht (unter anderem) ein Script auf, das alle Veränderungen an der kleinen Baumschule in die auf dem Rechner lokal angelegten Verzeichnisse überträgt. Um allein den autoop zu installieren, rufen Sie /usr/common/rzserv/install/system/autoop/INSTALL auf. Soll der erste Kopier-Prozess gleich durchgeführt werden, verwenden Sie zusätzlich die Option -r; ansonsten wird der Kopier-Vorgang in der folgenden Nacht angestoßen. Wenn Sie die RZ-Installation (s.u.) verwenden, wird der autoop automatisch installiert.

RZ-Installation

Das Installationsscript /usr/common/rzserv/install/system/rz/INSTALL fasst alle bisherigen Anpassungen des Betriebssystems an die bestehenden RZ-Konventionen zusammen. Im einzelnen sind dies:

  • Anlegen der /etc/rc.values
  • Einrichten von Links für das Profile, die Shell-Umgebungen sowie Perl. (Achtung, ein bestehendes /etc/profile wird überschrieben!)
  • Einrichten von /etc/shells und /etc/TIMEZONE
  • Installieren des autoop (Automatic Operator
  • Installieren von rztrans (RZ-Remote-Printing
  • Konfigurieren der ssh (Secure Shell
  • Installieren der mailcap (Multimedia Steuerdatei
  • ...

Einzelne Facilities können auch separat installiert werden, die entsprechenden Installationsscripts finden Sie unter /usr/common/rzserv/install.

Fehlersuche

Sollte nicht alles nach Kochrezept klappen, sollte man folgende Fehler abchecken:

  • Beim Aufruf der Scripts kommt "File not found":
    Das automatische Mounten hat nicht geklappt -> Im Falle von AMD überprüfen, was der amd als Fehler angibt: amq -m.
  • /usr/segment ist leer:
    Wahrscheinlich ist der autoop noch nicht gelaufen (z.B. weil er ohne -r Option installiert wurde). Entweder ein bisschen warten (der autoop läuft stündlich) oder von Hand starten: /etc/operator/autoop/rzrefresh

Segment-Server für Fremd-Plattformen

Soll ein Rechner Segment-Server nicht (nur) für die eigene Systemplattform werden, so reicht es, einfach für jede weitere Plattform ein Verzeichnis /usr/system/segment anzulegen, wobei sich system genauso ergibt wie im Abschnitt Manuell mounten (s.o.). Diese Verzeichnisse werden dann ebenso vom autoop versorgt wie das native Segment-Verzeichnis.