Everything is a contribution

走过Java的点点滴滴,与大家共勉~
随笔 - 21, 文章 - 0, 评论 - 10, 引用 - 0
数据加载中……

Linux上CVS服务器的搭建

在Linux7.3、Linux9以及Linux ES3上直接内置了cvs,以下主要是需要配置服务器端:
1)  查看是否安装cvs
#rpm -qa | grep cvs
注:一般安装在/usr/bin/cvs,如果未安装到www.cvshome.org下载一个最新的rpm安装即可

2)  建立cvs用户组,便于管理cvs用户
#groupadd cvs

3)  建立cvs组的cvsroot用户和所属的目录
#useradd -g cvs -G cvs -d /home/cvsroot cvsroot

4)  为cvsroot用户添加密码
#passwd cvsroot

5)  改变/home/cvsroot的目录属性
#chmod 775 /home/cvsroot

6)  初始化cvs源代码库,此操作生成目录/home/cvsroot/CVSROOT,其下为一些初始化文件
#cvs -d /home/cvsroot init

7)  创建可以登陆cvs服务的用户及密码,需要创建文件passwd
#vi /home/cvsroot/CVSROOT/passwd
weiqiong:xxxxxx:cvsroot
chenxu:xxxxxx:cvsroot

此文件的意思是weiqiong和chenxu两个用户可以登陆cvs服务器,登陆后其权限为用户cvsroot的权限
注:cvs用户和服务器用户是可以不一样的

8)  xxxxxx为密码,由以下文件生成:
#vi /home/cvsroot/passwdgen.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}\n";

将文件的属性修改为可以执行: chmod 755 passwdgen.pl

9)  如果需要密码为:test,则敲入:
#./passwdgen.pl "test"
回车即可得到加密密码,用其替换passwd文件中的xxxxxx

10)  加入cvs服务(如果缺省有cvs服务,就可以不用加)
#vi /etc/services
cvspserver 2401/tcp #pserver cvs service
cvspserver 2401/udp #pserver cvs service

11)  使用的是xinetd方式,所以在xinetd.d目录下添加需要启动的服务:
#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=/home/cvsroot pserver
  log_on_failure += USERID
}

注:如果有多个repository的话,按照下面的方式修改:
server_args = -f --allow-root=/home/cvsroot --allow-root=/home/ncrroot pserver
然后添加对应的用户ncrroot,让该用户的根是/home/ncrroot
passwd的最后为新建的用户名ncrroot

12)  重新启动xinetd:
#/etc/rc.d/init.d/xinetd restart

13)  检查cvspserver服务是否已经启动
#netstat -l | grep cvspserver
tcp 0 0 *:cvspserver *:* LISTEN

14)  测试:
cvs -d :pserver:xiajx@192.168.100.92:/home/cvsroot login
敲入命令回车后提示输入xiajx的密码,你按照自己设置的密码输入
如果没有什么错误信息出现就是成功了(我的机器IP地址是192.168.100.92,也可以用localhost).

PS:如果是迁移原有cvs的repository的话,只需要将原有的repository整个拷贝到/home/cvsroot中即可.

posted on 2006-03-13 17:48 Kevin Xia 阅读(1934) 评论(1)  编辑  收藏 所属分类: 开源技术

评论

# re: Linux上CVS服务器的搭建  回复  更多评论   

13) 检查cvspserver服务是否已经启动

无显示
2006-10-17 12:01 | 李 里

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问