rsync 分为客户端和服务端,下面介绍的是服务端开启rsync,等待客户端将数据推送到服务端
一、准备工作
# yum -y install rsync #客户端和服务端都需要安装
二、服务端
1、配置服务端
# vi /etc/rsyncd.conf
[wodsy] #与客户端推送命令中的模块对应
path = /app/wodsy/www/images #定义服务端的存放路径
read only = false
list = yes
uid = wodsy #以什么用户运行(目录的属主)
gid = app #以什么组运行(目录的属组)
[app]
path = /app/wodsy/www
read only = false
list = yes
uid = wodsy
gid = app
2、启动rsync
# /usr/bin/rsync --daemon #只需要服务端启动,客户端不需要启动
三、客户端配置
1、客户端只需要安装rsync即可,然后使用命令就可以实现数据推送到服务端
# /usr/bin/rsync -avz /app/wodsy/www/images/ 192.168.1.246::wodsy
/usr/bin/rsync #推送命令
-avz #参数
/app/wodsy/www/images/ #客户端目录路径
192.168.1.246::wodsy #服务端地址以及对于服务端配置文件里的模块
2、使用脚本推送到服务端
#/bin/bash
# THE APP Rsync FILE
# # # # # # # # # # # # # # # # # # # # # # # # # #
# Title: app_sync
# Description: Tomcat App Rsync File
# Copyright: Copyright (c) 2014
# Company: ZhongChuanWenChuang
# @author: zxk
# @version 1.0
# -------------------------------------------------
# Variable definitions
# Rsync absolute path
RSYNC="/usr/bin/rsync"
# Rsync Options
# -a, --archive archive mode; same as -rlptgoD (no -H)
# -v, --verbose increase verbosity
# -z, --compress compress file data during the transfer
RSYNC_OPTS="-avz"
#RSYNC_OPTS="${RSYNC_OPTS} --exclude "WEB-INF/" --exclude "META-INF/" --exclude="*.jsp" --exclude="*.tar" --exclude="*.gz" \
#--exclude="*.sh" --exclude="CVS/" --exclude="__*" --exclude="logs" "
# Rsync logs will be synchronized to the following path
LOGS="/app/wodsy/rsync/logs"
# Define the target host
WEB_HOSTS="192.168.1.246"
# Program source directory
SDIR="/app/wodsy/tomcat_8080/webapps/ROOT/images/"
# Program name
APP="wodsy"
# No.1 Application rsync
for WEB in ${WEB_HOSTS}
do
${RSYNC} ${RSYNC_OPTS} ${SDIR} ${WEB}::${APP} > ${LOGS}/${WEB}_sync.log 2>&1 &
done