#首先安装依赖库
yum install lua lua-devel
#然后centos在线安装lsyncd需要先安装epel-release扩展包
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install lsyncd
#安装完成之后打开配置文件
vi /etc/lsyncd.conf
settings {
logfile ="/var/log/lsyncd/lsyncd.log",
statusFile ="/var/log/lsyncd/lsyncd.status",
inotifyMode ="CloseWrite",
maxProcesses = 7,
-- nodaemon =true,
}
sync {
default.rsync,
source = "/a/domains/jiajuz.com/public_html",
target = "root@47.104.15.221::jiajuz",
delete="running",
-- excludeFrom = "/etc/rsyncd.d/rsync_exclude.lst"
exclude = {
"/a/domains/jiajuz.com/public_html/data",
"/a/domains/jiajuz.com/public_html/includes/kindeditor/attached/image",
"/a/domains/jiajuz.com/public_html/temp",
},
maxDelays = 5,
delay = 30,
rsync = {
binary = "/usr/bin/rsync",
archive = true,
compress = true,
password_file = "/etc/rsyncd.passwd",
-- bwlimit = 2000
-- rsh = "/usr/bin/ssh -p 22 -o StrictHostKeyChecking=no"
-- 如果要指定其它端口,请用上面的rsh
}
}
default.rsyncssh :同步到远程主机目录,rsync的ssh模式,需要使用key来认证
source 同步的源目录,使用绝对路径。
target 定义目的地址.对应不同的模式有几种写法:
三种模式的示例会在后面给出。
init 这是一个优化选项,当init = false,只同步进程启动以后发生改动事件的文件,原有的目录即使有差异也不会同步。默认是true
delay 累计事件,等待rsync同步延时时间,默认15秒(最大累计到1000个不可合并的事件)。也就是15s内监控目录下发生的改动,会累积到一次rsync同步,避免过于频繁的同步。(可合并的意思是,15s内两次修改了同一文件,最后只同步最新的文件)
excludeFrom 排除选项,后面指定排除的列表文件,如excludeFrom = “/etc/lsyncd.exclude”,如果是简单的排除,可以使用exclude = LIST。