1. 建立CVSROOT目录,因为这里涉及到用户对CVSROOT里的文件读写的权限问题,
所以比较简单的方法是建立一个组,然后再建立一个属于该组的帐户,而且以后有
读写权限的用户都要属于该组.假设我们建一个组cvs,用户名cvsroot.建组和用
户的命令如下
#groupadd cvs
#adduser cvsroot
生成的用户家目录在/home/cvsroot(根据自己的系统调整)
2. 用cvsroot用户登陆,修改 /home/cvsroot (CVSROOT)的权限,赋与同组人有读写的权限:
$chmod 771 . (或者770应该也可以)
注意:这一部分工作是按照文档说明做的,是否一定需要这样没有试验,我
会在做试验后在以后版本的教程说得仔细一点.如果您有这方面的经验请提
供给我,谢谢.
3. 建立CVS仓库,(仍然是cvsroot用户),用下面命令:
$cvs -d /home/cvsroot init
4. 以root身份登陆,修改/etc/inetd.conf 和 /etc/services,分别加入下面一行:
在 /etc/inetd.conf 里加入:
cvsserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/home/cvsroot pserver
说明:上面的行是单独一整行,/usr/bin/cvs 应该是你的cvs版本的命令路径,
请根据自己的系统调整./home/cvsroot 是你建立的CVSROOT的路径,也请
根据上面建立目录的部分的内容做调整.
在/etc/services里加入:
cvsserver 2401/tcp
说明:cvsserver是任意的名称,但是不能和已有的服务重名,也要和上面修改/etc/inetd.conf那行的第一项一致.这里我用的是CVS的口令认证方式,CVS还有其他认证方式,我没有做试验,如果您有经验,请补充,谢谢.
5. 添加可以使用CVS服务的用户到cvs组:
以root身份修改/etc/group,把需要使用CVS的用户名加到cvs组里,比如我想
让用户laser和gumpwu能够使用CVS服务,那么修改以后的/etc/group应该有下
面这样一行:
cvs:x:105:laser,gumpwu
在你的系统上GID可能不是105,没有关系.主要是要把laser和gumpwu用逗号
分隔开写在最后一个冒号后面.当然,象RedHat等分发版有类似linuxconf这样
的工具的话,用工具做这件事会更简单些
6.因为redhat linux跟UNIX系统的差异,启动服务的方式就不同(在UNIX下用inetd.conf
配置文件,Linux下有一个叫xinetd.conf,在里面我才发现启动所有的服务包含在xinetd.d
目录中,打开该目录中的任意一个文件,你就明白了)
参照UNIX系统/etc/inetd.conf文件加入的那一行
cvspserver stream tcp nowait root /usr/local/cvs/cvs cvs -f
--allow-root=/opt/cvs pserver跟Linux系统中/etc/xinetd.d目录中的telnet文件
生成一个文件(在/etc/xinetd.d目录)
#touch cvspserver
建立一个启动脚本cvspserver
#vi /etc/xinetd.d/cvspserver
service cvspserver
{
disable=no
flags=REUSE
socker_type=stream
user=root
server=/usr/bin/cvs
server_args=-f --allow-root=/home/cvsroot pserver
log_on_success+=USERID
log_on_failure+=USERID
}
7.启动服务
#service xinetd restart