CentOS 7 搭建 Svn 服務器

一、安裝SVN服務端

yum install subversion

二、建立版本庫

svnadmin create /home/myrepos    #這裏的文件目錄本身隨便設置

三、配置svnserve

上述版本庫/home/myrepos創建後在文件夾下會生成hooks、locks、format、conf四個文件夾bash

目錄用途說明:tcp

hooks目錄:放置hook腳本文件的目錄svn

locks目錄:用來放置subversion的db鎖文件和db_logs鎖文件的目錄,用來追蹤存取文件庫的客戶端spa

format文件:是一個文本文件,裏面只放了一個整數,表示當前文件庫配置的版本號code

conf目錄:是這個倉庫的配置文件(倉庫的用戶訪問帳號、權限等),包含3個文件:authz、passwd、svnserve.conform

    文件用途說明:ip

    authz文件:用戶權限配置文件。cmd

    passwd:用戶名密碼配置文件。it

    svnserve.conf:Svn主配置文件。io

        3.一、svnserve.conf修改如下幾個部分:

anon-access = none    #不容許匿名訪問
auth-access = write   #容許寫入
password-db = passwd  #指向驗證用戶名密碼的數據文件 passwd
authz-db = authz      #指向驗證用戶的權限配置文件 authz

        3.二、passwd修改如下內容:

[users]
chen = 123456  #用戶名 = 密碼, 等號表示關聯關係

        3.三、authz修改如下幾個部分:

[groups]
admin = chen  #羣組 admin 包含帳號chen

[/]
@admin = rw   #羣組 admin 有讀寫權限
* =           #以上沒有定義的用戶都沒有任何權限

格式說明:

版本庫目錄格式: 

[<版本庫>:/項目/目錄] 

@<用戶組名> = <權限> 

<用戶名> = <權限>

/ 表示對根目錄(即/svn/project目錄)下的全部子目錄範圍設置權限;

[/abc] 表示對資料庫中abc項目設置權限;

建立一個admin組,組成員只包括chen

admin組對目錄有讀寫權限;

*=表示除了上面設置的權限用戶組之外,其餘全部用戶都設置空權限,空權限表示禁止訪問本目錄,這很重要必定要加上。

注意:對權限配置文件的修改當即生效,沒必要重啓svn。

四、開啓端口

CentOS 7 默認沒有使用iptables,因此經過編輯iptables的配置文件來開啓80端口是不能夠的

CentOS 7 採用了 firewalld 防火牆,Svn默認使用3690端口,如要查詢端口是否開啓,使用如下命令:

firewall-cmd --query-port=3690/tcp --permanent

若是端口未開,使用下面的命令開啓端口:

firewall-cmd --add-port=3690/tcp --permanent

開啓端口後,能夠從新加載防火牆:

firewall-cmd --reload

五、啓動svnserve:

svnserve -d -r /home/myrepos/
相關文章
相關標籤/搜索