实现多svn客户端同步更新

8 篇文章 0 订阅
1 篇文章 0 订阅

rsync相关知识详见:http://sookk8.blog.51cto.com/455855/328076

测试环境:

版本库所在服务器:

192.168.10.62

客户服务器:

192.168.10.63

192.168.10.242

1,架构:

2.shell即svn钩子文件 :实现自动检出和自动更新到不同服务器

[root@localhost svn]# vi /opt/svndata/yaoyao_v0/hooks/post-commit

#!/bin/sh
SVN=/usr/local/svn/bin/svn
WEB=/home/svn
$SVN update $WEB --username chenjuan --password 123456

SRCDIR=/home/svn
MOD=svn
IP_LIST=(192.168.10.63 192.168.10.242)
for i in ${IP_LIST[*]}
do

        /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pas  /home/svn/ chenjuan@$i::svn
done
~

1. rsyns配置(192.168.10.63,192.168.10.242)

#vi /etc/xinetd.d/rsync
  把原来的YES改成NO
service rsync
{
        disable = no
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}
随系统启动RSYNC
     #chkconfig rsync on

2、配置/etc/rsyncd.conf(需要手动生成)
rsyncd.conf的参数写在上边就是全局参数和写在模块里的就是模块参数

[root@userauth svn]# vi /etc/rsyncd.conf

uid = root
gid = root
use chroot = no
max connections = 4
strict modes =yes
port = 873

[svn]
path = /home/svn/
comment = This is a test
ignore errors
read only = no
list = no
auth users = chenjuan
secrets file = /etc/rsync.pas
hosts allow = 192.168.10.63,192.168.10.62
hosts deny = 0.0.0.0/0
#transfer logging = yes

3、配置rsync密码(在上边的配置文件中已经写好路径) /etc/rsync.pas(名字随便写,只要和上边配置文件里的一致即可),格式(一行一个用户)
账号:密码

[root@userauth svn]# vi /etc/rsync.pas

chenjuan:123456

#cd /etc
#chown root.root rsync.pas 
#chmod 600 rsync.pas
3.rsyncd.motd(配置欢迎信息,可有可无)
# vi /etc/rsyncd.motd
rsyncd.motd记录了rsync服务的欢迎信息,你可以在其中输入任何文本信息,如:
Welcome to use the rsync services!
4、让配置生效
#service xinetd restart

若报错:xinetd: unrecognized service
就安装:[root@userauth etc]#  yum -y install xinetd 

启动rsync server
  RSYNC服务端启动的两种方法
1、启动rsync服务端(独立启动)
#/usr/bin/rsync --daemon

2、启动rsync服务端 (有xinetd超级进程启动)
# /etc/rc.d/init.d/xinetd reload
四:加入rc.local 
在各种操作系统中,rc文件存放位置不尽相同,可以修改使系统启动时把rsync --daemon加载进去。
#vi /etc/rc.local
加入一行/usr/bin/rsync --daemon

五.检查rsync
#netstat -a | grep rsync
   tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN

六.配置rsync client (192.168.10.62)
1、设定密码
#vi /etc/rsync.pas
123456
修改权限
#cd /etc
#chown root.root rsync.pas 
#chmod 600 rsync.pas

向rsyns服务(63,242)提交文件。

[root@localhost svn]# /usr/bin/rsync  -vzrtopg --progress --delete  --password-file=/etc/rsync.pas  /home/svn/ chenjuan@192.168.10.63::svn

[root@localhost svn]# /usr/bin/rsync  -vzrtopg --progress --delete  --password-file=/etc/rsync.pas  /home/svn/ chenjuan@192.168.10.242::svn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值