[OpenBSD]

CVSup


Inhaltsverzeichnis


Was ist CVSup?

CVSup ist ein Software-Paket, das dazu dient, sogennannte 'Source trees' , also Bäume von Quelltexten, zu verteilen und auf den aktuellen Stand zu bringen, also upzudaten, und zwar von einem Server, dem Master CVS repository, auf einen entfernten Host-Rechner. Die OpenBSD Sourcen werden in einem CVS-Verwahrungsort auf einer zentralen Entwicklungsmaschine gehalten. Mit CVSup können OpenBSD-User ihre Sourcen einfach auf dem neuesten Stand halten.

CVSup benutzt das sogenannte Pull-Modell zum Updaten. Dabei fragt jeder Client den Server nach Updates, ob und wann sie gewünscht sind. Der Server wartet passiv auf die Update-Anfragen der Clients. Deswegen sind alle Updates vom Client aus initialisiert. Der Server sendet niemals unaufgeforderte Updates. User müssen enweder den CVSup Client per Hand benutzen, um ein Update zu bekommen, oder sie können auch einen cron job setzen, um das ganze automatisch und regelmässig zu machen.

Das Wort CVSup, genauso geschrieben (also fett), meint das gesamte Softwarepaket. Seine Hauptkomponenten sind der Client cvsup, der auf den User Maschinen läuft, und der Server cvsupd, der auf allen OpenBSD CVSup Mirror sites (gespiegelten Maschinen) läuft.

CVSup soll sowohl schneller, als auch flexibler als sup sein, CVSup's Vorgänger.

Das OpenBSD-Projekt hat momentan vier Haupt Quellcode-"Lagerstätten":

Was ist CVS?

CVS ist das Source Code Kontrollsystem, das benutzt wird, um den OpenBSD Source tree zu verwalten. Eine detailliertere Beschreibung gibt es hier.

Den Anfang mit CVSup finden..

Die neueste Version von CVSup ist bei http://www.polstra.com/projects/freeware/CVSup/ erhältlich.

CVSup aus den sources zu erzeugen ist nichts für verzagte, da es in Modula-3 geschrieben wurde. Es gibt aber auch einen port des CVSup Client (net/cvsup-bin) der John's vor-kompilierte ausführbare Dateien für die i386 und sparc Architekturen die unter FreeBSD laufen und auch unter der SunOS Emulation, und das aufgrund dessen, dass es noch keinen port von Modula-3 auf openBSD gibt.

Die folgende Konfigurationsdatei könnte benutzt werden:

        # Standards, die für alle Sammlungen passen
        *default release=cvs
        *default delete use-rel-suffix
        *default umask=002
        *default host=cvsup.uk.OpenBSD.org
        *default base=/cvs
        *default prefix=/cvs

        # Wenn dein Netzwerkanschluss eine T1 oder schneller ist, kommentiere die folgende Zeile aus
        *default compress

        OpenBSD-all
        #OpenBSD-src
        #OpenBSD-www
        #OpenBSD-ports
        #OpenBSD-x11

Das bringt cvsup dazu, alle OpenBSD Distributionen von cvsup.uk.OpenBSD.org upzudaten, und zwar mit einer umask, die eine group-Schreibe-Erlaubnis im lokalen CVS-tree erlaubt.

Vorausgesetzt diese Datei wird als cvs-supfile gespeichert, würde das folgende Kommando benutzt, um das cvsup GUI hervorzuzaubern:

        cvsup cvs-supfile

während für den batch-mode, z.B. das folgende benutzt werde könnte:

        cvsup -g -L 2 cvs-supfile

CVS(1) benutzen, um den Source tree upzudaten.

Es ist jetzt einfach jegliches Repositiry zu checken. Für Korn/Bourne Shells:

        # cd /usr
        # CVSROOT=/cvs cvs checkout src

Für csh und ihre Derivative:

        # cd /usr
        # setenv CVSROOT /cvs
        # cvs checkout src

Das oben genannte wird die aktuellsten Sourcen herunterladen. Viele von euch wollen aber nur die release Sources, insbesondere, wenn ihr euer Systeme patcht. Um die release Sources zu prüfen und upzudaten musst du dem Kommando ein "tag" hinzufügen. Zum Beispiel:

        # cd /usr
        # cvs checkout -rOPENBSD_2_6 src

Oder OPENBSD_2_5 für 2.5, etc.

CVSup im Checkout-Modus laufen lassen

Alternativ zum Holen und Prüfen von Repositories mittels CVS, kannst du CVS im Checkout Modus laufen lassen, und zwar mit Hilfe des tag oder date Schlüsselwort in deinem supfile, entweder als *default oder als eine Option. Inbesondere kannst du das benutzen, um effetkiv deinen Source und Ports-Tree von den CDROMs auf den aktuellen Stand zu bringen.

