Solaris10上安装CVS需要注意的问题

来源:互联网 发布:淘宝如何申请退货 编辑:程序博客网 时间:2024/04/30 02:13
详细的安装过程,网上文章很多,下面红字部份请特别注意,很多朋友安装不成功,原因都在此。
假设我们的CVSROOT/opt/cvs 
找到原代码www.cvshome.org下载回来
解压 
$gunzip cvs-1-11.tar.gz 
$tar xvf cvs-1-11.tar 
会回生成一个叫cvs-1.11的目录,进入目录编译, 
$cd cvs-1.11 
$./configure --prefix=/usr/local/cvs
(--prefix参数是指定安装目录,相信大家都应该知道吧) 
$make 
$su root 
#make install 
 
/usr/local/cvs/bin 加入到PATH环境变量中。
输入cvs –version测试。正确的话会显示cvs的版本号。
 
操作完毕后,CVS服务器需要的软件部分就安装上了,下面就要进行一些设置 

 

建立用户组和用户帐号

 

创建组

groupadd group1

groupadd group2

groupadd group3

groupadd test (测试)

groupadd cvsadmin(管理员)

 

建立用户

 

Useradd –m –g cvsadmin –G GID –d /export/home/cvsadmin –s /bin/bash cvsadmin

Passwd cvsadmin

输入cvsadmin 的密码

同样的方法创建其他用户

 

/opt/cvs/下建立文件夹

Mkdir group1 group2 group3 test undercontral(受控库)

 

初始化CVS服务器,初始化过程中将 CVS将创建它所用的系统文件,并写入原始内容。

#cvs –d /opt/cvs/group1 init

#cvs –d /opt/cvs/group2 init

#cvs –d /opt/cvs/group3 init

#cvs –d /opt/cvs/test init

#cvs –d /opt/cvs/undercontral init

 

查看 /opt/cvs/group1/opt/cvs/group2/opt/cvs/group3/opt/cvs/test

/opt/cvs/undercontral目录,每个文件夹该生成一个CVSROOT文件夹,

且该目录下面有很多系统文件。

 

编辑/etc/services文件并且加入: 
#vi /etc/services
cvspserver 2401/tcp #cvs server tcp port 
cvspserver 2401/udp #cvs server udp port 
 
编辑/etc/inetd.conf文件并且加入: 
#vi /etc/inetd.conf 
cvspserver stream tcp nowait root /usr/local/cvs/bin/cvs cvs -f --allow-root=/opt/cvs/group1 
--allow-root=/opt/cvs/group2 --allow-root=/opt/cvs group3 --allow-root=/opt/cvs/test
--allow-root=/opt/cvs/undercontral pserver
(以上内容请在一行写完)
 
执行以下命令,将inetd.conf 导出到 smf的xml文件中,
(这是因为Solaris10 引入了新的系统管理方式smf,不再直接读取inetd.conf文件了,
可通过命令手动转换)
#inetconv 
 如果提示不成功,请检查你的inetd.conf是否正确

telnet localhost 2401

如果出现光标闪动 输入ok 回车 出现

 

[bash-2.03]root@solaris:/data/project>telnet localhost 2401

Trying 127.0.0.1...

Connected to localhost.

Escape character is ^].

ok 回车

cvs [pserver aborted]: bad auth protocol start: ok

 

则说明cvs服务器已经正常运行了。

 

权限管理

进入/opt目录

Chgrp sys –R cvs

Chmod –R 755 cvs

 

进入/opt/cvs目录

Chgrp –R group1 group1

Chgrp –R group2 group2

Chgrp –R group3 group3

Chgrp –R test test

Chgrp –R cvsadmin undercontral

 

Chmod –R 770 group1 group2 group3 test undercontral

 

编辑/etc/group

cvsadmin或者其他管理员帐号(例如:Kilven)加入到cvsadmin group1 group2 group3 test五个组中

cvsadmin::102:cvsadmin,Kilven

group1::104: cvsadmin,Kilven

test::105:cvsadmin,Kilven

group2::106:cvsadmin,Kilven

group3::107:cvsadmin,Kilven

 

此时你再访问cvs服务器就会发现除了cvsadminKilven可以访问所有仓库以外,其他人只能访问自己组的cvs资源。