CVS在项目开发中使用的非常广泛,有些新手对于linux不太熟悉,配置CVS时错误百出,我也是从新手一步步过来的,结合自己的工作心得和使用经验,写了这篇指南,希望对初学者有所帮助。
********************************
*
版权所有:Matrics
* 转载请注明出处
http://matrics.cublog.cn
********************************
OS版本:RHEL 4
u3
cvs版本:1.11.17 (系统自带rpm包)
目标 :安全控制,
多仓库管理,网络访问
申明:
由于使用的是系统自带的cvs服务器rpm版本,故此略过安装步骤。
重要的配置文件:
/etc/passwd
/etc/xinetd.d/cvspserver(新创建)
cvs仓库位置:
/opt/cvsbase/srchome
cvs管理员:cvsadmin
cvs用户组:cvs
配置步骤:
1、创建cvs管理员和组
#mkdir
-p /opt/cvsbase/srchome
#groupadd cvs
#useradd -g cvs -G cvs -d
/opt/cvsbase/cvsadmin cvsadmin
#chown cvsadmin.cvs /opt/cvsbase/srchome
2、更改cvsadmin的密码
passwd
cvsadmin
3、多仓库
由于/etc/xinetd.d/cvspserver文件中,server_args项只能指定的一个CVS仓库,所以要想使用多个仓库需要特殊的方法——脚本。
编辑/etc/xinetd.d/cvspserver文件内容如下:
#
File begin
service cvspserver
{
disable = no
flags =
REUSE
socket_type = stream
wait = no
user = root
server =
/opt/cvsbase/cvsrepos.run
log_on_failure += USERID
}
#
EOF
编辑仓库脚本文件 /opt/cvsbase/cvsrepos.run
# File
begin
#!/bin/bash
CVSHOME=/opt/cvsbase/srchome
/usr/bin/cvs -f
\
--allow-root=$CVSHOME/proj1 \
--allow-root=$CVSHOME/proj2
\
--allow-root=$CVSHOME/proj3 \
...
...
pserver
#
EOF
注意每个“--allow-root”项末尾的 \ 后不能有空格,否则会报告错误。
以后重启xinet服务
#
chmod +x /opt/cvsbase/cvsrepos.run
# service xinetd
restart
4、初始化cvs仓库(XXX为项目名)
#su - cvsadmin
#mkdir
/opt/cvsbase/srchome/XXX
#cvs -d /opt/cvsbase/srchome/XXX
init
5、cvs用户验证
普通cvs用户不使用linux系统帐户,而是使用cvs自身的用户验证系统,映射cvs用户到linux的系统帐户上。
常用的方法是,为每个工程建立一个等效系统帐户,限制其登录,只作为映射使用,且此帐户应该是cvs组的成员。
命令如下:(XXX用实际的项目名代替)
#adduser
-g cvs -G cvs -s /bin/false -d /opt/cvsbase/srchome/XXX -M
XXXcvs
创建cvs用户
可以使用htpasswd工具生成加密后的密文,也可以使用perl编写小的passwd加密脚本。
方法一:perl脚本
加密用的perl脚本内容如下:
#
File begin
#!/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";
#
EOF
文件保存到/opt/cvsbase/cvspasswd.pl,并赋予可执行权限:
#chmod +x
/opt/cvsbase/cvspasswd.pl
这样,通过运行
#/opt/cvsbase/cvspasswd.pl
"密码"
就可以得到密码加密后的密文。
方法二:htpasswd工具
#htpasswd -c cvspasswd
cvsusername
输入两次密码后,加密后的密文就保存到了cvspasswd文件里。冒号后的一段就是密文。
不管用哪种方法,得到密文后,编辑项目cvs仓库下的/CVSROOT/passwd文件,以如下格式添加用户:
cvsusername:加密后的密文:XXXcvs
上例共三部分,分别是要添加的cvs用户名、cvs用户密码加密后的密文、被映射到的linux系统帐户。
cvs用户名自定义,密文用上面的cvspasswd.pl脚本生成,被映射的linux系统帐户在第5步开始处建立。
如果cvs用户需要有写的权限,那么用户名添加到项目cvs仓库的CVSROOT/writers文件里,每行一个用户。
#echo
cvsusername >>
writers
如果需要只读权限,就把用户名添加到项目cvs仓库的CVSROOT/readers文件里,每行一个用户。
#echo
cvsusername >>
readers
需要注意的是,拥有写权限的用户名不能再次出现在readers文件中,换句话说,每个用户在两个文件中最多只能出现一次。
6、启动cvs服务器
#service
xinetd restart
使用命令查找cvs服务是否正常启动:
netstat -l | grep
cvspserver
如果有显示,说明cvs服务器已经正常启动。
7、防火墙配置
cvs服务器默认使用2401端口监听连接请求,所以想要开通远程cvs连接的话,需要在防火墙上打开2401端口的tcp连接。可以使用system-config-securitylevel-tui工具进行可是可视化配置,
Customize -> Allow incoming:Other ports:
输入2401:tcp,如果已存在其他项,则彼此用空格隔开。
保存退出。
熟悉iptables命令的人也可以直接编辑/etc/sysconfig/iptables文件添加规则,然后重新启动iptables服务也可。
然后,使用cvs客户端工具进行连接测试。
至此,linux上的cvs服务器配置完毕。
如果用户提交 出错 c vs cannot mkdir
把cvsroot目录所有者给cvsroot 命令:chown cvsroot /home/cvsroot/ -R
分享到:
相关推荐
【知识点详解】 ...在Linux(尤其是Redhat Linux)上配置CVS服务器涉及安装、配置服务、设置认证方式、管理用户权限以及初始化仓库等一系列步骤。理解这些步骤对于有效地管理和控制项目代码至关重要。
本文将详细介绍如何在Linux环境下配置CVS服务器,包括搭建环境、用户管理、权限设置以及服务启动等步骤。 #### 一、搭建CVS服务器基础环境 1. **建立CVS用户组** - 使用命令`groupadd cvs`来创建名为“cvs”的...
本文将基于提供的文件信息,深入探讨如何在MyEclipse中将项目共享至部署在红旗Linux中的CVS服务器,以及在红旗Linux上构建CVS服务器的方法。 ### 在红旗Linux中构建CVS服务器 #### 1. 安装CVS服务器 在红旗Linux...
下面将详细介绍如何在Linux服务器上设置CVS服务器,并在Windows客户端上安装并配置CVS客户端。 一、Linux服务器端CVS服务器的安装与配置 1. **安装CVS服务端** 在Linux系统中,通常使用包管理器来安装CVS。例如,...
### Linux下配置CVS服务器(CentOS 5.2) #### 测试环境 - **操作系统**: CentOS 5.2 - **Tomcat版本**: apache-tomcat-5.5.23 #### 步骤一:安装必要的组件 在CentOS 5.2环境下配置CVS服务器的第一步是确保必要...
在Linux环境下设置CVS服务器涉及几个主要步骤: 首先,你需要下载CVS的源代码包。你可以通过搜索引擎或直接访问CVS的官方网站cvshome.org获取最新的源代码。确保下载的版本是最新的,以防止潜在的安全风险。 下载...
本文详细介绍了在Linux环境下如何配置和使用CVS,包括安装、配置CVS用户和组、设置文件权限、初始化CVS仓库、配置CVS服务器以及从客户端连接使用CVS等关键步骤。通过遵循这些步骤,可以确保CVS系统在Linux环境下稳定...
### Linux下CVS服务器的配置知识点详解 #### 一、验证是否已安装CVS 在开始配置CVS服务器之前,首先要确认系统是否已经安装了CVS。可以通过以下命令检查: ```bash # rpm -qcvs ``` 如果系统中已安装CVS,此命令...
- 通过这些步骤,可以有效地在Linux环境中搭建起一个功能完整的CVS服务器,支持多用户的协同开发和版本控制需求。 - CVS作为一款经典的版本控制系统,在许多场景下仍然发挥着重要作用,尤其是在需要维护大量历史版本...
本文将详细介绍如何在 Suse Linux 10.3 上配置并设置 CVS 服务。 #### 二、环境准备与检查 在开始配置之前,首先需要确认系统是否已安装了 CVS 软件包。可以通过以下命令检查: ```bash # rpm -qa | grep cvs ```...
1. 安装CVS服务器:首先需要在服务器端安装CVS服务程序,如在Unix/Linux环境下通常使用CVSNT在Windows上。确保安装完成后,CVS守护进程(cvsd)能够正常启动。 2. 配置CVS仓库:创建一个目录作为CVS仓库,例如 `/...
【Linux下CVS服务器配置详解】 CVS (Concurrent Versions System) 是一款开源的版本控制系统,常用于软件开发中管理代码版本。在Linux环境下配置CVS服务器,可以帮助团队协同开发,跟踪代码变更历史。以下是对配置...
Linux 下 CVS 的配置与安装 安装 CVS 在 Linux 系统中,安装 CVS 服务器端非常重要。首先,需要确认系统是否已经安装了 CVS。如果没有安装,可以使用以下命令安装: ``` # yum install cvs ``` 配置 CVS 服务器 ...
【CVS服务器的搭建与配置】是一篇详细指导如何建立和配置CVS(Concurrent Versions System)服务器的文章,旨在帮助用户实现版本控制系统的部署。CVS是一个开源的、基于网络的版本控制系统,允许多个人协作开发同一...
在CVS服务器上创建项目仓库,以便开发者可以克隆和提交代码。使用`cvs import`命令导入初始代码库。 ```bash cvs import -m "Initial import" my_project /var/cvsroot/my_project ``` 二、CVS客户端使用 1. 安装...
本文将详细讲解如何在Linux环境下配置CVS服务器。 首先,我们需要检查CVS是否已经安装在系统中。这可以通过运行`rpm -q cvs`命令来完成。如果系统显示CVS的版本信息,表明已经安装;如果没有,你需要从CVS官方网站...
本文档详细介绍了在 Linux 操作系统下安装、部署、备份和恢复 CVS 服务器的步骤,旨在帮助读者快速搭建 CVS 服务器环境。 一、安装 Linux 服务器 在安装 Linux 服务器时,需要选择合适的版本,我们建议选择 9.0 ...
本文将详细介绍如何在Linux环境下配置CVS服务器端,包括安装、初始化、配置服务以及启动和测试。 首先,CVS服务器端的安装。在Linux系统中,如RH Linux,通常预装了CVS。你可以通过执行`rpm -qa | grep cvs`命令来...
以上步骤完成后,你将拥有一个配置好的CVS服务器,可供客户端连接并进行版本控制操作。客户端配置包括安装CVS客户端软件,设置CVSROOT环境变量,以及进行必要的身份验证设置,这样团队成员就可以开始使用CVS进行协同...