红联Linux门户
Linux帮助

CentOS 6.2部署CSVN服务器

发布时间:2015-04-09 11:02:50来源:linux网站作者:jishuweiwang

怎么现在又用CSVN呢,原因很简单,懒人一个,你能拿鼠标点点就解决的问题,你会急急忙忙的去登陆服务器,然后配置半天,指不定多了一个点或者其他问题,发现配置没成功,svn坏了... 所以,还是用傻瓜式的网页操作吧!

本人系统:CentOS 6.2


1. 首先获取安装包 http://www.collab.net/downloads/subversion#tab-1

我使用的是  CollabNetSubversionEdge-3.3.2_linux-x86_64.tar.gz,你们可以随意

本来还需要java :jre-6u26-linux-i586.bin的,但是我装机的时候已经有了,所以这里就不需要了。

http://help.collab.net/  参考安装


2. 添加csvn运行账户 csvn,以及用户的环境变量

[root@gang jvm]# useradd -m csvn

[root@gang jvm]# vim /home/csvn/.bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

export JAVA_HOME=/usr/lib/jvm/java-1.6.0

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH


3. 解压文件 CSVN

[root@gang mnt]# tar zxf CollabNetSubversionEdge-3.3.2_linux-x86_64.tar.gz -C /data

这时,会在/data/目录下解压生成一个目录csvn

[root@gang data]# chown -R csvn.csvn csvn

--注:CSVN的运行用户不能是root,所以csvn文件夹的主用户和组需要修改为csvn(随意定)


4. 给予csvn权限,以便创建

[root@gang data]# visudo

添加: csvn    ALL=(ALL)      ALL

[root@gang data]# su - csvn

[csvn@gang ~]$ /data/csvn/bin/csvn install

Must be root to perform this action.  ---此时提示不可以。

[csvn@gang ~]$ sudo -E /data/csvn/bin/csvn install

[sudo] password for csvn:                  ---输入csvn密码 ,之后会自动安装完成
CentOS 6.2部署CSVN服务器

[csvn@gang ~]$ /data/csvn/bin/csvn start
CentOS 6.2部署CSVN服务器

[root@gang data ~]# chown root:csvn /data/csvn/lib/httpd_bind/httpd_bind

[root@gang data ~]# chmod u+s /data/csvn/lib/httpd_bind/httpd_bind

另外,此时别忘记启动apache,毕竟是建立在svn+apache+java的工具

[root@gang data]# /data/csvn/bin/httpd -f /data/csvn/data/conf/httpd.conf -k restart

此时,打开 http://IP:3343/csvn 就可以访问,默认为admin : admin

或者 https://IP:4434/csvn 也可以访问  其实二者为同一网站,只是链接方式不同而已,具体使用方法,请查看官网文档。


顺便说下几个配置文档

路径:①/data/csvn/data/conf/csvn.conf

里边可以修改csvn的运行用户,以及访问的url端口,还能看到运行所用的JAVA_HOME路径

② /data/csvn/data/conf/svn_access_file  配置用户组以及权限的地方

③ /data/csvn/data/conf/csvn_main_httpd.conf

定义了客户端访问的域名和端口,如果才用了ldap认证的话,还能看到ldap的认证信息
CentOS 6.2部署CSVN服务器

这里定义了连个http访问的端口,我监听两个 :18080 和 :8080


另外给大家一个图参考

其中 AuthLDAPBindPassword 是LADP 给予的认证授权密码
CentOS 6.2部署CSVN服务器

如果修改了默认的端口18080,改用80端口,还需要修改/data/csvn/data/conf/svn_viewvc_httpd.conf ,否则客户端无妨通过 http://url:81/svn访问数据
CentOS 6.2部署CSVN服务器

④ /data/csvn/data/conf/httpd.conf

web服务的主配置程序,从里边Include调用了其他的配置文件,

例如:csvn_main_httpd.conf,csvn_logging.conf,svn_viewvc_httpd.conf

⑤ /data/csvn/data/conf/svn_auth_file  存储认证信息

网页中,引入ldap认证的信息
CentOS 6.2部署CSVN服务器

注:以上图片上传到红联Linux系统教程频道中。


附注:CSVN 用的是FSFS的形式存储数据。

版本库信息位于/data/csvn/data/repositories下。