南天一柱 发表于 2018-11-25 11:29:07

linux svn svn+apache

CentOS SVN

操作系统:CentOS5.6 X86_64
subversion: subversion-1.6.11-10.el5_8
mod_dav_svn:mod_dav_svn-1.6.11-10.el5_8
第一步:安装 subversion
yum install subversion mod_dav_svn
版本:svn –version

第二步:创建SVN库和项目
1:mkdir /svn (创建SVN库)
2:svnadmin create /svn/hello (创建项目)

第三步:添加组及组员权限
chown -R apache.apache /svn

第四步:修改项目权限
chmod –R 777 /svn/hello


第五步:修改配置文件
vim /svn/hello/conf/authz

admin = user1,user2    #组名是自己随便定义的,路系统组无关,是一个虚拟的。

@admin = rw
vim /svn/hello/conf/passwd

zhangsan= 000000
lishi = 000000

第六步进去SVN服务,验证


service svnserve restart (启动svn服务)

svn://192.168.1.188/hello

第七步:添加防火墙条目,关闭selinux
selinux:
getenforce 查看selinux 的状态,如果为enforcing,执行如下指令:
setenforce 0
iptables:
iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 3690 -j ACCEPT

注:svn://192.168.1.188/hello 使用的是tcp 3690端口


CentOS SVN+Apache

第一步:安装apache subversion
yum install httpd httpd-devel   subversion mod_dav_svn
验正:ls /etc/httpd/modules | grep svn
验证svn模块(mod_dav_svn)是否正确安装,如正确安装,系统会提示:
mod_authz_svn.so
mod_dav_svn.so
版本:svn –version


第二步:创建SVN库和项目
1:mkdir /svn (创建SVN库)
2:svnadmin create /svn/hello (创建项目)


第三步:添加组及组员权限
chown -R apache.apache /svn


第四步:修改项目权限
chmod –R 777 /svn/hello

第五步:配置httpd
vim /etc/httpd/conf/httpd.conf

首先,你要在改文本中寻找到LoadModule那块代码
增加如下模块:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so


(说明:第一条是为了使客户端能够通过Apache来访问SVN档案库,Apache需要家长mod_dav_svn模块。如果Apache是按照与预设目录安装的,mod_dav_svn模块应该会安装在Apache安装位置(默认路径是/etc/httpd/)的modules子目录内。同时在Apache的配置文件httpd.conf(默认路径是etc/httpd/conf/)中已经使用LoadModules指令加载了该模块,如果没有,手动添加。
且这个指定必须出现在其他的Subversion相关指令之前。还要加载mod_authz_svn.so模块)
一般来说apache2都已正常加载了这两个模块

service httpd start (验下配置文件是否有语法错误)

第六步:配置SVN
vim /etc/httpd/conf.d/subversion.conf (编辑subversion.conf)
   #注意目录路径后要以“/”作为结束
      DAV svn
      SVNListParentPath on
      SVNParentPath /svn
      AuthType basic
      AuthName "Authorization Realm"
AuthzSVNAccessFile /svn/hello/conf/authz
      AuthUserFile    /svn/passwd
      Require valid-user


vim /svn/hello/conf/authz(针对不同用户给予不同权限)

admin = user1,user2    #组名是自己随便定义的,路系统组无关,是一个虚拟的。


@admin = rw

第七步:建立用户
htpasswd –c /svn/passwd zhangsan
htpasswd/svn/passwd lishi

注:第一次添加用户使用参数“-c”以后再添加就不同了
系统提示:
New password:
Re-type new password

第八步:重启服务
service httpd restart (重启apache)
service svnserve restart (启动svn服务)

第八步:防火墙
iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 3690 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


注:svn://192.168.1.188/hello 使用的是tcp 3690端口
http://192.168.1.188/svn/
  




页: [1]
查看完整版本: linux svn svn+apache