首页 > 其他 > 详细

svn部署安装 (安装篇)

时间:2016-03-23 23:41:41      阅读:389      评论:0      收藏:0      [点我收藏+]



一.  Linux 源码编译安装subversion

1. 首先到subversion的官网(http://ftp.meisei-u.ac.jp/mirror/apache/dist/subversion)下载subversion源码包,如下:

cd ~
wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/subversion/subversion-1.9.3.tar.gz

2. 安装subversion

2.1 在正式安装subversion时,需要提前安装 apr, apr-util, sqlite, zlib等组件

<--install Apr-->

wget http://apache.fayea.com//apr/apr-1.5.2.tar.gz 
tar -zxvf apr-1.5.2.tar.gz -C /usr/local/src/
cd /usr/local/src/apr-1.5.2/
./configure --prefix=/usr/local/apr
make && make install

<--install Apr-util-->

wget http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz   
tar -zxvf apr-util-1.5.4.tar.gz -C /usr/local/src/  
cd  /usr/local/src/apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install

<--install sqlite-->

wget http://www.sqlite.org/2016/sqlite-autoconf-3110100.tar.gz
tar -zxvf sqlite-autoconf-3110100.tar.gz -C /usr/local/src/  
cd  /usr/local/src/sqlite-autoconf-3110100
./configure --prefix=/usr/local/sqlite
make && make install

<--install zlib-->

yum install zlib

2.2 编译安装subversion

2.2.1 编译并安装subversion

tar -zxvf subversion-1.9.3.tar.gz -C /usr/local/src/  
cd  /usr/local/src/subversion-1.9.3.tar.gz
./configure \
--prefix=/usr/local/svn \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util/ \
--with-sqlite=/usr/local/sqlite/
make && make install

2.2.2 优化subversion命令路径,并创建SVN数据库存放目录

echo "PATH=/usr/local/svn/bin:$PATH" >> /etc/profile
echo "export PATH" >> /etc/profile
source /etc/profile
mkdir /usr/local/data0svn

2.2.3 编写subversion服务启动脚本

vim /etc/init.d/svn

代码内容如下:

#!/bin/bash
#
# svnserve        Startup script for the Subversion svnserve daemon
#
# chkconfig: - 85 15
# description: The svnserve daemon allows access to Subversion repositories \
#              using the svn network protocol.
# processname: svnserve
# config: /etc/sysconfig/svnserve
# pidfile: /var/run/svnserve.pid
#
### BEGIN INIT INFO
# Provides: svnserve
# Required-Start: $local_fs $remote_fs $network
# Required-Stop: $local_fs $remote_fs $network
# Short-Description: start and stop the svnserve daemon
# Description: The svnserve daemon allows access to Subversion
#   repositories using the svn network protocol.
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

if [ -f /etc/sysconfig/svnserve ];
then
. /etc/sysconfig/svnserve
fi
svnrepo=/usr/local/data0svn
exec=/usr/bin/svnserve
prog=svnserve
pidfile=${PIDFILE-/var/run/svnserve.pid}
lockfile=${LOCKFILE-/var/lock/subsys/svnserve}
args="-d --pid-file=${pidfile} -r $svnrepo --listen-host 0.0.0.0 "
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog

lockfile=/var/lock/subsys/$prog

start() {
   [ -x $exec ] || exit 5
   [ -f $config ] || exit 6
   echo -n $"Starting $prog: "
   daemon   $exec $args

   retval=$?
   echo
   if [ $retval -eq 0 ]; then
       touch $lockfile || retval=4
   fi
   return $retval
}

stop() {
   echo -n $"Stopping $prog: "
   killproc -p ${pidfile} $prog
   retval=$?
   echo
   [ $retval -eq 0 ] && rm -f $lockfile
   return $retval
}

restart() {
   stop
   start
}

reload() {
   restart
}

force_reload() {
   restart
}

rh_status() {
   # run checks to determine if the service is running or use generic status
   status -p ${pidfile} $prog
}

rh_status_q() {
   rh_status >/dev/null 2>&1
}

case "$1" in
start)
    rh_status_q && exit 0
    $1
    ;;
stop)
    rh_status_q || exit 0
    $1
    ;;
restart)
    $1
    ;;
reload)
    rh_status_q || exit 7
    $1
    ;;
force-reload)
    force_reload
    ;;
status)
    rh_status
    ;;
condrestart|try-restart)
    rh_status_q || exit 0
    restart
    ;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
       exit 2
esac
                                                                   

授权并启动该脚本

# chmod 777 /etc/init.d/lvs-dr

# service svn start

2.4 使用svnadmin创建SVN项目,如下:

cd /usr/local/datasvn
svnadmin create preject01

这时我们会发现在/us/local/datasvn下存在preject01目录

技术分享

分别编辑conf下的svnserver.conf ,auth,passwd

编辑svnserver.conf文件,修改svn的认证方式以及用户权限属性以及目录权限属性
修改至如下内容
技术分享

编辑authz文件,设置svn目录读写权限,内容如下


编辑passwd文件,添加认证svn的用户

echo “admin = admin123” >> /usr/local/data0svn/preject01/conf/passwd

上述动作操作完成后,我们通过svn客户端端就可以访问到svn,如下所示:


看到以上页面说明,subversion顺利部署完成!


总结

本文出自 “菜鸟的成长记” 博客,请务必保留此出处http://blief.blog.51cto.com/6170059/1754507

svn部署安装 (安装篇)

原文:http://blief.blog.51cto.com/6170059/1754507

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!