Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Mirror a Subversion repository             By Robin Ma      shadowfalao@gmail.com       http://www.validba.net
Objectivesubversion 备用服务器的重要性;创建 subversion 备用服务器的流程;svnsync 命令的介绍 ;使用 svnsync 维护和同步 subversion 备用服务器;
Subversion 介绍Subversion 是一个开源的 source versioncontrol system, 全球最流行的 SVN 服务器系统;目前由 Apache 组织维护和更新;Subversion 最新版本下载https://...
Subversion 备用服务器Subversion 支持双 svn 服务器之间的数据同步,这样不仅可以实现 svn 的主备服务模式,而且还可以实现简单备份 svn 的目的;这种同步模式可以是两台 SVN 服务器之间或者是同一物理服务器的不同 ...
Subversion standby 创建流程 创建 standby svn repository ; standby svn repository 端配置 pre-revprop- change hook script ; 初始化 st...
Create standby svn repository备用 svn repository 的创建非常简单,跟普通svn repository 创建没有区别:su – svnadmin( 单独创建的 svn 管理账户,这一步不是必须的 )cd...
Standby svn repository 简单配置默认情况下 ,standby svn 除了同步账号可以写入之外,其他帐号应该只配置只读权限;[svnadmin@devedb conf]$ more authz### This file i...
pre-revprop-change hook scriptsvnsync 采用” revision” 的方式更新 standbyrepository 。默认情况下, subversion 不允许” revision” 模式创建或者修改版本仓库...
初始化 standby svn repository采用 svnsync 命令初始化 standby svnrepository 。Master svn:192.168.0.122/casdeveStandby svn:192.168.0.13...
Svnsync 主备同步设置 svnsync 命令同步主备 svn repository 。svnsync sync svn://192.168.0.132/casdeve –username=admin –password=admin默认情况...
调度 svnsync 同步[svnadmin@devedb ~]$ crontab -l*/2 * * * * /bin/bash /home/svnadmin/svnsync.sh > /tmp/svnsync.log 2>&1每两分钟同步一次。
Svnsync 命令简单介绍Svnsync 命令非常简单 ,目前只有两种功能,前面已经使用到了。[svnadmin@devedb ~]$ svnsync helpgeneral usage: svnsync SUBCOMMAND DEST_UR...
Svnsync 命令简单介绍进一步的命令详细介绍可运行[svnadmin@devedb ~]$ svnsync help info
Nächste SlideShare
Wird geladen in …5
×

Subversion备份服务器的创建

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

  • Gehören Sie zu den Ersten, denen das gefällt!

Subversion备份服务器的创建

  1. 1. Mirror a Subversion repository By Robin Ma shadowfalao@gmail.com http://www.validba.net
  2. 2. Objectivesubversion 备用服务器的重要性;创建 subversion 备用服务器的流程;svnsync 命令的介绍 ;使用 svnsync 维护和同步 subversion 备用服务器;
  3. 3. Subversion 介绍Subversion 是一个开源的 source versioncontrol system, 全球最流行的 SVN 服务器系统;目前由 Apache 组织维护和更新;Subversion 最新版本下载https://subversion.apache.org/Subversion 安装参考https://svn.apache.org/repos/asf/subversion/trunk/INSTALL
  4. 4. Subversion 备用服务器Subversion 支持双 svn 服务器之间的数据同步,这样不仅可以实现 svn 的主备服务模式,而且还可以实现简单备份 svn 的目的;这种同步模式可以是两台 SVN 服务器之间或者是同一物理服务器的不同 repository 之间 ;Subversion 1.4 版本开始提供了 svnsync 命令实现主备 svn 仓库之间的同步;
  5. 5. Subversion standby 创建流程 创建 standby svn repository ; standby svn repository 端配置 pre-revprop- change hook script ; 初始化 standby svn repository ; source svn repository 同步数据到 standby svn repository
  6. 6. Create standby svn repository备用 svn repository 的创建非常简单,跟普通svn repository 创建没有区别:su – svnadmin( 单独创建的 svn 管理账户,这一步不是必须的 )cd /opt/svnsvnadmin casdeve启动 svn 服务 [svn 服务模式参考安装文档 ]:svnserver –d –r /opt/svn
  7. 7. Standby svn repository 简单配置默认情况下 ,standby svn 除了同步账号可以写入之外,其他帐号应该只配置只读权限;[svnadmin@devedb conf]$ more authz### This file is an example authorization file for svnserv……………….[casdeve:/]@dev = radmin = rw* =r..................authz 文件中,只有 admin[ 同步账号 ] 用户只有读写权限,其他只有只读权限,防止 standby svnrepository 在同步模式下被修改。
  8. 8. pre-revprop-change hook scriptsvnsync 采用” revision” 的方式更新 standbyrepository 。默认情况下, subversion 不允许” revision” 模式创建或者修改版本仓库。为了实现 revision 的更新模式,必须在 standby 服务器端创建 pre-revprop-change hook 脚本,这个脚本不做任何的操作,只要反回一个有效的状态[casdeve] 为 standby svn repository 主目录。cd /opt/svn/casdeve/hooksecho ‘#!/bin/bash’ > pre-revprop-changeecho ‘exit 0 ‘ >> pre-revprop-changechmod 755 pre-revprop-change
  9. 9. 初始化 standby svn repository采用 svnsync 命令初始化 standby svnrepository 。Master svn:192.168.0.122/casdeveStandby svn:192.168.0.132/casdevecd $subversion_home/binsvnsync init svn://192.168.0.122/casdeve svn://192.168.0.132/casdeve随后要求输入 snv 同步的账号和密码 , 参考前页的配置 [admin] ,这个同步账号必须在主备库都存在。如果成功初始化提示下面的信息Copied properties for revision 0.
  10. 10. Svnsync 主备同步设置 svnsync 命令同步主备 svn repository 。svnsync sync svn://192.168.0.132/casdeve –username=admin –password=admin默认情况下要 svnsync 需要用户确认同步,添加 --non-interactive 参数可以实现非交互式 静默同步。svnsync sync --non-interactive svn://192.168.0.132/casdeve–username=admin –password=admin可以将这个命令封装在脚本中,利用调度功能实现自动同步。下面为同步多个repository 的脚本封装。[svnadmin@devedb ~]$ more svnsync.sh#/bin/bashSVN_HOME=/usr/local/subversion$SVN_HOME/bin/svnsync sync --non-interactive svn://192.168.0.132/****data--username=admin --password=****0000$SVN_HOME/bin/svnsync sync --non-interactive svn://192.168.0.132/casdeve--username=admin --password=****0000
  11. 11. 调度 svnsync 同步[svnadmin@devedb ~]$ crontab -l*/2 * * * * /bin/bash /home/svnadmin/svnsync.sh > /tmp/svnsync.log 2>&1每两分钟同步一次。
  12. 12. Svnsync 命令简单介绍Svnsync 命令非常简单 ,目前只有两种功能,前面已经使用到了。[svnadmin@devedb ~]$ svnsync helpgeneral usage: svnsync SUBCOMMAND DEST_URL [ARGS &OPTIONS ...]Type svnsync help <subcommand> for help on a specificsubcommand.Type svnsync --version to see the program version and RAmodules.Available subcommands: initialize (init) synchronize (sync) copy-revprops info
  13. 13. Svnsync 命令简单介绍进一步的命令详细介绍可运行[svnadmin@devedb ~]$ svnsync help info

×