ice world

There is nothing too difficult if you put your heart into it.
posts - 104, comments - 103, trackbacks - 0, articles - 0

SVN(Subversion)自动同步备份配置

Posted on 2014-01-23 11:08 IceWee 阅读(633) 评论(0)  编辑  收藏 所属分类: Others
源机器:192.168.1.1
备份机器:192.168.1.2

前提条件:
1、两台机器的网络是连通的
2、两台机器必须同时安装了SVN服务器

假设:
源机器上需要同步的库名为autoSync,访问地址为:svn://192.168.1.1/autoSync,对其具备读写权限的账户:sync/sync

备份机器配置:
1、创建与源机器库名相同的空库
# 假设备份机器的SVN根目录建立在 /home/backup/svn/repository下
svnadmin create /home/backup/svn/repository/autoSync

2、配置备份机器上的autoSync
分别修改conf下的svnserve.conf、passwd、authz,根据实际情况配置,假设创建了用户sync/sync,对库autoSync具备读写权限,配置方法略,配置完成后启动SVN服务

3、创建并修改pre-revprop-change文件
cd /home/backup/svn/repository/autoSync/hooks
cp pre
-revprop-change.tmpl pre-revprop-change
vi pre-revprop-change

将文件末尾的“exit 1”改为“exit 0”即可,保存退出
REPOS="$1"
REV
="$2"
USER
="$3"
PROPNAME
="$4"
ACTION
="$5"

if
[ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi

echo
"Changing revision properties other than svn:log is prohibited" >&2
exit
0

增加可执行权限
chmod 755 pre-revprop-change

4、初始化
命令:
svnsync init --username 用户名 --password 密码 备份机器库URL 源机器库URL

说明:
用户名和密码是对源机器SVN库具备读写权限的SVN用户

示例:
svnsync init --username sync --password sync svn://192.168.1.2/autoSync svn://192.168.1.1/autoSync

5、首次同步
首次同步即为一次全备份过程,在此期间请停止客户端段源机器哦一切操作(提交代码等)
命令:
svnsync sync 备份机器库URL
示例:
svnsync sync svn://192.168.1.2/autoSync

源机器配置
6、增量自动同步配置
创建并修改post-commit文件
# 假设源机器的SVN根目录建立在 /home/svn/repository下
cd /home/svn/repository/autoSync/hooks
cp post
-commit.tmpl post-commit
vi post
-commit

在文件末尾追加:svnsync sync --non-interactive 备份机器库URL --username 用户名 --password 密码

说明:
用户名和密码是对备份机器SVN库具备读写权限的SVN用户

示例:
svnsync sync --non-interactive svn://192.168.1.2/autoSync --username sync --password sync

7、术语
配置完成,今后客户端再向SVN(192.168.1.1)提交文件时,会自动触发源机器(192.168.1.1)向备份机器(192.168.1.2)提交更新

8、版本库UUID一致性
首先查看源机器库的UUID,假设得到的是:fcdcbee9-6be3-4575-8d4a-681ec15ad8e0
svnlook uuid svn://192.168.1.1/autoSync

更新备份机器库的UUID为源机器库的UUID
svnadmin setuuid svn://192.168.1.2/autoSync fcdcbee9-6be3-4575-8d4a-681ec15ad8e0





只有注册用户登录后才能发表评论。


网站导航: