CVS服务器配置过程及排错

由于开发需要配置一台CVS服务器进行版本管理,我的配置如下:

1.查看是否安装cvs
[root@localhost /]# rpm -qa|grep cvs
cvs-1.11.22-5.el5                           

redhat as5.0 自带了CVS,如果未安装,到www.cvshome.org下载一个最新的rpm安装即可
rpm -ivh cvs-1.11.2-10.i386.rpm

2.建立cvs用户组,便于管理cvs用户
[root@localhost /]#groupadd cvs

3.建立cvs组的cvsroot用户和所属的目录
[root@localhost /]#useradd -g cvs -G cvs -d /home/cvsroot cvsroot

4.为cvsroot用户添加密码
[root@localhost /]#passwd cvsroot

5.改变/home/cvsroot的目录属性
[root@localhost /]#chmod 771 /home/cvsroot

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

7.配置xinetd,用xinetd来启动CVS服务器
[root@localhost /]# vi /etc/xinetd.d/cvs

service cvspserver
{
        disable                 = no
        port                    = 2401
        socket_type             = stream
        protocol                = tcp
        wait                    = no
        user                    = root
        passenv                 = PATH
        server                  = /usr/bin/cvs
        env                     = HOME=/home/cvsroot
        server_args             = -f --allow-root=/home/cvsroot pserver
#       bind                    = 127.0.0.1
}

默认是以pserver默契连接,也可以选择 ssh等,修改为   
server_args             = -f --allow-root=/home/cvsroot SSH

-f --allow-root=/home/cvsroot 为刚才初始化的目录

8.重新启动inetd或者xinetd:
[root@localhost /]#/etc/init.d/xinetd restart

10.检查cvspserver服务是否已经启动
[root@localhost /]# netstat -l |grep cvspserver
tcp      0    0 *:cvspserver      *:*         LISTEN  

11.测试:
[root@localhost /]#cvs -d :pserver:cvsroot@192.168.0.89:/home/cvsroot login

敲入命令回车后提示输入liuyw的密码,你按照自己设置的密码输入,如果没有什么错误信息出现就是成功了

我的遇到的几个问题
无法重启xinetd.d

[root@localhost /]# /etc/rc.d/init.d/xinetd restart
-bash: /etc/rc.d/init.d/xinetd: No such file or directory

每次只能重启服务器,重启服务器后,查看进程和端口都没有监听

后来发现是由于redhat as5.0 默认是没有装xinetd的,在第二张光盘,挂在后 rpm -ivh xine*.rpm 就重启xinetd,进程和端口也在监听了。

[root@localhost /]# netstat -l |grep cvspserver
tcp      0    0 *:cvspserver      *:*         LISTEN  

然后在windows下用WINCVS客户端连接正常。