A-A+

SVN的安装配置和恢复测试的方法

2016年01月03日 站长资讯 暂无评论

今天做svn备份恢复测试,借着搭建恢复环境正好学习记录一下相应的安装配置和恢复测试操作。

首先了解一下SVN:

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS转移到Subversion。svn服务器有2种运行方式:独立服务器和借助apache运行。

这里我搭建的就是借助apache运行的svn服务器。

系统环境:CentOS release 6.5 (Final)

使用SSL加密访问 使用LDAP做授权认证

安装前临时关闭selinux和iptables

  1. #setenforce 0  
  2. #/etc/init.d/iptables stop  

1.安装apache和svn以及相应模块和相应的开发包:

  1. #yum install subversion httpd mod_dav_svn openldap-devel  openssl-devel  mod_ssl   expat-devel  libxml2-devel  

2.查看apache模块的情况:

  1. #httpd -M |grep svn  
  2. Syntax OK  
  3.  dav_svn_module (shared)  
  4.  authz_svn_module (shared)                         ##出现这两个模块说明apache整合SVN成功。  
  5. #httpd -M |grep ldap  
  6. Syntax OK  
  7.  ldap_module (shared)  
  8.  authnz_ldap_module (shared)                  ##因为使用的是LDAP认证,所以出现上面LDAP相关的模块说明就可以使用LDAP了。  

在apache配置文件末行加入一下优化配置:

  1. LDAPSharedCacheSize 200000  
  2.   
  3. LDAPCacheEntries 1024  
  4.   
  5. LDAPCacheTTL 600  
  6.   
  7. LDAPOpCacheEntries 1024  
  8.   
  9. LDAPOpCacheTTL 600  

3.启用SSL模块功能和生成证书:

  1. #httpd -M |grep ssl  
  2. Syntax OK  
  3.  ssl_module (shared)                ##出现这个说明正常启用SSL模块功能,没有可能是mod_ssl没有安装。  
  4. #openssl req -new -x509 -nodes -out server.crt -keyout server.key         ##生成证书和私钥  

然后修改/etc/httpd/conf.d/下面的ssl.conf指定证书和私钥。

4.访问测试apache:

  1. #/etc/init.d/httpd  restart  
  2.   
  3. #netstat -anptl |grep 443    ##出现443端口服务器启动正常  

通过地址测试: https://ipaddr

5.定义apache访问SVN配置:

  1. #mkdir /etc/httpd/conf/svnconf.d/                     ##自己定义的SVN配置目录  
  2.   
  3. #vim  httpd.conf  

添加内容如下

  1. Include Include conf/svnconf.d/*.conf  
  2. #cd   svnconf.d  
  3. #vim   test.conf  
  4. <Location /test>  
  5. DAV svn                                        ##开启SVN  
  6.         SVNPath /var/www/svn/repos/test                     ##版本库路径  
  7.   
  8.   
  9.         AuthType Basic  
  10.         AuthName "TestSVN Repository"  
  11.   
  12.         Require valid-user  
  13.         AuthBasicProvider ldap file                     ##先使用LDAP认证  
  14.         AuthzLDAPAuthoritative off   
  15.         AuthLDAPURL "ldap://IP地址:3268/DC=test,DC=local?sAMAccountName?sub?(objectClass=*)" NONE  
  16.         AuthLDAPBindDN svn@test.local           ##LDAP认证账户  
  17.   
  18.         AuthLDAPBindPassword password  
  19.         AuthUserFile /var/www/svn/conf/passwd              ##使用apache htpasswd用户认证文件  
  20.         AuthzSVNAccessFile /var/www/svn/conf/test.acc                        ##访问SVN库的权限配置    
  21.         SSLRequireSSL  
  22. </Location>  

6.配置SVN server:

  1. #svnadmin create test                            ##创建测试用的版本库test   
  2. #chown -R apache.apahce test                               ## 更改库的属主属组为apache用户  
  3. #mkdir -p /var/www/svn/conf  
  4. #cd /var/www/svn/conf   
  5. #vim test.acc  
  6.   [groups]  
  7. g_admin = test                      ##因为是用的LDAP认证所以这里的test是AD账号  
  8.   
  9. [/]  
  10. @g_admin = rw  

在测试访问之前重启一下apache服务

7.做备份恢复测试:

  1. #svnadmin create  svnrestore  
  2.   
  3. #svnadmin load /var/www/svn/repos/svnrestore <svnbackup.dump           ##备份库使用svnadmin dump  

将备份的库的svn配置文件拷贝到svnconf.d目录

重启apache服务访问测试就OK了。

标签:

给我留言