linux 下cvs安装与配置

方法1

1.mkdir/home/cvsroot

2.cvs-d/home/cvsrootinit

方法2

1.exportCVSROOT=/home/cvsroot

2.cvsinit

Note:-d将会覆盖CVSROOT环境变量

添加用户与组1.groupaddcvs

2.useraddcvsroot

3.chown-Rcvsroot:cvs/home/cvsroot

4.chmod775-R/home/cvsroot

5.addotheruserforcvsserver:

adduserjianfeng

usermod-Gcvsjianfeng配置/etc/services文件添加cvspserver(如果有就不要加了)

cvspserver2401/tcp#cvsclient/serveroperations

cvspserver2401/udp#cvsclient/serveroperations配置inetd(或xinetd)1.对于inetd(Debain)

编辑/etc/inetd.conf,加入

cvspserverstreamtcpnowaitroot/usr/bin/cvs--allow-root=/home/cvsrootpserver

允许多个仓库:

cvspserverstreamtcpnowaitroot/usr/bin/cvs--allow-root=/home/cvsroot

--allow-root=/home/jx/cvspserver

2.对于xinetd(RedHat)

编辑/etc/xinetd.d/cvspserver

servicecvspserver

{

disable=no

socket_type=stream

wait=no

user=root

env=HOME=

server=/usr/bin/cvs

server_args=-f--allow-root=/home/cvsrootpserver

}

允许多个仓库:

servicecvspserver

{

disable=no

flags=REUSE

socket_type=stream

wait=no

user=root

server=/cvsroot/cvs.run

log_on_failure+=USERID

}

(xinetd的server_args长度限制,创建一可执行的cvs.run脚本)

cvs.run

#!/bin/bash

/usr/bin/cvs-f

--allow-root=/home/cvsroot

--allow-root=/home/jx/cvs

pserver

3.重启xinetd

/etc/rc.d/init.d/xinetdrestart(forredhat)

/etc/init.d/inetdrestart(fordebian)

管理CVS服务器CVS服务器认证当认证一用户时,CVS服务器首先检查"$CVSROOT/CVSROOT/passwd"文件是否存在此用户,

如果存在用户的entry,就用该entry验证.否则,如果SystemAuth=yes,然后再用操作

系统的passwd(/etc/passwd)文件做认证.

CVSROOT下的passwd文件与/etc/passwd文件格式不同,

{cvs用户名}:[加密的口令]:[等效系统用户名]

例:test2:yXgbAY2CWc882:cvsroot

CVS服务器读写权限的控制1.readers:有cvs读权限的用户列表文件

2.writers:有cvs写权限的用户的列表文件

Note:这两个文件必须以空行结束添加CVS用户示例(jx具有写权限,jianfeng具有读权限)1.编辑CVSROOT/passwd文件(cvsroot用户),加入以下两行:

jx:$fajkdpaieje:cvsroot

jianfeng:fjkal;ffjieinfn/:cvsroot

note:上面的第二个字段(分隔符为:)是密文口令,可以随便输入.

2.使用如下的perl脚本生成密码,copy到CVSROOT/passwd文件中(第二个字段).

#!/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";

3.如果jx需要密码123456,执行上面的脚本产生密文.

./passwdgen.pl123456

AWoU4Acdd8XLM(将此密文考到CVSROOT/passwd文件中)

4.因为jianfeng具有读权限,应将其加入readers文件.

编辑readers文件,

jianfeng

(空行)

5.因为jianfeng具有写权限,应将其加入writers文件.

编辑writers文件,

jx

(空行)

note:writers中的用户不能在readers中passwd,readers,writers缺省安装时不存在.添加CVS项目1.进入到你的已有项目的目录,比如:pds

cdpds

cvsimport-m"PHSpacketprototype"pdspds_0_0_1start访问CVS服务器1.exportCVSROOT=:pserver:[email protected]:/home/cvsroot

2.cvslogin

输入你的password成功登陆后,就$HOME生成一个.cvspass文件.以后

就不用再输入口令了.

相关推荐