cvs服务在linux下的安装与配置

<[endif]>

cvslinux下的安装与配置


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

3CVSROOT  (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/cvscvs 命令文件的位置

#注, 除了系cvs安装包,

  #注,server=你的cvs安装目/bin/cvs

server_args = -f --allow-root=/cvsroot pserver  

#注,对应4cvs -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的用cvsrootgaoshang之外的所有行除,然后去掉行第二个冒号以后的所有内容,并添上字符串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

 

9linux端登录测试 

假定cvs器在192.168.10.11上,系上有用cvsrootgaoshang。登另一台linxu机器,行下列命令可以完成测试

[root@test2 test]# export CVSROOT=:pserver:[email protected]:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:[email protected]:2401/cvsroot
CVS password:                                       

 #注:入密,没有出提示表示登成功。
[root@test2 test]#
[root@test2test]# export CVSROOT=:pserver:[email protected]:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:[email protected]:2401/cvsroot
CVS password:                                      

#注:入密,没有出提示表示登成功。
[root@test2 test]#                          


配置中碰到的问题
1
cvsroot不能登
[root@test2 test]# export CVSROOT=:pserver:[email protected]:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:[email protected]: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,所有用均可正常登

 

你可能感兴趣的:(linux,配置,cvs)