Subversion的安装部署与用户验证配置
2016-04-18 15:52
225 查看
注:本例采取subversion+apache的模式
一:所需软件包下载
编译svn需要依赖sqlite库,RHEL5自带的rpm包版本太低,编译不能通过。
一:所需软件包下载
编译svn需要依赖sqlite库,RHEL5自带的rpm包版本太低,编译不能通过。
#wget http://www.sqlite.org/sqlite-amalgamation-3.6.13.tar.gz #wget http://subversion.tigris.org/downloads/subversion-1.6.12.tar.bz2 #wget http://archive.apache.org/dist/httpd/httpd-2.2.16.tar.gz[/code] href="http://archive.apache.org/dist/httpd/httpd-2.2.16.tar.gz" target=_blank>
二:sqlite库编译安装#tar -zxvf sqlite-amalgamation-3.6.13.tar.gz #cd sqlite-3.6.13/ #./configure--prefix=/usr/local/sqlite #make && make install
三:apache编译安装#cd../ #tar -zxvf httpd-2.2.16.tar.gz #cd httpd-2.2.16.tar.gz ---subversion与apache结合的时候,需要使用apache服务器的dav模块,在编译apache的时候,需添加 --enable-dav选项 #./configure --prefix=/usr/local/apache --enable-dav --enable-so --enable-rewrite --enable-headers --enable-expires --enable-mods-shared=all #make&& make install
四:subversion编译安装#cd../ #tar -jxvf subversion-1.6.12.tar.bz2 #cd subversion-1.6.12 #./configure --prefix=/usr/local/subversion --with-sasl --with-zlib=/usr/lib --with-ssl --with-sqlite=/usr/local/sqlite --with-apxs=/usr/local/apache/bin/apxs #make && make install
五:配置apache支持subversion
1:查看apache是否编译了dav模块:#cat/usr/local/apache/build/config.nice "./configure" \ "--prefix=/home/usr/local/apache"\ "--enable-so" \ "--enable-rewrite" \ "--enable-headers" \ "--enable-dav"\ ---有dav模块 "--enable-expires" \ "--enable-mods-shared=all" \ "$@"
2:配置apache主配置文件httpd.conf
修改servername:
Servername localhost:80取消拓展配置文件中httpd-vhosts.conf之前的注释:Includeconf /extra/httpd-vhosts.conf
3:配置/usr/local/apache/conf/extra/httpd-vhosts.conf#cat /usr/local/apache/conf/extra/httpd-vhosts.conf NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "/svn_data" ServerName 192.168.189.132 <Directory /svn_data> Order allow,deny Allow from all </Directory> </VirtualHost> <Location /svn> DAV svn SVNListParentPath on SVNParentPath /svn_data/ SVNPathAuthz Off </Location>
创建/svn_data目录:#mkdir -p /svn_data
4:启动apache服务
验证配置文件语法:#/usr/local/apache/bin/apachectl -t如果正常,则显示“SyntaxOK”。
首次配置subversion+apache时,通常会出现如下错误:
httpd: Syntax error online 105 of /usr/local/apache2.2.15/conf/httpd.conf: Cannot load/usr/local/apache2.2.15/modules/mod_dav_svn.so into server:/usr/local/subversion/lib/libsvn_subr-1.so.0: undefined symbol: sqlite3_open_v2
使用如下方法解决:#echo “/usr/local/sqlite/lib” >>/etc/ld.so.conf #ldconfig
若使用上述方法依然无法解决错误,则查看系统是否为64为,再使用以下方法:#mv /usr/lib64/libsqlite3.so.0.8.6 /root/bak #ln -s /usr/local/sqlite/lib/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0.8.6 #ldconfig
六:测试subversion
创建svn目录cmh:#svnadmin create /svn_data/cmh #ls /svn_data/cmh conf db format hooks locks README.txt
web界面测试:
出现以上界面,说明subversion初步配置使用完成。
七:配置subversion用户验证
创建subversion配置目录,并创建验证文件:#mkdir /usr/local/subversion/conf #cd /usr/local/subversion/conf #touch authz #cat authz (配置组、用户、目录权限) [groups] admin = admin,cmh tech = user1,user2 [cmh:/] @admin = rw @tech = r
使用apache的htpasswd命令创建passwd文件(首次创建用-cm,后续添加用户用-m):#/usr/local/apache/bin/htpasswd-cm /usr/local/subversion/conf/passwd cmh配置/usr/local/apache2.2.15/conf/httpd.conf文件,在svn目录下添加验证配置。<Location/svn> DAV svn SVNListParentPathon SVNParentPath /svn_data/ SVNPathAuthz On AuthzSVNAccessFile/usr/local/subversion/conf/authz AuthName "Private Svn" AuthType Basic AuthUserFile/usr/local/subversion/conf/passwd Require valid-user </Location>
重启apache:#/usr/local/apache/bin/apachectl –t #/usr/local/apache/bin/apachectl –k restart
web验证:
本文出自 “扮演上帝的小丑” 博客,转载请与作者联系!
相关文章推荐
- 事件传递机制
- Android 开发之 ---- 底层驱动开发(二)
- 应用程序跳转
- sublime text 3 phpcs插件无效 UnicodeDecodeError错误解决方法
- pod trunk push --verbose 失败的原因总结
- explain分析查询
- 关于QT的系统总结
- android 的Util工具类
- JMeter-使用Badboy录制Web测试脚本
- Lab 相关 ---- 无法读取项目文件 xxx.vcxproj 的解决方法
- 选择排序
- Android 开发之 ---- 底层驱动开发(一)
- Spring中事务的问题
- uva11404
- 前端学习学习再学习
- linux2T以上分区格式化
- Qualification Round 2016(A. Counting Sheep,B. Revenge of the Pancakes,C. Coin Jam,D. Fractiles(构造))
- CUDA简要学习
- 各种证书生成和转换
- (13)处理静态资源(自定义资源映射)【从零开始学Spring Boot】