1. 程式人生 > >linux 安裝subversion-1.9.4

linux 安裝subversion-1.9.4

1.下載:

https://subversion.apache.org/download.cgi#recommended-release

http://apache.fayea.com/subversion/subversion-1.9.4.tar.gz

Checksum (SHA1):43a7e47c1fca0ed9ba79564bdcd2d7ba0cbfb905

2.解壓

 #tar xzfv subversion-1.9.4.tar.gz

 解壓到當前目錄的subversion-1.9.4 目錄下。

依賴軟體包安裝過程基本一樣,解壓 、配置、編譯、安裝

3.安裝APR 和 apr-util

下載:

https://apr.apache.org/download.cgi

http://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz

http://mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.gz

安裝 apr(使用root)

#tar zxvf apr-1.5.2.tar.gz  

#cd apr-1.5.2  

#./configure --prefix=/usr/local/apr

#make && make install  

安裝 apr-util (使用root)

#tar xzfv apr-util-1.5.4.tar.gz

#cd apr-util-1.5.4

#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

#make && make install  

4 安裝sqlite

下載

http://www.sqlite.org/download.html

http://www.sqlite.org/2016/sqlite-autoconf-3130000.tar.gz

安裝(使用root):

#tar xzfv sqlite-autoconf-3130000.tar.gz

#cd sqlite-autoconf-3130000

#./configure --prefix=/usr/local/sqlite

#make && make install

5.安裝zib

下載:

http://www.zlib.net/

http://zlib.net/zlib-1.2.8.tar.gz (有問題)

http://download.csdn.net/download/qin1174586290/6364757

安裝(使用root):

#tar xzfv zlib-1.2.8.tar.gz

#cd zlbi-1.2.8

#./configure --prefix=/usr/local/zlib

#make && make install

安裝serf  yum install scons

6.安裝 svn

# cd  subversion-1.9.4 

#./configure --prefix=/usr/local/svn1.9.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-sqlite=/usr/local/sqlite --with-zlib=/usr/local/zlib

#make && make install

7.設定環境

加入svn path

#vi /etc/profile

    在檔案最後面新增

    PATH=/usr/local/svn1.9.4/bin:$PATH

    export path

    退出執行  

#  .  /etc/profile

8.測試 svnserve --version 

 安裝成功返回:

svnserve,版本 1.9.4 (r1740329)

   編譯於 Jun 22 2016,18:23:45 在 x86_64-unknown-linux-gnu

Copyright (C) 2016 The Apache Software Foundation.

This software consists of contributions made by many people;

see the NOTICE file for more information.

Subversion is open source software, see http://subversion.apache.org/

下列版本庫後端(FS) 模組可用: 

* fs_fs : 模組與文字檔案(FSFS)版本庫一起工作。

* fs_x : Module for working with an experimental (FSX) repository.

9.svn倉庫建立(倉庫test)

#mkdir -p /var/svn/  

#cd /var/svn/  

#/var/svn/svnadmin create test

#cd www/conf/  

#ll

10.版本庫資訊

專案配置:

#vi svnserve.conf

修改:去掉註釋符 

anon-access = none  

auth-access = write

password-db = passwd

authzauthz-db = authz 

realm = test

這裡要注意:每一行的都要你頂頭,不能有空格,不然會報錯!

定義版本庫訪問許可權:

# vi authz  

新增: (svnuser為svn使用者名稱,這裡可以用使用者組設定許可權r:read w:wirte)

[/]   

svnuser = rw  

設定使用者密碼: 

# vi passwd  

新增(使用者名稱=密碼): 

svnuser = 123456  

11:

最後給這個svn庫使用預設埠3690啟動命令:

#sudo svnserve -d  -r /var/svn/test 

使用8089埠:

#sudo svnserve -d --listen-port 8089 -r /var/svn/test

注意:後面啟動系統後給這個svn庫啟動的時候就用此命令。

檢視是否啟動成功

#sudo ps -ef | grep svnserve

檢視埠

#sudo netstat -anp |grep svnserve

檢視svn日誌

#svn log svn://192.168.1.107 --username vsnuser --password 123456

12 安裝服務

新建檔案svnserve,內容如下:

#!/bin/bash  

#

# chkconfig: 2345 10 90  

### BEGIN INIT INFO

# Provides:          svnserve

# Required-Start:    $remote_fs $network

# Required-Stop:     $remote_fs $network

# Default-Start:     2 3 4 5

# Default-Stop:      0 1 6

# Short-Description: The svnserve Application Server

### END INIT INFO

# description: Starts and Stops the svnserve daemon.  

SVN_HOME=/usr/local/svn1.9.4

SVN_START=$SVN_HOME/bin/svnserve

SVN_ROOT=/var/svn/www

start(){  

echo "Starting svnserve: "  

${SVN_START} -d  -r $SVN_ROOT 

echo "svnserve start ok."

}  

stop(){  

echo "Shutting down svnserve: "  

killall -9 svnserve 

echo "svnserve stop ok." 

}  

restart(){  

stop  

sleep 5

start  

}  

status(){  

 netstat -anp |grep svnserve

 ps -ef | grep svnserve

}  

case "$1" in  

start)  

start ;;  

stop)  

stop ;;  

restart)  

restart;;  

status)  

status ;;  

*)  

echo "Usage: svnserve {start|stop|restart|status}"  

exit 1  

esac  

exit 0

把svnserve複製到/etc/init.d 下

設定許可權

#cd /etc/init.d

#chmod 755 svnserve

啟動:​

#service svnserve start​ 或 #./svnserve start

出現問題的話試著執行:

# systemctl start svnserve.service

# systemctl enable svnserve.service

#systemctl start  svnserve

#systemcltl status svnserve