cvs
				服务在
				linux
				下的安装与配置
		
		
				
						
								 
				
		
		
				
				
						1、  
				
				
				
						验证是否已安装
						CVS
				
				
						
#rpm -q cvs
				如果能显示出类似这样的版本信息,证明已安装
				CVS
				:
				
						
#cvs-1.11.19
				若没有安装信息,则需要从
				htttp://www.cvshome.org
				下载相应的安装包
				
						
						
				
				我的安装环境是
				 linux
as4 u2
				若不想使用自带版本,可以用
				
						
						
#rpm –e cvs 
				删除自系统自带的
				cvs 
				安装包
				
						
						
				
				从
				htttp://www.cvshome.org
				获取最新的安装包
				cvs-1.11.21.tar.gz
				解压该包并安装:
				
						
						
# tar zxvf cvs-1.11.21.tar.gz 
				进入解压包
				
cvs-1.11.21
# ./configure –prefix =
				你的安装目录
				 &&make &&make install
2
				
						、
				
				
						创建
						CVS
				
				
						用户组与用户
				
				
						
root
				用户下执行以下命令:
				
						
#groupadd cvs
#adduser cvsroot
#passwd cvsroot
#
				输入
				cvsroot
				用户密码
				
						
						
						3
				
				
						、创建
						CVSROOT
(CVS
				
				
						仓库的根目录
						)
				
				
						
root
				用户下执行:
				
						
#mkdir /cvsroot 
				此处可改为你想要的
				cvsroot
				路径
				
						
#chown cvsroot.cvs /cvsroot 
				更改
				cvsroot
				权限
				
						
						
						4
				
				
						、初始化
						CVS
				
				
						仓库
				
				
						
				
				需要在
				cvsroot
				用户下执行
				
						
#su - cvsroot
#cvs -d /cvsroot init 
				此处对应上面创建的
				cvsroot
				路径
				
						
						
#
				注:对应后面
				/etc/xinetd.d/cvspserver
				文件的配置
				
						
						
						5
				
				
						、修改环境变量
				
				
						
				
				编辑
				/etc/profile
				或者
				/home
				下相应用户的
				.profile
				文件
				
						
				
				此处已修改
				/etc/profile
				为例:
				
						
#exit
				退回到
				root
				用户,只有
				root
				用户才有权限修改
				/etc/profile
#vi /etc/profile 
				编辑
				/etc/profile
				文件
				
						
				
				在末尾加上以下两句:
				
						
						
CVSROOT=/cvsroot
export CVSROOT
				更新环境变量:
				
						
#source /etc/profile
				此时系统已经认识
				$CVSROOT
				这样的环境变量
				
						
						
						6
				
				
						、启动
						cvs
				
				
						服务器:
				
				
						
				
				在
				/etc/xinetd.d/
				目录下创建文件
				cvspserver
				,内容如下:
				
						
# default: on
# description: The cvs server sessions;
service cvspserver
{
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs 
#
				注,
				/usr/bin/cvs
				是
				cvs 
				命令文件的位置
				。
				
						
						
#
				注,
				删除了系统自带的
				cvs
				安装包,
				
						
#
				注,则
				server=
				你的
				cvs
				安装目录
				/bin/cvs 
server_args = -f --allow-root=/cvsroot pserver 
#
				注,对应第
				4
				步
				cvs -d /cvsroot init
				命令
				
						
only_from = 192.168.10.0/24 
#
				注,
				24
				是子网掩码的长度,对应
				255.255.255.0 
}
				其中
				only_from
				是用来限制访问的,可以根据实际情况不要或者修改。
				
						
				
				修改该文件权限:
				
						
# chmod 644 cvspserver
				然后重新启动
				xinetd
				:
				
						
# /etc/rc.d/init.d/xinetd restart
				然后察看
				cvs
				服务器是否已经运行:
				
						
