Stoppt die Vorratsdatenspeicherung

Die (in)offizielle FORWISS Software-Installations-Anleitung

Die Software Installation auf den Rechnern des FORWISS Pools (Passau) folgt einem erprobten, auf jahrelanger Erfahrung basierenden Schema. Durch Einhaltung dieses Schemas wird der hohe Standard, die Übersichtlichkeit und die unproblematische Wartung der Softwareinstallation gewährleistet. Dieser von den FORWISS-Systembetreuern entwickelte Quasistandard hat sich seit seiner Einführung bestens bewährt. Um das Prinzip der Softwareinstallation auch den Benutzern deutlich zu machen, werde ich hier die Installationsprozedur aufzeigen.

1) Das Archiv

Das FORWISS-Unix-Archiv enthält unter anderem die Sourcen der auf den FORWISS-Rechnern installierten Software in gepacktem Zustand. Um das Auffinden des gewünschten Pakets so einfach und effizient wie möglich zu gestalten, ist das Archiv hierarchisch strukturiert. Die Unix Software, um die es sich im folgenden drehen wird, befindet sich in

/common/lib/archive/unix

Um in den über 2000 Files nicht die Übersicht zu verlieren ist das Archiv, wie bereits angesprochen, hierarchisch geordnet, aber der Verzeichnissbaum ist nicht balanciert. Die dahinterliegende Struktur ist einem Laien nur schwer begreifbar zu machen. Je nach Tagesform kann man für eine Software tief im Verzeichnisbaum ein neues Unterverzeichnis anlegen oder vorhandene Pakete umstrukturieren oder beides tun oder gar nichts. Die Einordnung der Software erfolgt nach folgenden Kriterien:

Hersteller
Programme, die von GNU stammen, gehören nach /common/lib/archive/unix/gnu.
z. B. das X-Frontend für den gnu debugger.
Funktionalität
Programme, die man zum Debuggen braucht, gehören nach /common/lib/archive/unix/debugger.
z. B. das X-Frontend für den gnu debugger.
verwendete Bibliotheken
Programme, die mit den Bibliotheken des X-Windows Systems gelinkt werden müssen, gehören nach /common/lib/archive/unix/x11.
Z. B. das X-Frontend für den gnu debugger.
sonstige Merkmale
Dabei handelt sich um Kriterien, die SIE sowieso nicht wissen wollen.
Nun gibt es Fälle, in denen die Einteilung nicht so einfach ist, weil Software unter mehrere Rubriken fällt. Z. B. paßt der g++ Compiler in gnu, weil er von GNU ist, aber auch in languages, weil er ein Compiler ist. In diesen Fällen streiten sich die Systembetreuer kurz und legen das Paket dann in ein beliebiges Verzeichnis. Das ist aber nicht weiter tragisch, da die Archivstruktur sowieso ständig modifiziert wird und das File somit nicht lange dort liegen bleibt. Auf lange Sicht gesehen verteilen sich alle Files gleichmäßig über das Archiv.

2) Die Sourcen (/common/lib/source)

Hat man das Paket an einen passenden Platz ins Archiv gelegt, kann man mit der eigentlichen Installation beginnen. Dazu sucht man sich zuerst einmal einen passenden Platz in

/common/lib/source

/common/lib/source gliedert sich in Unterverzeichnisse. Jede Software wird in einem der Unterverzeichnisse ausgepackt. Die Auswahl des Unterverzeichnisses erfolgt nach ähnlichen Kriterien wie die Auswahl des Ablageplatzes im Archiv. Es ist allgemein üblich, bei der Wahl des Verzeichnisses darauf zu achten, daß man nicht nach dem gleichem Schema vorgeht wie in /common/lib/archive.

Also: Ein Paket, das im Archiv unter /common/lib/archive/unix/gnu/... steht, sollte, wenn irgend möglich nicht in /common/lib/source/gnu ausgepackt werden, sondern z. B. in /common/lib/source/x11. Da auf Softwarepakete, wie oben angedeutet, im allgemeinen mehrere Kriterien zutreffen, läßt sich das aber praktisch immer bewerkstelligen.

Da man auch spätere Generationen über seine Leistung informieren will, legt man in dem zugehörigen INSTALL Verzeichnis ein File an, in dem man seine Tätigkeiten protokolliert. Das wichtigste in diesem File sind die persönlichen Angaben über den Installateur. Die Beschreibung der Software beschränkt sich meist auf den Namen. Details stehen sowieso in der Manpage. Die Felder über die Lage des Pakets im Archiv läßt man am besten leer. Wie ich oben schon erwähnt habe, ist die Archivstruktur sehr dynamisch und so wäre eine Angabe sowieso in wenigen Tagen überholt. Im weiteren Verlauf der Installation protokoliert man die wesentlichen Schritte knapp und die unwichtigen ausführlich.

