RedHat Linux Enterprise 5下安装配置cvs

时间:2022-02-06 08:17:53

1.查看是否安装cvs

 rpm -qa|grep cvs

 一般安装在/usr/bin/cvs,如果未安装,www.cvshome.org下载一个最新的rpm安装即可

 rpm -ivh cvs-1.11.2-10.i386.rpm

 

2.建立cvs用户组,便于管理cvs用户

 groupadd cvs

 

3.建立cvs组的cvsroot用户和所属的目录

 useradd -g cvs -G cvs -d /home/cvs  cvs

 

4.cvsroot用户添加密码

 passwd cvs

 

5.改变/home/cvsroot的目录属性

 chmod 775 /home/cvs

 

6.初始化cvs源代码库,此操作生成目录/home/cvs/CVSROOT,其下为一些初始化文件

 cvs -d /home/cvs init

 

7.加入cvs服务(我的redhath9缺省就有cvs服务,所以不用加)

   gedit /etc/services

   cvspserver 2401/tcp #pserver cvs service

   cvspserver 2401/udp #pserver cvs service

 

8.cvs服务由inted来唤起,因此需要改动inetd提供的服务,如果你的redhat使用的是inetd 方式则在文件/etc/inetd.conf

加入如下的内容:cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/home/cvs pserver

   xinetd.d目录下添加需要启动的服务:

    cd /etc/xinetd.d

    vi cvspserver

    文件内容:

         service cvspserver

         {

                   disable = no

                   port = 2401

                   flags = REUSE

                   socket_type = stream

                   wait = no

                   user = root

                   server = /usr/bin/cvs

                   server_args = -f --allow-root=/home/cvs  pserver

                   #log_on_failure += USERID

                   protocol = tcp

         }

  9.重新启动inetd或者xinetd:

   /etc/init.d/xinetd restart

 

  10.检查cvspserver服务是否已经启动

   netstat -l |grep cvspserver

   应该有如下结果:

   tcp 0 0 *:cvspserver  *:* LISTEN

        

         11.添加用户

              a.加密函数:

                   cd /home/cvs

                   gedit 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}/n";

               b.cvs的密码是以加密方式存储的,使用以上下其手函数给密码加密,用法:/home/cvs/passwd.pl "XXXXX",输出为加密后的密码。

               c.gedit /home/cvs/CVSROOT/passwd

                 内容如下:

                   用户名1:加密后的密码1:系统用户名(cvs)

                   用户名2:加密后的密码2:系统用户名(cvs)

 

  12.测试:

                   如果selinux策略为“强制”:

                   cd /home

                   chcon -R -t cvs_data_t cvs

    cvs -d :pserver:xianghuxian@localhost:/home/cvs login

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