source: server/other/cvsserver/cvsserver-inst.xml@ 7319b78

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.0 6.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb v1_0 v5_0 v5_0-pre1 v5_1 v5_1-pre1 xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 7319b78 was 7319b78, checked in by Billy O 'Connor <billyoc@…>, 21 years ago

<screen> formatting fixes.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@645 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 3.9 KB
Line 
1<sect2>
2<title>Setting up a CVS server.</title>
3
4<para>We will discuss setting up a CVS server using OpenSSH as the
5remote access method. Other access methods, including :pserver: and
6:server: will not be used for write access to the CVS repository. The
7:pserver: method sends clear text passwords over the network and the
8:server: method is not supported in all CVS ports. Instructions for
9anonymous, read only CVS access using :pserver: can be found at the
10end of this section.</para>
11
12<para>Configuration of our CVS server consists of four steps:</para>
13
14<sect3><title>1. Create a repository.</title>
15<para>Create a new CVS repository with the following commands,
16logged in as root:</para>
17<para><screen><userinput>mkdir /cvsroot &amp;&amp;
18chmod 1777 /cvsroot &amp;&amp;
19export CVSROOT=/cvsroot
20cvs init</userinput></screen></para></sect3>
21
22<sect3><title>2. Import source code into the repository.</title>
23<para>Import a source module into the repository with the following
24commands, issued from a user account on the same machine as the CVS
25repository:</para>
26
27<para><screen><userinput>export CVSROOT=/cvsroot &amp;&amp;
28cd sourcedir &amp;&amp;
29cvs import -m "repository test" cvstest vendortag releasetag</userinput></screen></para></sect3>
30
31<sect3><title>3. Verify local repository access.</title>
32<para>Test access to the CVS repository from the same user account
33with the following command:</para>
34
35<para><screen><userinput>cvs co cvstest</userinput></screen></para></sect3>
36
37<sect3><title>4. Verify remote repository access.</title>
38<para>Test access to the CVS repository from a remote machine using a
39user account that has ssh access to the CVS server with the following
40commands:
41<note><para>Replace "servername" with the IP address or host name
42ofthe CVS repository machine. You will be prompted for the user's
43shellaccount password before CVS checkout can
44continue.</para></note></para>
45
46
47<para><screen><userinput>export CVS_RSH=/usr/bin/ssh &amp;&amp;
48cvs -d:ext:servername:/cvsroot co cvstest</userinput></screen></para></sect3>
49</sect2>
50<sect2>
51<title>Configuring CVS for anonymous read only access.</title>
52
53<para>CVS can be set up to allow anonymous read only access using the
54:pserver: method by logging on as root and executing the following
55commands:</para>
56
57<para><screen><userinput>(grep anonymous /etc/passwd || useradd anonymous -s /bin/false) &amp;&amp;
58echo anonymous: > /cvsroot/CVSROOT/passwd &amp;&amp;
59echo anonymous > /cvsroot/CVSROOT/readers</userinput></screen></para>
60
61<para>If you use inetd, the following command will add the pserver
62entry to /etc/inetd.conf:</para>
63
64<para><screen><userinput>echo "2401 stream tcp nowait root /usr/bin/cvs cvs -f \
65 --allow-root=/cvsroot pserver" &gt;&gt; /etc/inetd.conf</userinput></screen></para>
66
67<para>Issue a killall -HUP inetd to reread the changed inetd.conf
68file.</para>
69
70<para>If you use xinetd, the following command will add the pserver
71entry to /etc/xinetd.conf:</para>
72
73<para><screen><userinput>cat &gt;&gt; /etc/xinetd.conf &lt;&lt; "EOF"
74 service cvspserver
75 {
76 port = 2401
77 socket_type = stream
78 protocol = tcp
79 wait = no
80 user = root
81 passenv = PATH
82 server = /usr/bin/cvs
83 server_args = -f --allow-root=/cvsroot pserver
84 }
85EOF</userinput></screen></para>
86<para>Issue a killall -HUP xinetd to reread the changed xinetd.conf
87file.</para>
88
89<para>Testing anonymous access to the new repository requires an account
90on another machine that can reach the CVS server via network. No
91account on the CVS repository is needed. To test anonymous access to
92the CVS repository log in to another machine as an unprivileged user
93and execute the following command:</para>
94
95<para><screen><userinput>cvs -d:pserver:anonymous@servername:/cvsroot co cvstest</userinput></screen><note><para>Replace "servername" with the IP
96address or hostname of the CVS server</para></note></para>
97
98</sect2>
99
100
Note: See TracBrowser for help on using the repository browser.