在RH9上面搭建cvs服务器(pserver)

王朝other·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

一 CVS服务器的安装:

1。查看你的操作系统上是否安装了CVS:

#> rpm -qa|grep cvs

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 (DIY)

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搭建好了之后它直接读取Linux登陆用户管理权限,为了让用户能够正常的check out必须增加用户的附加组“usermod -G cvs xxxx”xxxx即是用户名称

二。CVS服务的用户管理:

上面我们已经建立了project1和project2两个CVS仓库,下面我们分别给两个仓库建立cvs用户。

13。创建可以登陆cvs服务器的用户名和密码:

#> su cvsroot

#> vi /cvsroot/project1/CVSROOT/passwd (DIY)

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:trotter@192.168.1.200:/cvsroot/project1 login

敲入命令回车后提示输入trotter的密码,你按照自己设置的密码输入,如果没有什么错误信息出现就是成功了(我的机器IP地址是192.168.1.200)

***另外,感谢我所参考过的文章的所有作者***

一 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}

";d

#>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:trotter@192.168.1.200:/cvsroot/project1 login

敲入命令回车后提示输入trotter的密码,你按照自己设置的密码输入,如果没有什么错误信息出现就是成功了(我的机器IP地址是192.168.1.200)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航