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äuft.
CVSync ist dazu bestimmt, gleichzeitig schneller und flexibler als sup(1) und CVSup zu sein.
Das OpenBSD-Projekt besitzt derzeit sechs 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 cvsync.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 cvsync.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
Mit dieser lokalen Kopie des CVS-Repositorys ist es nun einfach, ein Checkout, Update oder andere CVS-Operationen durchzuführen, die du sonst auf einem Repository eines anderen Systems durchführen würdest - jetzt aber lokal.
cvs -d/cvs checkout src -P
cvs -d/cvs up -Pd
cvs -d/cvs diff -u file.c
Weitere Details zu den CVS-Operationen befinden sich in
FAQ5, Den passenden Quelltext
runterladen und in der Manualseite für cvs(1).
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.
Januar 2008 waren die Größen der CVS-Repositorys:
| openbsd-ports | - 310 MB | |
| openbsd-src | - 1500 MB | |
| openbsd-www | - 350 MB | |
| openbsd-xenocara | - 600MB | |
| openbsd-x11 | - 200 MB | |
| openbsd-xf4 | - 564 MB | |
| openbsd-cvsroot | - 408 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.