Linux下SVN服務器安裝配置及客戶端安裝說明


原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_zf7k6J6EHSszq4ZU_Tyn0JimTKV8SzI9Ac4veaxCG3im

 

Linux

SVN

服務器安裝配置

 

 

第一章

 

安裝

 

1. 

采用源文件編譯安裝。源文件共兩個,為:

  

 

subversion-1.6.1.tar.gz  

subversion 

源文件)

  

 

subversion-deps-1.6.1.tar.gz  

subversion

依賴文件)

  

 

注意文件版本必須一致

,

否則很容易產生各種奇怪的問題

2. 

上傳以上兩個文件到服務器上,解壓。解壓命令為:

  

 

tar xfvz subversion-1.6.1.tar.gz  

 

tar xfvz subversion-deps-1.6.1.tar.gz  

 

指令簡介:

tar 

為解壓命令,

xfvz

tar

命令的參數,用於解壓

tar.gz

格式壓

縮的文件。

 

 

3. 

解壓后生成

 subversion-1.6.1 

子目錄,兩個壓縮包解壓后都會自動放到此

目錄下,不用手動更改。

 

 

4. 

進入解壓子目錄:

  

cd subversion-1.6.1 

 

5. 

執行

 

 ./configure --prefix=/usr/local/svn  

./configure

時會出現以下錯誤:

configure: error: We require OpenSSL; try 

with-openssl configure failed for serf

 

這是因為沒有安裝

openssl

相關包

 

 

openssl

官方網址:

http://www.openssl.org/ 

linux

 

openssl

的安裝:

 

wget 

http://www.openssl.org/source/openssl-1.0.0g.tar.gz

 

 

tar xvzf openssl-1.0.0g.tar.gz 

cd openssl-1.0.0g 

 

然后:

 

./config --prefix=/usr/local/ssl shared zlib-dynamic enable-camellia 

 

 

更多詳細幫助請運行

 

./config --help 

 

 

然后執行:

 

 

 

make  depend 

 

Make 

Make  test 

make install 

 

編輯

/etc/ld.so.conf, add to paths /usr/local/ssl/lib

(可以直接在

/etc/ld.so.conf.d

文件夾下再創建一個

.conf

文件,

/usr/local/ssl/lib

貝到里面,另外也可以在現有的

.conf

文件中添加

/usr/local/ssl/lib

這個路

徑,反正

ld.so.conf

中包含了這個文件夾下的所有

.conf

文件)

 

 

安裝之后會在

/usr/local

下生成一個

ssl

目錄,

設置環境變量,

/etc/profile

PATH

中增加如下內容:

 

PATH=/usr/local/ssl/bin:/sbin/:$PATH:/usr/sbin 

export PATH 

 

6.

再進到

subversion-1.6.1 

再執行

 ./configure --prefix=/opt/subversion 

進行配置設定並指明安裝目錄

注意

prefix

前是兩個減號

默認不帶

BDB

所以默認使用的是

FSFS

模式

若想使用

BDB

模式需另外下載

BDB

.

建議使用

FSFS

模式

.  

指令簡介:

configure

命令用於檢查安裝平台和目標特征,

prefix

用於指定路徑。

  

 

configure

完成可能會出現

You 

don’t 

seem 

to 

have 

Berkele

DB 

version 

4.0.14 

or 

newer  installed 

and 

linked 

to 

APR-UTIL.  We 

have 

created 

Makefiles 

which  will 

build without the Berkeley DB back-end; your repositories will use FSFS as the default back-end.  You can find the latest version 

of Berkeley DB here: 

 http://www.oracle.com/technology/software/products/berkeley-db/index.html 

你似乎沒有

Berkeley DB

版本

4.0.14

或更新版本安裝並鏈接至四月

- util

的。我們已創建

Makefile

文件的將建立一個沒有了

Berkeley DB

后端,

你的版本庫作為默認后端使用

FSFS

格式。你可以找到最新版本

Berkeley DB

的位置。

 

 

這個提示可以跳過

因為不使用

BDB

存儲。

 

 

7. 

執行

 make 

編譯

.  

 

8. 

執行

 make install 

安裝

.  

 

 

9. 

添加環境變量

:  

 

vi /etc/profile  

 

在文件最后加入

:  

 

SVNPATH=$PATH:/usr/local/svn/bin  

 

export SVNPATH  

 

10. 

測試

SVN

是否安裝成功

,

執行

:  

 

 svnserve --version  

 

如果顯示版本信息

則安裝成功

