更多内容,请查看博客原文:CentOS7搭建SVN服务及备份与恢复
https://finolo.gy/2020/01/CentOS7搭建SVN服务及备份与恢复/
安装SVN
yum -y install subversion
创建SVN仓库
先创建仓库目录,用来放仓库文件
mkdir -p /usr/local/svn/repo
在上面目录下创建SVN仓库
svnadmin create /usr/local/svn/repo
配置SVN
进入SVN配置目录
cd /usr/local/svn/repo/conf
配置svnserve.conf
至少有三个地方需要取消注释。
auth-access = write
password-db = passwd
authz-db = authz
配置passwd
比如增加一个admin用户
[users]
# harry = harryssecret
# sally = sallyssecret
admin = admin
配置authz
给admin用户设置根目录的读写权限
[/]
admin = rw
启动SVN服务
svnserve -d -r /usr/local/svn/repo/
-d
参数是daemon
-r
参数是root,也即是仓库的根目录
服务启动后,SVN服务在3690端口进行监听
ss -tunlp | grep 3690
tcp LISTEN 0 7 *:3690 *:*
SVN备份
全量备份
把/usr/local/svn/repo
仓库的内容备份到/usr/local/svn-bak/
目录下。
sudo svnadmin dump /usr/local/svn/repo/ > /usr/local/svn-bak/repobak-all
\* Dumped revision 0.
\* Dumped revision 1.
\* Dumped revision 2.
增量备份
查看svn最新的版本号
svnlook youngest /usr/local/svn/repo
1
可得知svn的版本号为1。
初始备份
sudo svnadmin dump /usr/local/svn/repo/ -r 0:1 --incremental > /usr/local/svn-bak/repobak0-1
\* Dumped revision 0.
\* Dumped revision 1.
-r
参数:<start-revision-no.>:<end-revision-no.>,上面例子是0:1
,指定备份的开始与结束版本号。
--incremental
参数:表示增量备份。
再次备份
下次备份时,查看最新的svn版本号:
svnlook youngest /usr/local/svn/repo
2
说明这两次备份之间,只更新了一个版本。
执行增量备份:
sudo svnadmin dump /usr/local/svn/repo/ -r 2:2 --incremental > /usr/local/svn-bak/repobak2-2
\* Dumped revision 2.
恢复
灾难过后,新建svn仓库,如:/usr/local/svn/recovery-repo/
。
全量恢复
sudo svnadmin load /usr/local/svn/recovery-repo/ < /usr/local/svn-bak/repobak
增量恢复
更多内容,请查看博客原文:CentOS7搭建SVN服务及备份与恢复
https://finolo.gy/2020/01/CentOS7搭建SVN服务及备份与恢复/