首页服务器Web服务器 远程镜像与备份SVN服务器的方法小结第1/2页

远程镜像与备份SVN服务器的方法小结第1/2页

 我们来看一个简单的svnsync例子: 主SVN服务器: svnsync镜像SVN服务器上的部署: 第一步:建立仓库 cd /home/svn svnadmin create –fs-type fsfs /home/svn/project1 chmod 77…

远程镜像与备份SVN服务器的方法小结第1/2页

 
我们来看一个简单的svnsync例子:
主SVN服务器
svnsync镜像SVN服务器上的部署:
第一步:建立仓库
cd /home/svn
svnadmin create –fs-type fsfs /home/svn/project1
chmod 777 –R project1
第二步:镜像初始化
svnsync init http://mastersvn/project1
第三步:更改配置文件
cd /home/svn/project1/hooks
cp pre-revprop-change.tmpl pre-revprop-change
vi pre-revprop-change
注销所有语句,在语句前加入#即可,退出保存
第四步:同步
svnsync sync --username username --password password
已提交版本 9。
复制版本 9 的属性。
已提交版本 10。
复制版本 10 的属性
……………
但是在实际运用中,经常会发生SVN库被lock的情况
svnsync: Couldn't get lock on destination repos after 10 attempts
这不得不让我们感觉头痛地手动使用改命令解锁
svn propdel svn:sync-lock --revprop -r0
写到这里,大家不由对svnsync有了个初步的认识了吧,就一个字,烦!!!而且同步速度很慢!!!
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
接下来是此文的重点部分:
SVN新的镜像备份方案:ssh + rsync + crontab(任务计划))
什么是SSH?
SSH 是更灵活、更安全的 telnet 和 rlogin 替代品。它在开发项目中得到广泛使用,以提供访问控制和安全的数据传输。
什么是rysnc?
rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:
可以镜像保存整个目录树和文件系统。
可以很容易做到保持原来文件的权限、时间、软硬链接等等。
无须特殊权限即可安装。
优化的流程,文件传输效率高。
可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
支持匿名传输,以方便进行网站镜象。
什么是crontab?
Crontab是Linux操作系统下的一个命令,可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。(类似windows下的任务计划)
方案拓扑图:(请看附件)
主SVN服务器环境:
SVN仓库根目录: /home/svn (project1,project2,project3三个仓库)
SVN服务器IP: 192.168.100.80
镜像SVN服务器环境:
SVN仓库根目录:/home/svn (无仓库,无需建立,镜像时会直接复制过来并保持文件属性)
SVN服务器IP: 192.168.100.81
#主SVN服务器安装部分:
(1)
SVN安装部分(略)
(2)
安装rsync部分
rpm -qa | grep rsync (所有系统是否有安装过rsync)
rpm -e rsyncxxx (删除以前安装过的rsync)
wget (下载rsync源码安装包)
tar zxvf rsync-3.0.4.tar.gz (解压)
cd rsync-3.0.4
./install.sh (安装)
接下来我们就可以输入rsync --version命令来测试下是否安装成功了。
rsync
version 3.0.3
protocol version 30
Copyright (C) 1996-2008 by Andrew Tridgell, Wayne Davison, and others.
Web site:
Capabilities:
64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
append, ACLs, xattrs, iconv, no symtimes
rsync comes with ABSOLUTELY NO WARRANTY.
This is free software, and you
are welcome to redistribute it under certain conditions.
See the GNU
General Public Licence for details.
(3) 开启rsync服务器端
/usr/local/bin/rsync --daemon (开启rsync服务)
vi /etc/rc.d/rc.local
在末尾加入/usr/local/bin/rsync --daemon (目的是让服务器每次重启后都能自动运行此进程)
#镜像SVN服务器安装部分:
(1)SVN安装部分(略)
(2)安装rsync部分
rpm -qa | grep rsync (所有系统是否有安装过rsync)
rpm -e rsyncxxx (删除以前安装过的rsync)
wget (下载rsync源码安装包)
tar zxvf rsync-3.0.4.tar.gz (解压)
cd rsync-3.0.4
./install.sh (安装)
接下来我们就可以输入rsync --version命令来测试下是否安装成功了。
接下来我们的配置就完成了,让我们用命里那个测试下。
同步命令:
rsync -vzrtopgu --progress --delete root@192.168.100.80:/home/svn /home/
输入用户名root
输入root的密码。
65309 100%
224.57kB/s
0:00:00 (xfer#507, to-check=2187/23106)
svn/project1/db/revs/202
29655 100%
99.86kB/s
0:00:00 (xfer#508, to-check=2186/23106)
svn/project1/db/revs/203
7242 100%
23.19kB/s
0:00:00 (xfer#509, to-check=2185/23106)
sent 15928 bytes
received 521860019 bytes
4404016.43 bytes/sec
total size is 12240235825
speedup is 23.45
传输完成,这次镜像过程就结束了。
本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/fwq/web/4507.html
上一篇本地 二级域名配置方法
下一篇 注册新网互联的域名所有出错的代码解说
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部