Linux下SVN服務器配置過程詳解

本文主要說明Linux下創建SVN庫的方法。

SVN的安裝

下文主要介紹Linux操作系統安裝和SVN服務器安裝說明,以Centos6.2系統為例進行說明,由於Centos操作系統自帶svn安裝包,不需要下載。


安裝CentOS系統

1)插入CentOS的安裝光盤,選擇第一項:

Linux下SVN服務器配置過程詳解

2)跳過媒體測試步驟,如下:

Linux下SVN服務器配置過程詳解

3)選擇英文語言(默認即可)、“Basic Storage Devices”(默認即可),然後一路安裝為默認。到選擇組件這一步,如果想要apache服務,可以如下操作選項如下【此處選擇完成之後,系統會默認安裝相關】。

Linux下SVN服務器配置過程詳解

4)選擇好後,直接下一步安裝,安裝完成後重啟。


安裝svn

1)掛載光盤,利用yum方式安裝(yum方式安裝的確很方便,不用擔心依賴包),打開一個終端,按以下步驟操作:

[root@svn ~]# mkdir /media/cdrom

[root@svn ~]# mount /dev/cdrom /media/cdrom/

//掛載光盤

[root@svn ~]# yum --disablerepo=\\* --enablerepo=c6-media install mod_dav_svn

//使用yum安裝SVN服務器安裝包

2)在安裝過程中,有兩個地方需要輸入“y”

Transaction Summary

===============================

Install download size:2.5 M

Installed size:12M

Is this ok [y/N]: y

Downloading Packages:

---------------------------------------------------------


From :/etc/pki/rm-gpg/RPM-GPG-KEY-CentOS-6

Is this ok [y/N]: y


3)安裝成功後,會出現:

Installed:

mod_dav_svn.i686 0:1.6.11-2.el6_1.4


Dependency Installed:

libproxy.i686 0:0.3.0-2.el6 libproxy-bin.i686 0:0.3.0-2.el6

libproxy-python.i686 0:0.3.0-2.el6 neon.i686 0:0.29.3-1.2.el6

pakchois.i686 0:0.4-3.2.el6 subversion.i686 0:1.6.11-2.el6_1.4


Complete!


4)檢驗svn安裝是否成功

[root@svn Packages]# svn --version

svn, version 1.6.11 (r934486)

//出現以上信息說明已經安裝成功SVN1.6.11版本


創建SVN項目庫

創建一個test項目庫

[root@SVN /]# mkdir /svn

//在根目錄下創建svn文件夾

[root@SVN ~]# svnadmin create /svn/test

//在/svn路徑下,創建test庫。

[root@SVN ~]# cd /svn/test

[root@SVN test]# ls

conf db format hooks locks README.txt

//在“/svn/test”路徑下,查看有這些文件,說明已經創建成功


SVN權限配置

創建svn項目庫之後,需對項目庫進行權限設置設置如下:

[root@SVN conf]# vi /svn/test/conf/svnserve.conf

[general]

anon-access = read

auth-access = write

password-db=passwd

authz-db=authz

realm=/svn/test

//在svnserve.conf配置文件,需修改以上內容。各參數配置如下:

anon-access:定義非授權用戶的訪問權限,有三種方式:none 、 read 、 write ,設置為 none 限制訪問, read 為只讀, write 為具有讀寫權限,默認為 read 。

auth-access:定義授權用戶的訪問權限,有三種方式:none 、 read 、 write ,設置為 none 限制訪問, read 為只讀, write 為具有讀寫權限,默認為 write 。

password-db:定義保存用戶名和密碼的文件名稱,這裡為 passwd ,和該文件位於同一目錄。

authz-db:定義保存授權信息的文件名稱,這裡為 authz ,和該文件位於同一目錄。

realm:定義客戶端連接是的“認證命名空間”, Subversion 會在認證提示裡顯示,並且作為憑證緩存的關鍵字。


創建SVN登錄用戶

在passwd配置文件設置項目庫人員的用戶和密碼

[root@SVN conf]# vi /svn/test/conf/passwd

[users]

user1=123456

user2=123456

u1=123456

u2=123456


配置SVN權限

設置登錄svn權限的配置如下:

[root@SVN conf]# vi /svn/test/conf/authz

[groups]

tester = user1,user2 //表示tester群組裡的成員user1,user2

develop=u1,u2 //表示develop群組裡的成員u1,u2

[test:/] //這表示項目庫權限設置

@tester= rw //表示test庫tester群組用戶具有讀寫權限

@develop = r //表示test庫develop群組用戶具有隻讀權限


重啟SVN項目庫

[root@SVN conf]# svnserve -d -r /svn //重啟SVN項目庫

[root@SVN conf]# ps x|grep svn //如果出現以下進程,說明重啟成功

2169 ? Ss 0:00 svnserve -d -r /svn

2171 pts/0 S+ 0:00 grep svn

[root@SVN conf]# killall svnserve //殺死svnserve服務


SVN服務器配置實例

根據以上步驟創建test項目庫,tester群組人員為user1、user2,權限為讀寫;develop群組人員u1、u2,權限為只讀。

(1)user1用戶,使用SVN客戶端,登錄SVN服務器,如下圖所示:

Linux下SVN服務器配置過程詳解

注意:在登錄時,地址後面直接輸入創建的新項目即可。

(2)登錄成功。上傳test.txt文件和修改txt文件名。可以進行讀寫操作。

(3)使用u1用戶登錄,只能查看test庫。不能進行任何操作。


分享到:


相關文章: