google了半天,终于决定在测试机redhat 7.2上装cvs了。

一般的,装完redhat,cvs就已经装上了,不过我装这台测试机的时候,由于光驱是坏的,找遍全公司终于搜出来一张能用的软盘,就直接跑到hk的redhat ftp镜像上网络装了,居然连ftp、telnet之类的命令都没装上去,只好手工装了。

www.cvshome.org下载了份tar.gz包,一如既往的,解包,configure、make、make install,完装完毕。

先建了个cvs的组,然后再创建一个用户useradd -g cvs -d /cvs cvs,然后su cvs

$export CVSROOT=/cvs/test
$cvs init

瞅了一下/etc/services,关于pserver的配置是打开的,省得自己去删#了
cvspserver      2401/tcp                        # CVS client/server operations
cvspserver      2401/udp                        # CVS client/server operations

在/etc/xinetd.d/下面建了一个cvspserver文件
service cvspserver
  {
     disable = no
     flags = REUSE
     socket_type = stream
     wait = no
     user = cvs
     protocol   = tcp
     server = /usr/bin/cvs
     server_args = -f –allow-root=/cvs/test  pserver
     log_on_failure += USERID
  }

执行service xinetd restart 命令,用netstat -an瞅了瞅,pserver的2401端口起来了。就这么简单!

在cvshome.org上下了个w2k上用的cvs命令工具,在工作机上试了一下,一切正常

D:\cvsnt-2.1.1-bin>set CVSROOT=:pserver:cvs@61.166.153.14:/cvs/test
D:\cvsnt-2.1.1-bin>cvs login
Logging in to :pserver:cvs@61.166.153.14:2401:/cvs/test
CVS password: ********

正常是正常了,但总不能老用linux的系统帐号来玩吧?继续。。

机器上刚好装过apache,就借用apache的htpasswd了

#/www/apache_1.3.29/bin/htpasswd  -bc /cvs/test/CVSROOT/passwd wuyu passwdtest
#vi /cvs/test/CVSROOT/passwd
anonymous::cvs
test:ETvlR5E7l1HY6:cvs
test2:ETvlR5E7l1HY6:cvs
test3:ETvlR5E7l1HY6:cvs
…….
然后创建了个writer文件,把有写权限的用户加进去
#vi /cvs/test/CVSROOT/writers
test
test2
test3
再建一个readers文件,把只允许读的用户加进去
# vi readers
anonymous

收工!

来源:http://wuyu.mblogger.cn/posts/307.aspx

补充:
用Apache的htpasswd工具创建了passwd文件后,这个文件里只有用户名和密码,如“test:ETvlR5E7l1HY6”,需要在后面再加上“:cvs”,成为“test:ETvlR5E7l1HY6:cvs”,才能将虚拟用户映射为真实的cvs用户,该虚拟用户才能登录CVS。

发表评论