version 1.137, 2017/06/26 17:18:57 |
version 1.138, 2017/10/23 10:14:17 |
|
|
<h2> |
<h2> |
<a href="index.html"> |
<a href="index.html"> |
<font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a> |
<font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a> |
<font color="#e00000">CVSync</font> |
<font color="#e00000">Source repository access: CVSync and rsync</font> |
</h2> |
</h2> |
<hr> |
<hr> |
<p> |
<p> |
|
|
<h3 id="CVSync">What Is CVSync?</h3> |
OpenBSD uses the CVS version control system. |
|
It is described in more detail <a href="anoncvs.html#CVS">here</a>. |
|
The <a href="https://man.openbsd.org/cvs">cvs(1)</a> command is used |
|
to checkout a working tree and perform standard operations (log, diff, etc). |
|
It can either contact an CVS server (in most cases this will be an OpenBSD |
|
<a href="anoncvs.html">anoncvs</a> server), or operate against a local |
|
copy of the repository. |
|
|
<b>CVSync</b> is a software package for distributing and updating source |
|
trees from a master <a href="https://man.openbsd.org/cvs">cvs(1)</a> |
|
repository on a remote server host. |
|
The OpenBSD sources are maintained in a CVS repository on a central |
|
development machine in Canada. |
|
With CVSync, OpenBSD users can easily keep their own source trees up to date. |
|
|
|
<p> |
<p> |
<b>CVSync</b> uses the so-called pull model of updating. Under the pull |
If you would like to operate a local anoncvs server, use cvs(1) commands |
model, each client asks the server for updates, if and when they are |
offline, or simply have faster access, you may use CVSync or rsync to |
wanted. The server waits passively for update requests from its clients. |
fetch a local copy of the repository. |
Thus all updates are instigated by the client. The server never sends |
|
unsolicited updates. Users must either run the <b>CVSync</b> client |
|
manually to get an update, or they must set up a |
|
<a href="https://man.openbsd.org/cron">cron(8)</a> job to run it |
|
automatically on a regular basis. |
|
|
|
<p> |
<h3 id="CVSync">What Is CVSync?</h3> |
The term <b>CVSync</b>, capitalized just so, refers to the entire software |
|
package. Its main components are the client <tt>cvsync</tt> which runs on |
|
each user's machine, and the server <tt>cvsyncd</tt> which runs at each of |
|
the OpenBSD CVSync mirror sites. |
|
|
|
|
<b>CVSync</b> is a software package specifically used for distributing |
|
and updating <a href="https://man.openbsd.org/cvs">cvs(1)</a> repositories. |
|
As it has knowledge of the file format it can operate more efficiently |
|
than a general-purpose file synchronization program, however it is not |
|
bug-free and can have problems updating at times. |
|
|
<p> |
<p> |
The OpenBSD Project currently has four main source repositories: |
The client <tt>cvsync</tt> runs on each user's machine (typically from |
|
a <a href="https://man.openbsd.org/cron">cron(8)</a> job), and fetches |
|
from a server running <tt>cvsyncd</tt>. |
|
|
<ul> |
|
<li><b>src</b> - Houses all source code for the OpenBSD Operating System.</li> |
|
<li><b>ports</b> - Houses the <a href="faq/ports/index.html">OpenBSD Ports</a>.</li> |
|
<li><b>www</b> - Houses all OpenBSD web pages (including this one).</li> |
|
<li><b>xenocara</b> - Houses OpenBSD's active X.org v7 source tree. |
|
</ul> |
|
|
|
<h3 id="CVS">What Is CVS?</h3> |
|
|
|
CVS is the source code control system used to manage the OpenBSD source |
|
tree. It is described in more detail <a href="anoncvs.html#CVS">here</a>. |
|
Note that CVS and CVSync are entirely different programs. Although |
|
CVS can be used for remote file access, it is not optimized for |
|
wholesale source tree distribution over the net, and CVSync can be |
|
easily an order of magnitude more efficient for this task. |
|
|
|
<h3 id="starting">Getting Started Using CVSync</h3> |
<h3 id="starting">Getting Started Using CVSync</h3> |
|
|
If you only care about running CVSync, it is recommended that you |
|
download the cvsync package from the <a href="ftp.html">ftp mirror |
|
sites</a> instead of building your own from the <tt>net/cvsync</tt> |
|
port. |
|
|
|
<p> |
<p> |
For further information about CVSync, see the |
CVS is part of OpenBSD's base system. |
<a href="http://www.cvsync.org/">project homepage</a>. |
CVSync is an entirely different program and can be installed from |
However, don't build your own copy from unmodified upstream source - |
packages: |
|
|
|
<pre> |
|
<b>pkg_add cvsync</b> |
|
</pre> |
|
|
|
Do not build your own copy from unmodified upstream source - |
the port/package has been modified to support commitid which is now |
the port/package has been modified to support commitid which is now |
used in the OpenBSD repository. |
used in the OpenBSD repository. |
|
|
|
|
</pre> |
</pre> |
|
|
<p> |
<p> |
This directs cvsync to refresh all OpenBSD distributions from |
This directs cvsync to fetch or refresh all OpenBSD distributions from |
<b>anoncvs.eu.openbsd.org</b> with a |
<b>anoncvs.eu.openbsd.org</b> with a |
<a href="https://man.openbsd.org/umask">umask(2)</a> that permits group write |
<a href="https://man.openbsd.org/umask">umask(2)</a> that permits group write |
permission to the local repository. |
permission to the local repository. |
|
The local copy of the files are stored in <tt>/cvs</tt>. |
|
|
<p> |
<p> |
Assuming this file is saved as <tt>cvs-syncfile</tt>, the |
Assuming this file is saved as <tt>cvs-syncfile</tt>, the |
|
|
<b>cvsync -c cvs-syncfile</b> |
<b>cvsync -c cvs-syncfile</b> |
</pre> |
</pre> |
|
|
|
<h3 id="rsync">Getting Started Using Rsync</h3> |
|
|
|
Some repository mirrors offer access via rsync, a general-purpose |
|
file synchronization program. |
|
Again this should be installed from packages. |
|
Two flavours are available: |
|
|
|
<pre> |
|
<b># pkg_add rsync</b> |
|
Ambiguous: choose package for rsync |
|
a 0: <None> |
|
1: rsync-3.1.2p0 |
|
2: rsync-3.1.2p0-iconv |
|
Your choice: |
|
</pre> |
|
|
|
Unless you have other requirements, simply install the standard version |
|
(option 1 on the list above). |
|
You can select the flavour on the command-line to avoid |
|
<a href="//man.openbsd.org/pkg_add">pkg_add(1)</a> prompting for the |
|
version like so: |
|
<pre> |
|
<b>pkg_add rsync--</b> |
|
</pre> |
|
|
|
In order to mirror the OpenBSD repository with rsync, |
|
the following command line might be used: |
|
|
|
<pre> |
|
<b>rsync -avz --delete rsync://obsdacvs.cs.toronto.edu/obsdcvs/ /cvs/</b> |
|
</pre> |
|
|
<h3 id="using">Using CVS to Work With Your Repository</h3> |
<h3 id="using">Using CVS to Work With Your Repository</h3> |
|
|
Now that you have a local copy of the CVS repository, it is now simple |
Now that you have a local copy of the CVS repository, it is now simple |
|
|
<a href="https://man.openbsd.org/cvs">cvs(1)</a> |
<a href="https://man.openbsd.org/cvs">cvs(1)</a> |
man page. |
man page. |
|
|
<h3 id="CVSROOT">Available CVSync Servers</h3> |
<h3 id="CVSROOT">Available Repository Servers</h3> |
|
|
The following CVSync servers are available: |
The following CVSync and rsync repository servers are available: |
|
|
<ul> |
<ul> |
<li><strong>anoncvs.comstyle.com</strong><br> |
<li><strong>anoncvs.comstyle.com</strong><br> |
|
|
Updated hourly.<br> |
Updated hourly.<br> |
<p> |
<p> |
<li><strong>obsdacvs.cs.toronto.edu</strong><br> |
<li><strong>obsdacvs.cs.toronto.edu</strong><br> |
|
<strong>rsync://obsdacvs.cs.toronto.edu/obsdcvs/</strong><br> |
Location: University of Toronto, Toronto, ON, Canada.<br> |
Location: University of Toronto, Toronto, ON, Canada.<br> |
Maintained by <a href="mailto:nick@holland-consulting.net">Nick Holland</a>.<br> |
Maintained by <a href="mailto:nick@holland-consulting.net">Nick Holland</a>.<br> |
Updated every 2 hours.<br> |
Updated every 2 hours.<br> |
<p> |
<p> |
<li><strong>anoncvs.fr.openbsd.org</strong><br> |
<li><strong>anoncvs.fr.openbsd.org</strong><br> |
|
<strong>rsync://anoncvs.fr.openbsd.org/openbsd-cvs/</strong><br> |
Location: Paris, France.<br> |
Location: Paris, France.<br> |
Maintained by <a href="mailto:openbsd-mirror@bsdfrog.org">Landry Breuil, Antoine Jacoutot</a>.<br> |
Maintained by <a href="mailto:openbsd-mirror@bsdfrog.org">Landry Breuil, Antoine Jacoutot</a>.<br> |
Updated every 2 hours from anoncvs1.ca.openbsd.org.<br> |
Updated every 2 hours from anoncvs1.ca.openbsd.org.<br> |
<p> |
<p> |
<li><a href="http://mirror.osn.de/"><strong>mirror.osn.de</strong></a><br> |
<li><a href="https://mirror.osn.de/"><strong>mirror.osn.de</strong></a><br> |
|
<strong>rsync://mirror.osn.de/openbsd-all/</strong><br> |
Location: Nürnberg, Germany.<br> |
Location: Nürnberg, Germany.<br> |
Maintained by <a href="mailto:aw@osn.de">Armin Wolfermann</a>.<br> |
Maintained by <a href="mailto:aw@osn.de">Armin Wolfermann</a>.<br> |
Updated every 3 hours.<br> |
Updated every 3 hours.<br> |
<p> |
<p> |
<li><strong>ftp.hostserver.de</strong><br> |
<li><strong>ftp.hostserver.de</strong><br> |
|
<strong>rsync://ftp.hostserver.de/cvsync/</strong><br> |
Location: Frankfurt, Germany.<br> |
Location: Frankfurt, Germany.<br> |
Maintained by <a href="mailto:mirror@hostserver.de">Sebastian Benoit, Peter Hessler</a>.<br> |
Maintained by <a href="mailto:mirror@hostserver.de">Sebastian Benoit, Peter Hessler</a>.<br> |
Updated hourly from anoncvs1.ca.openbsd.org.<br> |
Updated hourly from anoncvs1.ca.openbsd.org.<br> |
|
|
Maintained by <a href="mailto:hrs@allbsd.org">Hiroki Sato</a>.<br> |
Maintained by <a href="mailto:hrs@allbsd.org">Hiroki Sato</a>.<br> |
<p> |
<p> |
<li><strong>anoncvs.eu.openbsd.org</strong><br> |
<li><strong>anoncvs.eu.openbsd.org</strong><br> |
|
<strong>rsync://anoncvs.eu.openbsd.org/OpenBSD-cvs/</strong><br> |
Location: Stockholm University, Stockholm, Sweden.<br> |
Location: Stockholm University, Stockholm, Sweden.<br> |
Maintained by <a href="mailto:jj@openbsd.org, ftp@it.su.se">Janne Johansson</a>.<br> |
Maintained by <a href="mailto:jj@deadzoft.org">Janne Johansson</a>.<br> |
Updated every 2 hours.<br> |
Updated every 2 hours.<br> |
<p> |
<p> |
<li><strong>anoncvs.spacehopper.org</strong><br> |
<li><strong>anoncvs.spacehopper.org</strong><br> |
|
<strong>rsync://anoncvs.spacehopper.org/OpenBSD-CVS/</strong><br> |
Location: London, United Kingdom.<br> |
Location: London, United Kingdom.<br> |
Maintained by <a href="mailto:sthen@openbsd.org">Stuart Henderson</a>.<br> |
Maintained by <a href="mailto:sthen@openbsd.org">Stuart Henderson</a>.<br> |
Updated hourly from anoncvs.ca.openbsd.org.<br> |
Updated hourly from anoncvs.ca.openbsd.org.<br> |
|
|
Updated hourly.<br> |
Updated hourly.<br> |
<p> |
<p> |
<li><strong>anoncvs4.usa.openbsd.org</strong><br> |
<li><strong>anoncvs4.usa.openbsd.org</strong><br> |
Host also known as <strong>anoncvs4.usa.openbsd.org</strong>.<br> |
|
Location: New York Internet, New York, NY, USA.<br> |
Location: New York Internet, New York, NY, USA.<br> |
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br> |
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br> |
Updated hourly.<br> |
Updated hourly.<br> |
<p> |
<p> |
<li><strong>anoncvs2.usa.openbsd.org</strong><br> |
<li><strong>anoncvs2.usa.openbsd.org</strong><br> |
Host also known as <strong>anoncvs2.usa.openbsd.org, openbsd.se.rit.edu</strong>.<br> |
Host also known as <strong>openbsd.se.rit.edu</strong>.<br> |
Location: Rochester Institute of Technology, Rochester, NY, USA.<br> |
Location: Rochester Institute of Technology, Rochester, NY, USA.<br> |
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br> |
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br> |
Updated hourly.<br> |
Updated hourly.<br> |
<p> |
<p> |
<li><strong>anoncvs1.usa.openbsd.org</strong><br> |
<li><strong>anoncvs1.usa.openbsd.org</strong><br> |
Host also known as <strong>anoncvs.usa.openbsd.org, anoncvs1.usa.openbsd.org</strong>.<br> |
Host also known as <strong>anoncvs.usa.openbsd.org</strong>.<br> |
Location: Network Media, LLC, Bend, OR, USA.<br> |
Location: Network Media, LLC, Bend, OR, USA.<br> |
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br> |
Maintained by <a href="mailto:millert@openbsd.org">Todd C. Miller</a>.<br> |
Updated hourly.<br> |
Updated hourly.<br> |
|
|
|
|
<em>Note:</em> If your server is listed on here with inaccurate or |
<em>Note:</em> If your server is listed on here with inaccurate or |
unknown information, please contact <a |
unknown information, please contact <a |
href="mailto:beck@openbsd.org"><tt>beck@openbsd.org</tt></a> |
href="mailto:mirrors-discuss@openbsd.org"><tt>mirrors-discuss@openbsd.org</tt></a> |
|
|
<p> |
<p> |
You may want to use <a href="https://man.openbsd.org/traceroute">traceroute(8)</a> |
You may want to use <a href="https://man.openbsd.org/traceroute">traceroute(8)</a> |