免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5485 | 回复: 4
打印 上一主题 下一主题

[FreeBSD] 在FreeBSD上CVSD的安装与配置 [复制链接]

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-02-20 01:33 |只看该作者 |倒序浏览
要说明的是,我是按照老黄的cvsd安装配置方法来进行的安装,过程中发现了一些问题,所以我特别重新写了一篇新的文档,让大家避免出现不必要的麻烦

1.        安装cvsd
我们来使用ports来安装cvsd,执行下列命令:


  1. cd /usr/ports/devel/cvsd
  2. make install clean
复制代码

2.        配置cvsd
我们先来建立cvsd的自启动脚本,执行下列命令:

  1. cd /usr/local/etc/rc.d
  2. mv cvsd.sh.sample cvsd.sh
  3. chmod 755 cvsd.sh
复制代码

注意:在真正启动cvsd服务之前,你需要确定当前并没有启动基于inetd的cvs服务器。请将/etc/inetd.conf中的cvs pserver的服务加上注释。如果有两个cvs服务器同时运行,第二个运行的服务器将不能绑定端口的。

之后让我们来建立我们想要存放代码的目录,执行下列命令:

  1. mkdir /home/quake/cvsd
  2. mkdir /home/quake/cvsd/test
复制代码

cvsd是我们的cvs库的根目录,这个目录用来存放我们的各个源码目录以及以jail方式运行cvs时所需的一些必要的文件,主要是一些系统文件。而test目录就是我们一个源码库的目录。建好这些目录以后我们最后会对源码库目录初始化一下:

  1. cvs -d /home/quake/cvsd/test init
复制代码

之后我们对cvsd的配置文件进行一些必要的配置,以保证正常的运转:

  1. # 设置我们源码库的根目录
  2. RootJail /home/quake/cvsd

  3. # 启动cvs的用户
  4. Uid cvsd

  5. # 启动用户所属的组
  6. Gid cvsd

  7. # Nice <num>;
  8. Nice 1

  9. # 文件存放掩码,027说明文件的存放权限为750,如果使用cvsweb,需要设置为022
  10. Umask 027

  11. # 出错时不生成coredump
  12. Limit coredumpsize 0

  13. # 运行时pid文件,通过修改这个,我们可以通过不同的cvsd.conf启动多个cvsd服务器
  14. PidFile /var/run/cvsd.pid

  15. # cvsd服务器监听的地址和端口
  16. #Listen * 2401

  17. # 最大连接数
  18. MaxConnections 10

  19. #日值文件,设置格式为 Log <scheme/file>; [<loglevel>;]
  20. Log syslog info
  21. #Log /var/log/cvsd.log debug

  22. #设置源码库的路径
  23. # Repos <path>;
  24. Repos /test

复制代码

这里特别需要注意的是Uid和Gid一定是已经存在于系统的用户和组,否则cvsd是无法启动的。同时还需要说明的是,这个Uid和Gid与运行在jail中的cvsd的用户/组没有任何关系。
之后我们开始为源码库建立用户帐号。我们通过下列命令来完成:

  1. cvsd-passwd /home/quake/cvsd/test quake
  2. (输入帐号密码)
  3. cvsd-buildroot /home/quake/cvsd
复制代码


必须注意的是,至少在现在的cvsd 1.0的版本中,在运行cvsd-buildroot命令前,我们必须在服务器根目录中有至少一个源码库,而这个源码库中已经使用cvsd-passwd生成了至少一个帐号,即在源码库中生成一个带有帐号的passwd文件。然后再运行cvsd-buildroot构建jail所需的系统文件。否则通过cvsd-passwd添加的帐号将无法由cvsd服务器使用。在此之后我们再添加新的帐号和源码库的时候都会自动的通过其中的passwd文件来进行认证了,不需要再次执行cvsd-buildroot命令。而且经过我反复测试,现在在源码库目录中的CVSROOT/config文件里面增加SystemAuth=no设置已经不具有任何意义了。无论是否设置它,只要在运行cvsd-buildroot前使用cvsd-passwd添加一个帐号,cvsd都会通过源码库中的passwd文件进行认证。

论坛徽章:
0
2 [报告]
发表于 2004-02-20 08:46 |只看该作者

在FreeBSD上CVSD的安装与配置

好文章,顶!

论坛徽章:
0
3 [报告]
发表于 2009-03-23 13:10 |只看该作者
我在freebsd 6.1下按照步骤安装,不能成功阿。
使用ports安装了 cvsd-1.0.8和cvs+ipv6-1.11.17
全部配置好后启动cvsd,用wincvs登陆提示CVS exited normally with code 0就退出了


  1. cvs -d :pserver;username=test;password=test;hostname=xxxxx;port=2401:/te... login
  2. Logging in to :pserver:test@192.168.5.10:2401:/test

  3. ***** CVS exited normally with code 0 *****
复制代码

在log文件中记录:cvs command exited with exit-status 0

请问是怎末回事?

另外这边文章中让人疑惑的地方有:
1.不是#开头的命令是否都是在cvsd用户下执行?
2.cvsd-passwd /home/quake/cvsd/test quake这条命令应该在quake前面有个+吧?我看cvsd-passwd的提示是这样的
3.还是搞不清楚为何是先执行cvsd-passwd后再执行cvsd-buildroot /home/quake/cvsd呢,目录都没初始化阿,难道执行cvsd-passwd后不是写入home/quake/cvsd/etc/pwd.db嘛?

论坛徽章:
0
4 [报告]
发表于 2009-03-23 15:05 |只看该作者
楼主的好贴,学习了
改天是否再写个 svn + trac啊之类的教程?

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
5 [报告]
发表于 2009-03-23 15:55 |只看该作者
传说中的有素质青年!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP