centos下安裝CVS及配置
Centos 中安裝CVS Server方法
用過一段時間cvs,后来用SVN,現在都沒有印像了,故温习一下
一、系统上是否已经安装相关的服务
lklug-fonts-0.6-4.20090803cvs.el6.noarch
libedit-2.11-4.20080712cvs.1.el6.x86_64
xdg-utils-1.0.2-17.20091016cvs.el6.noarch
package xinetd is not installed
[qinshiqi@localhost Desktop]$ rpm -q cvs
package cvs is not installed
http://download.chinaunix.net/download/0001000/76.shtml
然后在通过yum
[root@localhost yum.repos.d]# yum install cvs
Loaded plugins: fastestmirror, refresh-packagekit, security
……………………………………。
Installed:
cvs.x86_64 0:1.11.23-16.el6
Complete!
验证cvs是否已经安装上了:
[root@localhost yum.repos.d]# rpm -qa cvs
cvs-1.11.23-16.el6.x86_64
参数|grep cvs与 cvs的区别:
[root@localhost Documents]# rpm -qa |grep cvs
lklug-fonts-0.6-4.20090803cvs.el6.noarch
libedit-2.11-4.20080712cvs.1.el6.x86_64
xdg-utils-1.0.2-17.20091016cvs.el6.noarch
cvs-1.11.23-16.el6.x86_64
[root@localhost Documents]# rpm -qa cvs
cvs-1.11.23-16.el6.x86_64
2、xinetd服务是否已经安装,如果没有安装,先安装上
这个通过yum安装还是失败,干脆直接从安装盘上拷贝过来安装吧
[root@localhost ShareForVM]# rpm -ivh xinetd-2.3.14-38.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:xinetd ########################################### [100%]
[root@localhost ShareForVM]# rpm -qa xin
[root@localhost ShareForVM]# rpm -qa xinetd
xinetd-2.3.14-38.el6.x86_64
3,修改环境变量(目前不是必须的)
$su root
#vi /etc/profile
在最后添加
CVSROOT=/home/cvsroot
exprot CVSROOT
保存后,
#source /etc/profile
成功后,检查环境变量添加是否成功
#echo $CVSROOT
二、CVS的配置
1、设置用户
[root@localhost Documents]# groupadd cvsg
在这个组下增加用户cvsroot
[root@localhost Documents]# useradd cvsroot -g cvsg
修改新加用户的密码c*_testr*_
[root@localhost Documents]# passwd cvsroot
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
2、建立CVS仓库并初始化
[root@localhost cvsroot]# pwd
/home/cvsroot
改变/home/cvsroot的目录属性
chmod 775 /home/cvsroot(/home/cvsroot目录需要至少给群组权限)
[root@localhost cvsroot]# cvs -d /home/cvsroot init
[root@localhost cvsroot]# ls
CVSROOT
[root@localhost cvsroot]# cd CVSROOT/
[root@localhost CVSROOT]# ls
checkoutlist config,v Emptydir modules,v taginfo
checkoutlist,v cvswrappers history notify taginfo,v
commitinfo cvswrappers,v loginfo notify,v val-tags
commitinfo,v editinfo loginfo,v rcsinfo verifymsg
config editinfo,v modules rcsinfo,v verifymsg,v
3、创建登录cvs服务的用户以及密码
[root@localhost CVSROOT]# htpasswd -c passwd yfeifei
New password:
Re-type new password:
Adding password for user yfeifei
d*_****
在/home/cvsroot/CVSROOT下运行htpasswd -c passwd yfeifei
(-c 会生成passwd文件,以后再创建用户就不需要 -c 参数了,可以使用 -n 参数直接指定用户名,但要在passwd文件中添加对应的用户名称加密密码以及:cvsroot)
(创建的feifei用户是以其所在群组为cvs的资格来可读可写可执行仓库中的文件)
修改passwd文件,在用户名后边加上cvsroot
*************************
[root@localhost CVSROOT]# htpasswd passwd qin
New password:
Re-type new password:
Adding password for user qin
[root@localhost CVSROOT]# cat passwd
yfeifei:7vV7AcR3pOORk:cvsroot
qishi:v8yvvdpJ71L7w:cvsroot
qin:9tTPnujUuKP82
[root@localhost CVSROOT]#
加这个的使用是CentOS系统将cvs用户与系统用户对应
4、检查服务是否配置
root@localhost ShareForVM]# more /etc/services |grep cvspserver
cvspserver 2401/tcp # CVS client/server operations
cvspserver 2401/udp # CVS client/server operations
如果出现以上结果,说明配置成功,否则需要手动添加(vi /etc/services)
这两行在cvs服务安装完成时就会存在,如果没有可以手动添加,我们可以清楚看到cvs服务的监听端口是默认的2401。
修改cvspserver的监听端口,将2401改成与系统其他端口不冲突,自己喜欢的端口号就可以了。
#vi /etc/services
修改cvspserver的监听端口,将2401改成与系统其他端口不冲突,自己喜欢的端口号就可以了。
重启xinetd服务
#service xinetd restart
5修改cvs文件
Linux的其他版本可能是cvspserver,没有时需要手动创建该文件,在我安装的centos6.3中,没有这个文件,网上说centos6默认应该是有的,不知为什么,先创建吧
/etc/xinetd.d/cvs
/etc/xinetd.d/cvspserver
# default: off
# description: The CVS service can record the history of your source \
# files. CVS stores all the versions of a file in a single \
# file in a clever way that only stores the differences \
# between versions.
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
# env = HOME=/var/cvs
env = HOME=/home/cvsroot
# server_args = -f --allow-root=/var/cvs pserver
server_args = -f --allow-root=/home/cvsroot pserver
# bind = 127.0.0.1
}
6.重启xinetd服务
#service xinetd restart
7、检查cvspserver服务是否已经启动:
[root@localhost xinetd.d]# netstat -l|grep cvspservertcp 0 0 *:cvspserver *:* LISTEN