只说我使用到的部分,rsync数据同步需要两台机器都安装rsync,修改配置文件 /etc/rsyncd.conf

[lhbwg]
path = /home/www/wwwroot/lhbwg/
list=yes
ignore errors
auth users = local
read only = false


添加模块信息,在远程rsync上同样也需要改配置信息,一般配置文件也在/etc/rsyncd.conf上

[lhbwg]
path = /home/www/wwwroot/lhbwg
list=yes
ignore errors
auth users = hd
read only = false


在然后就是在第一台机器上编写脚本了


#!/bin/sh
cd /home/47_gitdata/lhbwg
echo "GIT UPDATE..."
git pull
cd .. && chown -R www:www lhbwg

echo "Rsync LHBWG ***** ..."
rsync --port=65527 -vzrtopg --update --exclude='.git' --exclude='.gitkeep' /home/47_gitdata/lhbwg/* hd@*****::lhbwg --password-file=/home/shell/rsync_local_pwd

这个脚本的作用有两个第一个是在代码仓库中进行更新,拉取到最新的代码,也就是执行到 GIT PULL这里

第二个作用是进行文件夹的拷贝,这里需要注意几点,第一点是rsync使用的是默认端口873,如果远程服务器上使用的不是默认端口873,则需要进行制定端口--port=65527

第二点是 hd@******,hd是第二台机器上的 auth users 的值,二lhbwg也是模块信息是[]中的内容

总结:

    使用rsync进行同步的时候需要注意的一个是端口号  --port,一个是用户  {用户}@{IP}::{模块名称}