Danach hat man zum ersten mal die Möglichkeit, die Sourcen zu bewundern und zu konfigurieren. Modifikationen an dieser Stelle vorzunehmen, ist sehr effizient, da sich die Änderungen auf alle Architekturen auswirken.

Gemeinhin wird dies aber nicht gemacht, da sich dadurch die zur Installation benötigte Zeit stark verkürzt, und Sysops werden bekanntlich stundenweise bezahlt. Dies ist auch der passende Ort, um der Arbeitslosigkeit entgegenzuwirken. Was man hier zerkonfiguriert, kann man mehrmals reparieren.

3) Der »Public« Bereich

Wenn die Sourcen in /common/lib/source vorhanden sind, kann man sich an den 3. Schritt der Installation machen. Diese findet in

/public/projects

statt. /public/projects ist genau so strukturiert wie /common/lib/source. Diese Konsistenz ist unerwartet und hat schon manchen, der die FORWISS Installation kennt, sehr erstaunt. Also nochmal: Wenn man die Sourcen in /common/lib/source/[paket] ausgepackt hat, macht man in /public/projects/[paket] weiter.

Dort legt man dann ein Unterverzeichnis an. Um sich nicht den Ruf zu erwerben, einfallslos zu sein, wählt man dazu einen Verzeichnisnamen, der leicht von dem in /common/lib/source/ abweicht.

Heißt das Verzeichnis in /common/lib/source/ beispielsweise xlock kann man es jetzt Xlock oder xLock nennen. Auch das Anhängen oder Weglassen von Versionsbezeichnungen ist sehr beliebt. Diese lassen sich wahlweise durch `.', `-' oder `_' vom Namen trennen. So erhält man dann z. B. Xlock-2.34, Xlock_2.34, XLock.2.34, xlock-2.34, ... Durch konsequentes Ausnutzen all dieser Möglichkeiten läßt sich für jede Architektur ein individueller Verzeichnisname finden und sich so die Inkompatibilität der verschiedenen Architekturen wiederspiegeln. Eine Softwareinstallation ist schließlich und endlich auch ein ästhetisches Werk.

In diesem Verzeichnis legt man dann mittels mkshadow einen Schattenbaum des Paketes in /common/lib/source/ an.

Jetzt kann man architekturabhängige Änderungen, die man versehentlich in /common/lib/source/ gemacht hat, wieder rückgängig machen und neue architektur(un)abhängige Hacks hinzufügen.

Hat man das Paket hinreichend vorbereitet, wird man versuchen, es zu übersetzen. Der anschließende Kampf zwischen Mensch und Compiler läßt sich mit Worten nur schwer beschreiben und wird daher im INSTALL File durch die schlichte Zeile

	make
symbolisiert.

4) Die Installation

Wenn der Kampf beendet ist und man ein File erhalten hat, das vorgibt, ausführbar zu sein, kann man zum letzten Schritt der Installation schreiten.

Eine Überprüfung des Programms auf Funktionsfähigkeit findet prinzipiell nicht statt. Dafür hält sich FORWISS eine größere Anzahl Benutzer, die das Programm nach der Installation auf Fehler untersucht.

Bei vielen Paketen enthält das Makefile die Direktive install, die die Installation vereinfacht. Tippt man

make install
beginnt make mit der Installation.

Oft stellt man erst jetzt fest, daß irgendwo in der Konfiguration ein Fehler gemacht wurde, weil make Teile des Paketes in Verzeichnisse kopiert, wo sie definitiv nichts zu suchen haben. Hier hilft nur ein beherzter Druck auf ^C, um das Schlimmste zu verhindern. Nur der Reaktionsgeschwindigkeit der FORWISS Sysops ist es zu verdanken, daß bisher noch keine wesentlichen Daten zerstört wurden.

Da bei FORWISS die Installationsmechanismen individuell an die Architektur jedes Rechners angepaßt wurden, muß man jetzt, je nach Architektur, noch install-sw starten oder auch nicht.

Schlußwort

Ich hoffe, daß ich Ihnen die Philosophie, die hinter der Softwareinstallation bei FORWISS steht, deutlich machen konnte. Ihnen dürfte jetzt klar geworden sein, daß es sich bei der FORWISS Softwareinstallation um ein Meisterwerk handelt, das in der westlichen Welt seinesgleichen sucht. Durch klare Strukturierung, überlegenes Design und praxiserprobte Stabilität des Installationskonzepts und nicht zuletzt den selbstlosen Einsatz der hervorragend ausgebildeten Sysops können wir, nicht ohne Stolz, behaupten, in der Softwareinstallation weltweit führend zu sein.

Ihr Sysop


Alle Rechte vorbehalten.
M G Berberich · berberic@fmi.uni-passau.de · 1996-02-18