搭建rsync同步机制 解决测试和生产环境的文件同步问题

2022-12-23 19:08:39 浏览数 (1)

rsync是类unix系统下的数据镜像备份工具——remote sync。是一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH、rsync主机同步。

通过搭建rsync服务端和客户端,可轻松解决开发中遇到的测试环境与生产环境的文件同步问题,且同步过程完全自动化,避免了人工上传文件容易出现的错传或漏传现象。

下面我们一起来看一下设置的过程。

生产环境主机(rsync服务端)设置

1.配置rsyncd.conf文件

代码语言:javascript复制
vi /etc/rsyncd.conf

设置如下:

代码语言:javascript复制
[web]
uid=www
gid=www
auth users = web
secrets file = /etc/rsyncd.pass
path = /home/htdocs/web

2.设置访问密码

代码语言:javascript复制
vi /etc/rsyncd.pass

设置如下:

代码语言:javascript复制
web:123456

访问密码一行对应一个用户,格式为 用户名:密码

3.改变密码文件的权限

代码语言:javascript复制
chmod 600 /etc/rsyncd.pass

 测试环境主机(rsync客户端)配置

1.设置访问密码

代码语言:javascript复制
vi /etc/rsync/web.pas

设置如下:

代码语言:javascript复制
123456

rsync客户端的密码文件的文件名与用户名保持一致

2.改变密码文件的权限

代码语言:javascript复制
chmod 600 /etc/rsync/web.pas

3.设置同步时忽略文件

代码语言:javascript复制
vi /etc/rsync/exclude_web.conf

exclude_web.conf文件内容如下:

代码语言:javascript复制
.svn
.log
.ini

rsync服务端和客户端设置完毕后,可以在客户端执行下面的命令来测试设置是否成功:

代码语言:javascript复制
rsync -avz --chmod=u=rwx,g=rx,o=r --progress --exclude-from=/etc/rsync/exclude_web.conf --password-file=/etc/rsync/web.pas /home/htdocs/web/ web@192.168.0.1::web/

阳光部落原创,更多内容请访问http://www.sunbloger.com/

0 人点赞