1.查看是否安装cvs
rpm -qa | grep cvs
一般安装在/usr/bin/cvs,如果未安装,到www.cvshome.org下载一个最新的rpm安装即可
2.建立cvs用户组,便于管理cvs用户
groupadd cvs
3.建立cvsroot用户,属于cvs组(组名必须为cvs),根目录为/home/cvsroot,不许登陆
useradd -g cvs -s /sbin/nologin cvsroot
4.改变/home/cvsroot的目录属性
chmod 775 /home/cvsroot
5.初始化cvs源代码库,此操作生成目录/home/cvsroot/CVSROOT,其下为一些初始化文件
cvs -d /home/cvsroot init
6.创建可以登陆cvs服务的用户及密码,需要创建文件passwd
vi /home/cvsroot/CVSROOT/passwd
文件内容如下:
weiqiong:xxxxxx:cvsroot
chenxu:xxxxxx:cvsroot
此文件的意思是weiqiong和chenxu两个用户可以登陆cvs服务器,登陆后其权限为用户cvsroot的权限
注意:cvs用户和服务器用户是可以不一样的
7.xxxxxx为密码,由以下文件生成:
vi /home/cvsroot/passwdgen.pl
文件内容:
#!/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}
";
8.如果需要密码为:123456,则敲入:
passwdgen.pl "123456"
回车即可得到加密密码,用其替换passwd文件中的xxxxxx
9.加入cvs服务(一般的redhat上缺省就有cvs服务,所以不用加)
vi /etc/services
cvspserver 2401/tcp #pserver cvs service
cvspserver 2401/udp #pserver cvs service
10.一般cvs服务由inted来唤起,因此需要改动inetd提供的服务,如果你的redhat使用的是inetd方式,
则在文件/etc/inetd.conf中加入如下的内容:
cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/home/cvsroot
pserver
redhat7.3以上使用的是xinetd方式,所以在xinetd.d目录下添加需要启动的服务:
cd /etc/xinetd.d
vi cvspserver
文件内容:
service cvspserver
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot pserver
log_on_failure += USERID
}
11.重新启动inetd或者xinetd:
/etc/rc.d/init.d/xinetd restart
如果想设定权限:
编辑 writers 文件,加入下面几行:
jiaojj
chenxu
readers:有 cvs 读权限的用户列表文件。就是一个一维列表。在这个文件中的用户对 cvs只有读权限。
writers:有 cvs 写权限的用户的列表文件。和 readers 一样,是一个一维列表。在这个文件中的用户对 cvs 有写权限。