Mit dem folgenden supfile könntest du deinen Ports Tree auf den aktuellen Stand bringen:

        # Defaults that apply to all the collections
        *default host=cvsup.uk.openbsd.org
        *default base=/var
        *default prefix=/usr
        *default release=cvs
        *default delete use-rel-suffix compress

        # Ports Collection.
        OpenBSD-ports tag=.

Jeder symbolische CVS tag kann benutzt werden. Ein einfacher Punkt "." bedeutet HEAD, i.e. die neueste Version aller Dateien im Hauptzweig. Achte darauf einen gültigen tag anzugeben, da CVSup nicht gültige von ungültigen tags unterscheiden kann, und ein Versuch einen existierenden gültigen tree mit einem ungültigen tag zu vergleichen löscht alle vorhanden Dateien.

Alternativ dazu kannst du das Schlüsselwort date=[cc.]yy.mm.dd.hh.mm.ss benutzen, um ein bestimmtes Datum zu erhalten. Alle 17 oder 19 iZeichen müssen wie oben angegeben werden. Für die Jahre 2000 und später gib einfach das Jahrhundert an cc. Für frühere Jahre brauchst du nur die letzten zwei Jahre anzugeben yy. Du kannst auch das tag und das date kombinieren.

Zur Verfügung stehende CVSup Server

Die folgenden CVSup Server stehen zur Verfügung:

cvsup.uk.OpenBSD.org

mit Sitz in Brighton, UK. gepflegt von Brian Somers.
Wird alle 2 Stunden upgedatet.

Zur Verfügung stehende Sammlungen:

OpenBSD-src - Das src repository
OpenBSD-ports - Das ports repository
OpenBSD-www - Das www repository
OpenBSD-x11 - Das x11 repository
OpenBSD-all - Alle OpenBSD repositories
cvsup.de.OpenBSD.org

mit Sitz bei Frankfurt am Main. gepflegt von Wolfram Schneider.
Upgedatet durch CTM.

Zur Verfügung stehende Sammlungen:

OpenBSD-src - Das src repository
OpenBSD-ports - Das ports repository
OpenBSD-www - Das www repository
OpenBSD-x11 - Das x11 repository
OpenBSD-all - Alle OpenBSD repositories
cvsup.hu.OpenBSD.org

beheimatet in Ungarn. gepflegt von Mohacsi Janos.
Alle 4 Stunden upgedatet.

Zur Verfügung stehende Sammlungen:

OpenBSD-src - Das src repository
OpenBSD-ports - Das ports repository
OpenBSD-www - Das www repository
OpenBSD-x11 - Das x11 repository
OpenBSD-all - Alle OpenBSD repositories
cvs.bsdfr.org

beheimatet in Frankreich.
gepflegt von Jean-Claude Christophe.
Alle 12 Stunden upgedatet.

Zur Verfügung stehende Sammlungen:

OpenBSD-src - Das src repository
OpenBSD-ports - Das ports repository
OpenBSD-www - Das www repository
OpenBSD-all - Alle OpenBSD repositories
sanmateo.ecn.purdue.edu

beheimatet in West Lafayette, IN, USA; gepflegt von Will Andrews.
Alle 2 Stunden upgedatet.

Zur Verfügung stehende Sammlungen:

OpenBSD-src - Das src repository
OpenBSD-ports - Das ports repository
OpenBSD-www - Das www repository
OpenBSD-x11 - Das x11 repository
OpenBSD-all - Alle OpenBSD repositories

Hinweis: Wenn dein Server hier mit falschen und unvollständigen Daten genannt wird, schreibe bitte eine Mail an : beck@openbsd.org

Du kannst auch "traceroute" benutzen, um den Server zu finden, der dir geografisch oder nach Weg am nächsten ist. Probleme mit einem Server sollten dem Maintainer (Verantwortlichen) des jeweiligen Servers gemeldet werden.

Zur Zeit (am 1.Juni 2000) hatte das CVS-repository etwa folgende Größen:

ports - 41MB
src - 689MB
www - 34MB
x11 - 193MB

Es gibt einen zusätzlichen Overhead von 33MB für die CVSROOT und sup Verzeichnisse. Die "alles-in-allem" Grösse steigt momentan um etwa 170 MB pro Jahr.

Wichtiger Hinweis: Es gibt einige wenige Dinge bezüglich der Kryptografie, die jedem bewusst sein sollten:

Das OpenBSD Projekt sucht weiterhin nach mehr CVSup-Servern -- wenn du Interesse hast einen solchen zu betreiben, schreibe bitte eine Mail an Brian Somers , um die Konfigurationsdetails zu besprechen.


OpenBSD www@openbsd.org
Originally [OpenBSD: cvsup.html,v 1.15 ]
$Translation: cvsup.html,v 1.14 2000/12/08 21:43:38 jufi Exp $

$OpenBSD: cvsup.html,v 1.13 2000/12/08 22:00:43 jufi Exp $