Dateien
Eine Alternative Idee
Dr. Turowski hat in seiner Dissertation eine alternative Politik
vorgeschlagen, die Anforderungen sich in verteilten heterogenen Systemen
erfüllt. Diese hat auch administrative Vorteile, da sie sich an Paketen
orientiert und daher mehr Struktur in das Verzeichnissystem bringt.
Ein System geliedert sich in Softwarepakete. Ein Paket besteht aus
rechnerarchitektur- und Betriebssystem abhängigen Teilen (ausfürbare Programme
und aus architekturneutralen Teilen (Konfiguration, Dokumentation usw.).
Pakete werden einzeln gemountet (Ein sog. Automounter macht das nach Bedarf).
Beim Mountvorgang soll ein Mechanismus das Paket für die Zielarchitektur richtig zusammenstellen.
Gleichzeitig können verschiedene Versionen des selben Pakets nebeneinander benutzt weren. Das Paketverzeichnis wird dazu mit einer Versionsnummer Versehen. Per Softlink kann die empfehlenswerteste Version eingestellt werden.
(Man vergleiche diese mit dem Aufwand, der gewöhlich von Redhat-Linux-distributionen und Nachahmern dazu getreiben wird !)
Also wird folgende Struktur vorgeschlagen:
/paket/stat-1.0/.386.linux/bin
lib
bin-> .386.linux/bin (wird auf Linix-Systemen gemacht)
man/man1
man2
....
doc/ Dokumentation
stat -> stat-1.0
Dieses System kann nun per NFS oder WWFS (z.B AFS) global fertig
installiert in einem Unternehmen oder sogar der Welt angeboten werden.
Beim Importieren über langsame Netze ist ein Caching auf der Lokalen Platte sinnvoll.
Nicht mehr benötigte Pakete könnten auf Anfrage verworfen werden.
Natürlich sollten Pakete nur von vertrauenswürigen Institutionen über vertrauenswürdige Kommunikationskanäle importiert werden.
Subsysteme
Pakete im obigen Sinne sind Anwendungspakete. Dienste und Subsysteme könnten
sich obige Struktur auch zu nutze machen. Allerdings sind sie genau auf das Betriebssystem und die Hardware abzustimmen.
Beispiel für solche Systeme:
- Netzsubsysteme
- WWW-Server
- Dateiserver
- Drucksystem
- ...
Kennzeichnend für solche Systeme ist, dass sie eine Systemabhängige Konfigurationsdateien haben und meist eigene Logfiles haben.
Bemerkungen zur Praxis
- dem einfachen Nutzer richtet man die Environmentvariable PATH entsprechend ein. .profile
- Der fortgeschrittene Nutzer hat ein minimalpfad als PATH und es gibt in /etc/profile.d/ folgende Datei use.sh.
Dann kann er mit z.B mit use gcc-4.7 sich den gcc-4.7 in den PATH holen
- in jedem Paket gibt es eine etc/umgebung, die bei obigen use.sh ausgefürt wird. Damit kann ein Paket andere Pakete automatisch mit einbinden.
- In der Praxis instaliere ich mir eine Linux-Distribution, und alle selber aus source kompilierten Pakete kommen unter /opt/
- In MS Windows installiere ich alle Pakete unter C:/opt - mit Cygwin mache es es wie unter Linux, wobei Pakete mit einem Softlink in /opt verfübar gemacht werden.
- Problematik: die libc ist der Dreh- und Angelpunkt einer Linux-Distribution. Wenn hier ein update kommt, sollte man ueber eine Neuinstallation nachdenken.
Es ist auch ein Compilierungsserver denkbar, der die für eine Softwarekonfiguration die Sourcen aus einem Versionsverwaltungssystem holt.
Informatik- und Netzwerkverein Ravensburg e.V
Rudolf Weber