1. 程式人生 > >[記錄]CentOS搭建SVN服務器(主從同步)

[記錄]CentOS搭建SVN服務器(主從同步)

啟動svn 帳號 執行 yum 文件 安裝 pass epo repo

CentOS搭建SVN服務器(主從同步)
1.安裝步驟如下:
1)安裝:
#yum install subversion
2)查看安裝位置:
#rpm -ql subversion
3)查看版本:
#/usr/bin/svnversion --version
2.創建svn版本庫目錄
#mkdir -p /var/svn/svnrepos
3.創建版本庫
#svnadmin create /var/svn/svnrepos
4.進入/var/svn/svnrepos/conf目錄
1)authz文件是權限控制文件
2)passwd是帳號密碼文件
3)svnserve.conf SVN服務配置文件
5.設置帳號密碼,在[users]塊中添加用戶和密碼,格式:帳號=密碼,如test=test
#vi passwd
[users]
test=test
6.設置權限
#vi authz
[/]
test=rw
test1=r
#意思是版本庫的根目錄test對其有讀寫權限,test1只有讀權限。
7.修改svnserve.conf文件
#vi svnserve.conf
#打開下面的幾個註釋:
anon-access = read #匿名用戶可讀
auth-access = write #授權用戶可寫
password-db = passwd #使用哪個文件作為賬號文件
authz-db = authz #使用哪個文件作為權限文件
realm = /var/svn/svnrepos # 認證空間名,版本庫所在目錄
8.啟動svn版本庫
svnserve -d -r /var/svn/svnrepos
9.在Windows上測試
10.svn主從
server1: 192.168.1.2
server2: 192.168.1.3
首先在sever1和sever2上搭建好svn,現在的目的是將server1同步備份到server2
1)修改hooks文件:
#cp /var/svn/svnrepos/hooks/pre-revprop-change.tmpl /var/svn/svnrepos/hooks/pre-revprop-change
#cat /var/svn/svnrepos/hooks/pre-revprop-change
#!/bin/bash

echo "Changing revision properties other than svn:log is prohibited" >&2
exit 0
2)在server1上直接運行:
#svnsync init svn://192.168.1.2/var/svn/svnrepos svn://192.168.1.3/var/svn/svnrepos --username test --password test
3)上一步成功之後,以後就可以直接同步了:
#svnsync sync svn://192.168.1.2/var/svn/svnrepos
4)為了讓server1每次有更新之後都自動同步到server2,可以在server1的commit的hooks最後加上執行一下同步的命令(或者使用腳本定時執行):
#svnsync sync svn://192.168.1.2/var/svn/svnrepos

[記錄]CentOS搭建SVN服務器(主從同步)