主服务器安装lsyncd
从服务器安装:rsync
安装lsyncd
apt install lsyncd -y
安装成功后,你可以在/usr/share/doc/lsyncd/examples/看到lsyncd配置使用示例。
配置lsyncd
配置文件是/etc/lsyncd/lsyncd.conf.lua
须要手动创建配置文件夹
mkdir /etc/lsyncd/
log文件夹
mkdir /var/log/lsyncd/
密码文件
vim /etc/lsyncd/lsyncd.passwd
密码文件权限
chmod 600 /etc/lsyncd/lsyncd.passwd
编辑配置文件
vim /etc/lsyncd/lsyncd.conf.lua
settings {
logfile = "/var/log/lsyncd/lsyncd.log", #日志文件存放位置
statusFile = "/var/log/lsyncd/lsyncd.status", #状态文件存放位置
maxDelays = 1, #累计到多少所监控的事件激活一次同步,即使后面的delay延迟时间还未到
statusInterval = 5, #将lsyncd的状态写入上面的statusFile的间隔,默认10秒
nodaemon = true, #是否启用守护模式,默认 true
inotifyMode = "CloseWrite", #inotify监控的事件 ,默认是 CloseWrite,还可以是 Modify 或 CloseWrite or Modify
delay = 5,
maxProcesses = 8 #同步进程的最大个数
}
sync{
default.rsync, #rsync 同步, rsyncssh 些为ssh命令同步, direct 三种模式
source = "/www/web/", #同步的源目录,使用绝对路径。
target = "同步的用户名@192.168.1.21::uploadfile", #定义目的地址.对应不同的模式有几种写法,这里使用远程同步的地址,rsync中的地址;同rsync用户配置参考
#delete参数:默认true:启动即同步同步删除。
#delete参数:false:不会删除目标上的任何文件;既不在启动时也不在正常运行时(但是会覆盖)。
#delete参数:startup:启动时会删除目标上的文件,但在正常运行时不会删除。
#delete参数:running:在启动时不会删除目标上的文件,但会删除在正常操作过程中删除的文件。
delete = false,
delay = 5, #累计事件,等待rsync同步延时时间,默认15秒,最大累计到1000个不可合并的事件(1000个文件变动),
init = false, #默认 true 当init = false ,只同步进程启动以后发生改动事件的文件,原有的目录即使有差异也不会同步
exclude = {".*","*.log"}, #哪些文件不同步
rsync = {
binary = "/usr/bin/rsync", #rsync 的二进制处理文件
archive = true, #归档模式
compress = true, #压缩传输
verbose = true, #增量
password_file = "/etc/lsyncd/lsyncd.passwd", #密码文件
_extra = {"--bwlimit=5000"} #其他 rsync 的配置参数, 限速(--bwlimit KBPS),使用 rsync -v 查看详细参数
}
}
启动程序
/etc/init.d/lsyncd start
重启服务
/etc/init.d/lsyncd restart
查看服务状态
/etc/init.d/lsyncd status
centos安装
yum -y install rsync xinetd
ubuntu安装
apt install rsync
配置sync时需要重点注意一下这个参数
read only = no #允许写入文件
uid = root
gid = root
user chroot = no
max connections = 200
timeout = 600
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/var/log/rsyncd.log
[uploadfile]
path = /www/web/
read only = no
list = false
uid = www
gid = www
incoming chmod = Du=rwx,Dog=rx,Fu=rwx,Fgo=rx
hosts allow = 192.168.1.20 #允许的ip地址
auth users = 同步的用户名
secrets file = /etc/rsync.passwd