Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 04 Jul 2004 15:04:41 -0400
From:      Tom Parquette <tparquet@twcny.rr.com>
To:        Lonnie Santella <lonniesantella@hotmail.com>
Cc:        FreeBSD-questions@freebsd.org
Subject:   Re: CVSUP Mirror
Message-ID:  <40E854C9.8050808@twcny.rr.com>
In-Reply-To: <BAY15-F27EKRuYDlrjb0004a551@hotmail.com>
References:  <BAY15-F27EKRuYDlrjb0004a551@hotmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Lonnie Santella wrote:
> This all checks out correctly. I'm basically using almost entirely 
> defaults here. My supfile on my mirror server looks identical to yours.
> 
> This is driving me crazy.
> 
> The one thing I wonder is, how does my cvsup mirror server know how to 
> "share" it's full ports tree?  None of the config files I see mention 
> anything about "ports". During the initial "make" of the cvsup-mirror, I 
> chose NOT to mirror the src, www, gnats - and nothing was mentioned 
> about "ports". I'm confused.
> 
> Why is it, if this was built from ports, and I ran the full "make" and 
> "make install" with no errors, that this thing won't work? I thought 
> that was why we install from ports...
> 
> Did you have to configure something else specifically to allow your 
> ports collection to be shared via the cvsupd daemon?
> 
> 
> 
OK,
I'm trying to recreate what you have as I'm typing this reply.
This is the results of make in /usr/ports/net/cvsup-mirror:

Stargate# make
===>  Configuring for cvsup-mirror-1.3_2
I am going to ask you a few questions so that I can set up your
FreeBSD mirror configuration.  Every question has a [default]
answer.  To accept the default, just press ENTER.

At this point, I am just gathering information.  I will not touch
your system until you type "make install".

Master site for your updates [cvsup-master.freebsd.org]? 192.168.0.20
How many hours between updates of your files [1]?

Now you must decide which sets of files you wish to make available
from your mirror site.  You can choose any combination, and you
can put each set anywhere you want to on your disks.  Although each
set is optional, we strongly encourage every mirror site to carry
at least the main source repository.

Do you wish to mirror the main source repository [y]? n
Do you wish to mirror the installed World Wide Web data [y]? n
Do you wish to mirror the GNATS bug tracking database [y]? n
Do you wish to mirror the mailing list archive [y]? n

Now, a few questions so that I can set up your CVSup server properly.

For security reasons, both the CVSup client and server should run
under their own unique user and group IDs.  These IDs should have no
special access privileges.  Normally, the user:group "cvsupin:cvsupin"
is used for the client and "cvsup:cvsup" is used for the server, but
you can choose other names if you wish.  At "make install" time, I
will create the users and groups, if they don't already exist.

Use unique user and group IDs for these.  Do not use "nobody",
"nonroot", or "nogroup".

Unique unprivileged user ID for running the client [cvsupin]?
Unique unprivileged group ID for running the client [cvsupin]?
Unique unprivileged user ID for running the server [cvsup]?
Unique unprivileged group ID for running the server [cvsup]?

The CVSup server does its logging via syslog.  At "make install"
time, I will set up the logging for you, if necessary.  I will use
the "!program" feature of syslog to keep your CVSup log messages
separate from the messages of your other daemons.

Syslog facility for the server log [daemon]?

You can control the load on your machine by limiting the number of
clients that the CVSup server will serve at once.  CVSup won't load
your network especially heavily, but it is more CPU and disk
intensive than most other file server software.

Maximum simultaneous client connections [8]?

Building the "config.sh" file ... Done.
Building the "cvsupd.access" file ... Done.
Stargate#

I doubt this is a problem but we are being thurogo:
Stargate# more /usr/ports/net/cvsup-mirror/work/cvsupd.access
-0.0.0.0/0      8       # Limit total connections
-0.0.0.0/0/32   1       # Allow only 1 connection from each host
+0.0.0.0/0              # If we reach this rule, we let the client in
Stargate#

I'm a little more suspicious of the distribs= value here (because I do 
not completely understand how it works):
Stargate# more /usr/ports/net/cvsup-mirror/work/config.sh
user="cvsup"
group="cvsup"
cuser="cvsupin"
cgroup="cvsupin"
host="192.168.0.20"
interval="1"
maxclients="8"
facility="daemon"
distribs="distrib.self .. . FreeBSD.cvs SKIP . FreeBSD-www.current SKIP 
. FreeBSD-gnats.current SKIP gnats FreeBSD-mail.current SKIP ."
Stargate#

Here's my make install:
Stargate# make install
===>  Installing for cvsup-mirror-1.3_2
===>   cvsup-mirror-1.3_2 depends on file: /usr/local/sbin/cvsupd - found
===>   Generating temporary packing list
===>  Checking if net/cvsup-mirror already installed
Installing files

You need a group "cvsup".
Would you like me to create it [y]? y
Done.
You need a user "cvsup".
Would you like me to create it [y]? y
Done.
You need a group "cvsupin".
Would you like me to create it [y]? y
Done.
You need a user "cvsupin".
Would you like me to create it [y]? y
Done.
Fixing ownerships and modes in "/usr/local/etc/cvsup".
Setting up links and directories for distributions.
   Linking distrib.self -> ..
   Linking FreeBSD.cvs -> SKIP
   Linking FreeBSD-www.current -> SKIP
   Linking FreeBSD-gnats.current -> SKIP
   Linking FreeBSD-mail.current -> SKIP

Would you like me to set up the syslog logging [y]? y
Setting up server logging in "/etc/syslog.conf".
Creating "/var/log/cvsupd.log".
Giving syslogd a kick in the pants.
Adding cvsupd log entry to "/etc/newsyslog.conf".
Done.

Would you like me to set up your crontab for hourly updates [y]? n
OK, please remember to do it yourself.  The crontab entry should run
"/usr/local/etc/cvsup/update.sh" as root.

You are now a FreeBSD mirror site.
===>   Registering installation for cvsup-mirror-1.3_2
Stargate#

I looked at the /var/log/cvsup and cvsupd.log and found:
CVSup update begins at 2004-07-04 14:41:30
Updating from 192.168.0.20
Connected to 192.168.0.20
Skipping collection cvs-all/cvs
Skipping collection gnats/current
Skipping collection www/current
Skipping collection mail-archive/current
Updating collection distrib/self
...I'm leaving some stuff out here due to its length...
This indicates to me that I was NOT mirroring the cvsup site.

When I ran the cvsup I got:
Stargate# cvsup -g -h localhost cvsupfile.ports-editors
Connected to localhost
Server message: Collection "ports-editors" release "cvs" is not 
available here
Skipping collection ports-editors/cvs
Finished successfully
Stargate#
Which I believe is what you are seeing.

I have not researched this further but I believe you have to mirror 
FreeBSD.cvs (at a minimum) to get what you are looking for.

Hope this helps.
Cheers...




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40E854C9.8050808>