分享
 
 
 

Redhat7.0下CVSserver及webcvs配置

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

配置CVS server,费了很大的力气才把它搞定,我是菜鸟,希望高手不要那砖头Pai me,我只是不希望其它 菜鸟不再费这么大的气力了,其中引用其他作者的文字我用[/c&v]... [c&v/]指出了

我的系统为Redhat 7.0,运行Apache

1.CVS Server配置

RHLinux# mount /mnt/cdrom (如果不好用的话,你可以试一下mount -t iso9669 /dev/cdrom /mnt/cdrom)

RHLinux# cd /mnt/cdrom/Redhat/RPM (不用解释了吧)

RHLinux# rpm -ivh cvs-1.10.8.8.i386.rpm (安装cvs,你可以用rpm -qpl ...看安装的详细信息)

RHLinux# vi /etc/service

(应该有

cvspserver 2401/tcp # cvs client/server operations

cvspserver 2401/udp # cvs client/server operations

这两行)

([/c&v]以下具体的作者我找不到了,所以,我不能写出作者的姓名,sorry 感谢他的辛勤劳动 要使cvs正常运行还需要对需要使用cvs的用户进行设置,下面是我在 配置cvs使用的方法。首先建立一个用户组cvs,可以使用groupadd或者 addgroup命名,也可以直接编辑/etc/group文件添加这个组,然后添加 一个用户cvsroot, 然后修改/etc/passwd文件使cvsroot用户的缺省组 是cvs组,而不是cvsroot组。建立/cvsroot目录,然后修改/cvsroot的

属主及属性[c&v/])

RHLinux# groupadd cvs

RHLinux# adduser cvsroot

RHLinux# passwd cvsroot

修改/cvsroot的属主及属性

RHLinux# chown cvsroot.cvs /cvsroot

RHLinux# chmod 755 /cvsroot(原本应该是771,但是我们要配置cvsweb.cgi,下面再谈)。

RHLinux# cd /etc/xinetd.d

RHLinux# vi cvspserver(创建一个新文件,文件名随意,注释为文件内容)

/************************************************

service cvspserver

(service后面的名称一定要和你在/etc/service文件中的cvs服务名称

一样,但是我不知道/etc/service文件中的cvs服务名称可以改否,rpm

方式安装完后,那两行就在那了-----我是菜鸟嘛:)

{

disable = no

flags = REUSE

socket_type = stream

wait = no

user = root

server = /usr/bin/cvs

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

log_on_failure += USERID

}

************************************************/

RHLinux# cvs -d /home/cvsroot init

(对cvs进行初始化,你会发现/home/cvsroot下多了一个CVSROOT的子目录)

RHLinux# /etc/init.d/xinetd restart (重新启动xinetd)

cvs -d :pserver:cvsroot@host:/home/cvsroot login

(输入cvsroot用户在服务器上的口令,没有出现错误提示就表示成功了.)

(如果cvspserver成功起动后,netstat -l | grep tcp应能看到以下行:

tcp 0 0 *:cvspserver *:* LISTEN)

2.WinCvs(Windows下客户端的配置):

[/c&v] 启动wincvs在Admin菜单中选择preferences然后在global页中设置CVSROOT,就是

:pserver:cvsroot@host:/cvsroot。在认证方式中选择passwd file on the cvs server,

在下面的版本号中选择合适的版本,执行Admin菜单中的login,在提示框输入口令,如果

Output窗口出现以下提示:

*****CVS exited normally with code 0*****

就表示我们现在可以在Windows下使用cvs服务了。[c&v/]

如何使用wincvs把自己的项目加到cvs中去

1) Make sure that all the source files you want to check into CVS are on one directory (or

subdirectories). This directory (folder) should NOT contain anything else! That is, it should not

contain executables, object files (.o), class files (.class), etc. It should only contain the

source files.

1) 确认你想加入的源文件全部在一个目录下。这个目录仅仅应当包含源文件,不应该有其他任何的可执行体、

*.O,*.class....等类型的文件

2) 在wincvs "Modules"窗口中包含你的源文件的目录被选中

3) 在菜单"Create" ->"Import Module"选择目录,把它导入CVS

4) 重命名你的目录

5) 其他相关的内容请看wincvs文档

cvsweb配置

[/c&v]cvsweb是一个perl程序,现在的版本是1.93,记得要用新版,1.8以下有一个小小的漏洞,可以到绿盟查

一查。

由于是cgi程序,是以nobody用户执行的,所以/cvsroot的属性要设成775。开始我按章照搬,把属性改成 771,结果项目的目录就是不出来,埋葬了半天的青春:(还有记得把/cvsroot/CVSROOT/history的属性 改成666。cvsweb.conf里%CVSROOT数组的Configuration设成/cvsroot,就是cvs仓库的路径不要那个长长 CVSROOT变量。这些其实在它的说明文档和程序注释里都讲到了,只是这个世界是懒人的世界:)

一切都阳春白雪,可以埋头写程序了?只是cvs还有一个小小的DoS漏洞要跟大家说一下:( 每个cvs的操作过程会以操作用户的身份在/tmp下临时建一个锁定了的目录cvs_servPID,这时如果有人建 了大量的同类文件就会使cvs的操作出错,会提示:

cannot change permissions on temporary directory

Operation not permitted

下面是测试的perl程序:

#!/usr/bin/perl

#$min和$max的值根据实际情况修改

$min=400;

$max=4000;

for ($x=$min;$x<=$max;$x++) {

open CVSTMP, ">>/tmp/cvs-serv$x" or die "/tmp/cvs-serv$x: $!";

chmod 0600, "/tmp/cvs-serv$x";

close CVSTMP;

}

解决方法:

使用server.c中的mktemp(3)函数或者其它任何可以产生唯一文件名的方法。在/tmp/目录所在的分区使 用空间配额也能解决部分问题。 主要还是扎紧篱笆,莫让别人闯进来,这毕竟是一个local的问题。

[c&v/]

RHLinux# rpm -ivh cvsweb-1.79-3.noarch.rpm(顾不了那么多了,饥不择食嘛)

RHLinux# cp /home/httpd/cvsweb.cgi /var/www/cgi-bin

RHLinux# cd /etc/httpd/conf

RHLinux# vi cvsweb.conf

/************************************************************************

找到%CVSROOT项

更改其子项 'Configuration'=>'/home/cvsroot',

*************************************************************************/

在浏览器中敲入http://RHLinux/cgi-bin/cvsweb.cgi如果出现CVS Repository页面也不要高兴的太早

继续进入下一级页面,如果出错,那么

RHLinux# rlog (如果shell提示没有这个命令的话,找这个文件rcs-xx.-xx.i386.rpm)

RHLinux# rpm -ivh rcs.........

(OK了吗?没有?那你自己再找找原因吧,我没碰到过这种问题)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有