CVSync ist ein Softwarepaket, das die Verteilung und Aktualisierung von Source-Trees von einem Master-cvs(1)-Repository eines entfernten Serverrechners übernimmt. Die OpenBSD-Quellen werden in einem CVS-Repository auf einer zentralen Entwicklungsmaschine in Kanada gewartet. Mit CVSync können OpenBSD-Benutzer auf einfache Weise ihre eigenen Source-Trees aktuell halten.
CVSync benutzt das sogenannte ,pull'-Modell zum Aktualisieren. Im ,pull'-Modell fragt jeder Client den Server nach Updates, wenn er welche wünscht. Der Server wartet passiv auf Anfragen nach Updates von seinen Clients. Alle Updates werden also vom Client aus angestoßen. Der Server schickt nie unangeforderte Updates. Die Benutzer müssen für ein Update entweder den CVSync-Client per Hand starten, oder sie müssen einen cron(8)-Job aufsetzen, der das Update automatisch regelmäßig startet.
Der Begriff CVSync, genau so geschrieben, bezeichnet das gesamte Softwarepaket. Seine Hauptbestandteile sind der Client cvsync, der auf der Maschine des Anwenders läuft, und der Server cvsyncd, der auf den OpenBSD-CVSync-,mirrors' läft.
CVSync ist dazu bestimmt, gleichzeitig schneller und flexibler als sup(1) und CVSup zu sein.
Das OpenBSD-Projekt besitzt derzeit fünf Quelltext-Repositorys:
CVS ist das Quelltext-Kontrollsystem, das benutzt wird, um den OpenBSD-Source-Tree zu verwalten. Es wird detaillierter hier beschrieben. Beachte, dass CVS und CVSync vollkommen verschiedene Programme sind. Obwohl CVS zum entfernten Dateizugriff benutzt werden kann, ist es nicht geeignet für eine komplette Quellcodedistribution über das Netz, und CVSync kann diese Aufgabe einfach viel effizienter durchführen.
Wenn Du nur CVSync benutzen willst, empfehlen wir, das cvsync-Package von den FTP-,mirrors' zu nehmen, anstatt selbst eines aus dem net/cvsync-Port zu bauen.
Für weitere Informationen über CVSync schau auf die Projekthomepage.
Um das OpenBSD-Repository mit CVSync zu spiegeln, kannst Du folgende Konfigurationsdatei benutzen:
config {
hostname anoncvs.de.openbsd.org
# If your network link is a T1 or faster, comment out the following line.
compress
collection {
name openbsd release rcs
prefix /cvs
umask 002
}
}
Das lässt cvsync alle OpenBSD-Distributionen von anoncvs.de.openbsd.org holen, mit einer umask(2), die Gruppenschreibrechte für das lokale Repository erlaubt.
Angenommen, dass die Datei als cvs-syncfile gespeichert wurde, wird das folgende Kommando benutzt, um cvsync aufzurufen
cvsync -c cvs-syncfile
Jetzt ist es einfach, eines der ge-CVSync-ten Repositorys zu aktualisieren. Für Korn-/Bourne-Shells:
# cd /usr
# CVSROOT=/cvs cvs checkout src
Für csh und ihre Verwandten:
# cd /usr
# setenv CVSROOT /cvs
# cvs checkout src
Obiges wird die allerneuesten Quellen laden. Viele von euch werden nur die Release-Quellen haben wollen, vor allem, wenn ihr euer System patchen wollt. Um das Release zu laden, musst Du mit dem Kommando ein ,tag' angeben. Zum Beispiel:
# cd /usr
# cvs checkout -rOPENBSD_3_5 src
Oder OPENBSD_3_4 für 3.4, etc.
Die folgenden CVSync-Server sind verfügbar:
Hinweis: Wenn dein Server hier mit falscher oder unvollständiger Information gelistet ist, kontaktiere bitte beck@openbsd.org oder naddy@openbsd.org
Du möchtest vielleicht traceroute(8) benutzen, um herauszufinden, welcher Server am nächsten bei dir ist. Probleme mit einem Server sollten dem Betreuer des jeweiligen Servers gemeldet werden.
Am 12. Dezember 2005 waren die Größen der CVS-Repositorys:
| openbsd-ports | - 204 MB | |
| openbsd-src | - 1369 MB | |
| openbsd-www | - 236 MB | |
| openbsd-x11 | - 200 MB | |
| openbsd-xf4 | - 531 MB | |
| openbsd-cvsroot | - 301 MB |
Die Gesamtgröße der Repositorys wächst momentan mit einer Rate von ca. 400 MB pro Jahr.
WICHTIGER HINWEIS: Es gibt ein paar Dinge im Zusammenhang mit kryptographischer Software, über die sich jeder klar sein sollte:
Die OpenBSD-Quellen sind aus Kanada. Wie von einem Kanadier herausgefunden wurde und wie in der Export-Kontrollliste von Canada beschrieben steht, ist es legal, Kryptosoftware aus Kanada in alle Welt zu exportieren.
Wenn Du jedoch außerhalb der USA oder Kanada wohnst, solltest du die kryptographischen Teile von OpenBSD nicht von einem CVSync-Server in den USA beziehen. Die betroffenen Dateien sind:
Wegen der ,USA ITAR munitions list' darf Kryptosoftware von den USA aus nur nach Kanada exportiert werden.
Das OpenBSD-Projekt ist auf der Suche nach weiteren CVSync Servern - wenn du interessiert bist, kontaktiere bitte Christian Weisgerber für Konfigurationsdetails.