CVS服务器的安装: 1。查看你的操作系统上是否安装了CVS: #> rpm -qa|grep cvs 如果没有安装你可以在Redhat 第2张光盘上找到,另外你也可以在网上下载到最新的rpm包。很容易找,其实不存在什么linux版本。 2。建立cvs用户组: #> groupadd cvs 3。建立cvs组的cvsroot用户和所属的目录: #> useradd -g cvs -G cvs –d /cvsroot cvsroot 4。为cvsroot用户添加密码: #> passwd cvsroot 5。改变 /cvsroot/ 的目录属性: #> chmod –R 770 /cvsroot 6。改变用户登陆身份: #> su cvsroot 7。开始创建单个项目: #> cd /cvsroot #> mkdir project1 #>mkdir project2 8。开始建立仓库: #> cvs –d /cvsroot/project1 init #> cvs –d /cvsroot/project2 init #> chmod –R 770 ./project1/ ./project2/ 9。建立CVS服务启动文件,我们使用xinetd方式: #> [Crtl]+[d] 切换到root用户身份 #> cd /etc/xinetd.d #> vi cvspserver service cvspserver { disable = no flags = REUSE socket_type = stream wait = no user = root server= /usr/bin/cvs server_args= -f --allow-root=/home2/cvsroot/project1 --allow-root=/home2/cvsroot/project2 pserver log_on_failure += USERID } 注:由于xinetd的server_args长度限制,当你想运行很多的单个仓库的时候,可以这么做: #> vi cvspserver service cvspserver { disable = no flags = REUSE socket_type = stream wait = no user = root server = /cvsroot/cvs.run log_on_failure += USERID } 编写cvs.run脚本 #> vi /cvsroot/cvs.run #!/bin/bash /usr/bin/cvs -f --allow-root=/cvsroot/project1 --allow-root=/cvsroot/project2 pserver #>chmod +x /cvsroot/cvs.run 10。加入cvs服务: #>vi /etc/services cvspserver 2401/tcp #pserver cvs service cvspserver 2401/udp #pserver cvs service 11。启动cvs服务: #> /etc/init.d/xinetd restart 12。检查cvspserver服务是否已经启动: #> netstat -l |grep cvspserver 应该有如下结果: tcp 0 0 *:cvspserver *:* LISTEN 二。CVS服务的用户管理: 上面我们已经建立了project1和project2两个CVS仓库,下面我们分别给两个仓库建立cvs用户。 13。创建可以登陆cvs服务器的用户名和密码: #> su cvsroot #> vi /cvsroot/project1/CVSROOT/passwd trotter:*****:cvsroot mimi:*****:cvsroot #>vi /cvsroot/project2/CVSROOT/passwd trotter:*****:cvsroot gary:*****:cvsroot 这两个文件的意思是有trotter,mimi,gary三个cvs用户,mimi拥有project1的使用权限,gary拥有project2的使用权限,trotter拥有project1和project2的使用权限。登陆后的权限是cvsroot权限。 注意:这里的cvs用户和系统用户是不同的。 14。*****为密码,由以下文件生成: #> vi /cvsroot/passwd.pl #!/usr/bin/perl srand (time()); my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))"; my $salt = sprintf ("%c%c", eval $randletter, eval $randletter); my $plaintext = shift; my $crypttext = crypt ($plaintext, $salt); print "${crypttext} "; #>chmod a+x /cvsroot/passwd.pl 15。如果你想生成一个密码是“123456”,则: #> /cvsroot/passwd.pl “123456” 回车即可得到加密密码,用其替换passwd文件中的***** 16。Ok,cvs现在已经全部安装完成了,如果你想让一个用户拥有project1的权限,你就在/cvsroot/project1/CVSROOT/passwd中给他加入一个用户;如果你想让一个用户同时具有project1和project2的权限,你就给/cvsroot/project1/CVSROOT/passwd和/cvsroot/project2/CVSROOT/passwd里给他加一个用户名和密码相同的用户即可。最后,我们试用一下: #> cvs -d :pserver:[email protected]:/cvsroot/project1 login 敲入命令回车后提示输入trotter的密码,你按照自己设置的密码输入,如果没有什么错误信息出现就是成功了(我的机器IP地址是192.168.1.200) ***另外,感谢我所参考过的文章的所有作者*** 
|