# netstat -lnp|grep 2401
tcp 0 0 0.0.0.0:2401 0.0.0.0:* LISTEN xxxxxx/xinetd
				则说明
				cvs
				服务器已经运行。
				
						
						
						7
				
				
						、建立
						cvs
				
				
						用户
				
				
						
				
				为了
				CVS
				系统的安全,我们要修改
				/cvsroot/CVSROOT/config
				文件,将
				"#SystemAuth =no"
				的前而的注释号
				#
				去掉,即改为
				“SystemAuth =no”
				,然后给开发者们逐一建立账号,新建的不要分配用户目录,因为它将作为一个虚拟用户帐号来使用,具体命令如:
				
						
				
				  
				[root@terry
root]# chmod -R ug+rwx /cvsroot
				  
				[root@terry
root]# chmod 644 /cvsroot/CVSROOT/config
				  
				[root@terry
root]# useradd -g cvs -M gaoshang
				  
				[root@terry
root]# passwd gaoshang
				上面的命令就创建了一个并没有
				Home
				目录的用户
				gaoshang
				,接着将系统的
				shadow
				文件复制到
				CVSROOT, 
				并重命名为
				passwd:
				  
				[root@terry
root]# cp /etc/shadow /cvsroot/CVSROOT/passwd
				  
				[root@terry
root]# chmod 0644 /cvsroot/CVSROOT/passwd
				  然后修改
				passwd
				文件,将除刚才设定的可使用
				CVS
				的用户
				cvsroot
				及
				gaoshang
				之外的所有行删除,然后去掉每行第二个冒号以后的所有内容,并添上字符串
				cvsroot,
				改为如下格式:
				
						
						
				
				  
				[root@test11
CVSROOT]# more passwd 
cvsroot:$h3ntACe9$cM2SADto6B9P5h5Wrbgyi.:cvsroot
gaoshang:ttSJv9AK.zzZhhHLEQZnZPgEe8f1:cvsroot
				  然后,删除掉刚刚在系统中添加的那个用户
				gaoshang:
[root@terry root]# userdel -f gaoshang
				(这里主要是使用系统在创建用户时,为用户密码生成的的密文)
				
						
						
				
				好了,至此,
				CVS
				服务器端已配置完成。这时你的
				CVS
				用户就只能用
				passwd
				中规定的用户来登陆你的
				CVS
				服务器了
				
						
						
						8 .
				
				
						为用户分配权限
				
				
						
				
				在
				/cvsroot/CVSROOT/
				下
				,加入两个文件
				 readers , writers
				将只能读权限的用户加入
				
readers 
				文件,
				
						
						
				
				将具有写权限的用户加入
				writers
				文件。
				
						
						
				
				如:
				# vi writers
gaoshang
9
				
						、
						linux
				
				
						客户端登录测试
				
				
						(或见
						 window cvs
				
				
						客户端
						 wincvs 1.3
				
				
						的使用说明)
				
				
						
						
				
				假定
				cvs
				服务器在
				192.168.10.11
				上,系统上有用户
				cvsroot
				和
				gaoshang
				。登陆另一台
				linxu
				机器,执行下列命令可以完成测试:
				
						
						
[root@test2 test]# export CVSROOT=:pserver:cvsroot@192.168.10.11:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:cvsroot@192.168.10.11:2401/cvsroot
CVS password: 
#
				注:输入密码,没有出错提示表示登陆成功。
				
						
[root@test2 test]# 
[root@test2test]# export CVSROOT=:pserver:gaoshang@192.168.10.11:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:gaoshang@192.168.10.11:2401/cvsroot
CVS password: 
#
				注:输入密码,没有出错提示表示登陆成功。
				
						
[root@test2 test]# 
				配置中碰到的问题
				
						
1
				、
				cvsroot
				用户不能登录
				
						
[root@test2 test]# export CVSROOT=:pserver:cvsroot@192.168.10.11:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:cvsroot@192.168.10.11:2401/cvsroot
CVS password: 
no such user cvsroot in CVSROOT/passwd
				解决办法,查看发现原因是
				/cvsroot/CVSROOT/passwd
				文件中没有包含
				cvsroot
				用户
				
						
						
2
				、只有
				cvsroot
				用户可以登陆,别的用户都不能登录
				
						
				
				查看原因发现是
				
/etc/xinetd.d/cvspserver
				文件的
				server_args = -f --allow-root=/cvsroot pserver
				目录参数不对,因为我们此次配置的
				cvs
				工作目录是
				/cvsroot
				,而不是
				/home/cvsroot,
				所以将该参数为
				 server_args = -f
--allow-root=/cvsroot pserver
				,所有用户均可正常登录。
		
		
				
						 
		
		
				
						 
		
		
				原文出处:http://www.linuxdiyf.com/viewarticle.php?id=19876
		
	posted on 2006-11-23 10:15 
无声 阅读(913) 
评论(0)  编辑  收藏  所属分类: 
职场生活