Suppose our cvsroot in / OPT / CVS
Find the original code www.cvshome.org download back
Decompression
$ Gunzip CVS-1-11.Tar.gz
$ TAR XVF CVS-1-11.tar
Will return to generate a directory called CVS-1.11, enter the catalog compilation,
$ CD CVS-1.11
$. / configure --Prefix = / usr / local / cvs
(--prefix parameters are specified installation directory, I believe everyone should know)
$ Make
$ su root
#make install
Add / usr / local / cvs / bin to the PATH environment variable.
Enter the cvs -version test. The correct version will display the version number of the CVS.
After the operation is completed, the software part of the CVS server needs to be installed, and some settings will be made
Create user groups and user accounts
Create group
GroupAdd Group1
GroupAdd Group2
GroupAdd Group3
GroupAdd Test
GroupAdd Cvsadmin (Administrator)
Establish a user
UserAdd -m -g cvsadmin -g gid -d / export / home / cvsadmin -s / bin / bash cvsadmin
Passwd cvsadmin
Enter the password of cvsadmin
The same method creates other users
Create a folder in / OPT / CVS /
Mkdir Group1 Group2 Group3 Test Undercontral (Control Library)
Initialize the CVS server, the CVS will create the system files used in the initialization process, and write to the original content.
#CVS -D / OPT / CVS / Group1 INIT
#CVS -D / OPT / CVS / Group2 Init
#CVS -D / OPT / CVS / Group3 Init
#CVS -D / OPT / CVS / TEST INIT
#CVS -D / OPT / CVS / UnderContral Init
View / OPT / CVS / Group1, / OPT / CVS / Group2, / OPT / CVS / Group3, / OPT / CVS / TEST, / OPT / CVS / UnderContral directory, each folder generates a cvsroot folder, and There are many system files below the directory.
Edit / etc / services files and join:
#vi / etc / services
CVSPSERVER 2401 / TCP #CVS Server TCP Port
CVSPSERVER 2401 / UDP #CVS Server UDP Port
Edit the /etc/inetd.conf file and join:
#vi /etc/inetd.conf
CVSPSERVER STREAM TCP NOWAIT ROOT / USR / LOCAL / CVS / BIN / CVS CVS -F - Allow-Root = / OPT / CVS / Group1 - Allow-Root = / OPT / CVS / Group2 - Allow-root = / OPT / cvs group3 - alolow-root = / opt / cvs / test - allow-root = / opt / cvs / undercontral pserver
From the newly launched inetd process
#ps -ef | grep inetd (Check INetd process number)
#kill -1 inetd process number
Telnet Localhost 2401
If a cursor flashing input OK carries?
[Bash-2.03] root @ Solaris: / Data / Project> Telnet localhost 2401
Trying 127.0.0.1 ...
Connected to Localhost.
Escape Character is '^]'. OK Enter
CVS [PServer Aborted]: Bad Auth Protocol Start: OK
Then the CVS server is running normally.
authority management
Enter / OPT directory
Chgrp Sys -R CVS
CHMOD -R 755 CVS
Enter / OPT / CVS directory
Chgrp -r group1 group1 group1
Chgrp -r group2 group2
Chgrp -r group3 group3
Chgrp -r test test
Chgrp -r cvsadmin undercontral
CHMOD -R 770 Group1 Group2 Group3 Test Undercontral
Edit / ETC / Group
Add a cvsadmin or other administrator account (for example: kilven) to cvsadmin group1 group2 group3 test five groups
Cvsadmin :: 102: Cvsadmin, Kilven
Group1 :: 104: Cvsadmin, Kilven
Test :: 105: Cvsadmin, Kilven
Group2 :: 106: CVSADMIN, KILVEN
Group3 :: 107: Cvsadmin, Kilven
At this point, you will find that you can access all warehouses in addition to CvsAdmin and Kilven, others can only access the CVS resources of their own group.
Author Blog:
http://blog.9cbs.net/kilvenstone/