(如果沒有安裝

svnserve

請先安裝

apt-get 

install subversion

 

 

 

第二章

 

配置

 

 

 

 

本系統采用為每個項目單獨建一版本庫的策略。

配置文件,

密碼文件,

訪問控制

文件等都放在版本庫的

conf

目錄下。所以每次開始一個新項目都必須新建一個

版本庫,

並重新配置各配置文件。

還有很重要的一條,

要求各組員重新配置客戶

端,包括服務器版本庫路徑,本地路徑等信息。

  

 

 

1. 

建立版本庫目錄,

建立好的版本庫目錄與安裝目錄不在同級目錄下

(

可建立多

個,新建庫后以下各項都需重新配置。注意區別安裝目錄與版本庫目錄

,

以下講

的都是版本庫目錄

)  

 

mkdir 

p /opt/svndata/repos  

 

2. 

建立

svn

版本庫

(

與上面目錄對應

)  

 

svnadmin create /opt/svndata/repos  

 

執行此命令后

svn

自動在

repos

目錄下添加必須的配置文件

.  

 

注意

:

版本庫不同於一般的文件夾

直接在操作系統上新建文件無法被

SVN

識別

必須使用

import

等命令將文件導入版本庫

.  

 

此為

svn

內部指令,

create

用於新建版本庫。請使用

svn help

查看詳細說明。

  

 

 

 

3. 

修改版本庫配置文件

  

 

vi /opt/svndata/repos/conf/svnserve.conf  

 

各參數功能在配置文件的注釋中有說明

此處配置如下

:  

 

[general]  

 

anon-access = none # 

使非授權用戶無法訪問

  

 

auth-access = write # 

使授權用戶有寫權限

  

 

password-db = /opt/svndata/repos/conf/passwd  # 

指明密碼文件路徑

  

 

authz-db = /opt/svndata/repos/conf/authz    # 

訪問控制文件

 

 

realm = /opt/svndata/repos   # 

認證命名空間,

subversion

會在認證提示里

顯示,並且作為憑證緩存的關鍵字。

  

 

其它采用默認配置

各語句都必須頂格寫

左側不能留空格

否則會出錯

.  

 

指令簡介:這是

svn

配置文件的格式,請按照以上格式書寫。

  

 

4. 

配置用戶

  

 

passwd

文件

 

 

輸入以下內容:

  

 

[users]  

<

用戶

1> = <

密碼

1> admin = admin 

<

用戶

2> = <

密碼

2> username2 = password2 

 

可以添加多個,此為用戶名密碼對。

  

 

5. 

配置權限

  

 

authz

文件

 

 

指令簡介:

此配置文件采用“基於路徑的授權”策略,

中括號里指定路徑,

以下

列出對各用戶的授權。包括只讀

r

,讀寫

rw

。沒有列出的用戶,則不允許訪問。

還可以對用戶分組,具體請參考

svn

手冊,以下是簡單例子:

  

 

用戶組格式:

 

[groups] 

<

用戶組名

> = <

用戶

1>,<

用戶

2> 

其中,

1

個用戶組可以包含

1

個或多個用戶,用戶間以逗號分隔。

 

版本庫目錄格式:

 

[<

版本庫

>:/

項目

/

目錄

@<

用戶組名

> = <

權限

<

用戶名

> = <

權限

其中,方框號內部分可以有多種寫法

/,

表示根目錄及以下。根目錄是

svnserve

啟動時指定的,我們指定

/opt/svndata

。這樣,

/

就是表示對全部版本庫設置權限。

 

repos1:/,

表示對版本庫

1

設置權限

 

repos2:/abc, ,

表示對版本庫

2

中的

abc

項目設置權限

 

repos2:/abc/aaa, ,

表示對版本庫

2

中的

abc

項目的

aaa

目錄設置權限

 

權限主體可以是用戶組、用戶或

*

,用戶組在前面加

@

*

表示全部用戶。權限可

以是

w

r

wr

和空,空表示沒有任何權限。

 

示例:

 

[groups] 

MDS4000II_group = admin,zhangl 

[/] 

admin = rw 

viewer = r 

[/dev] 

admin = rw 

viewer = r 

* = 

[/baseline] 

admin = rw 

* = 

[/prj] 

admin = rw 

* = 

[/dev/01 MDS4000II] 

@MDS4000II_group = rw 

* = 

注意:配置

auth 

passwd

svnserve.conf

一定要心細,否則客戶端訪問時會認證失敗,如不能訪問,

百度和谷歌上有很多資料可供參考。

 

三、啟動

svn 

 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM