基于lsyncd实现的实时增量备份
基于lsyncd实现的实时增量备份
环境需要安装lsyncd rsync
具体安装教程执行参考文档。或查看以下文章
那么有个这样的需求,作为一个备份服务器,我们需要增量备份
假如在服务端不小心执行删除操作,备份服务器也会被清空。
下面是基于lsyncd的实时增量备份,代码如下
settings {
logfile = "/tmp/lsyncd.log",
statusFile = "/tmp/lsyncd.status",
insist = true,
statusInterval = 10
}
sync {
default.rsyncssh,
source = "/var/wwwroot",
host = "10.1.0.3",
targetdir = "/var/wwwroot",
--excludeFrom = "/file/rsyncd.d/rsync_exclude.lst",
-- maxDelays = 5,
delete = false,
delay = 30,
-- init = false,
rsync = {
binary = "/usr/bin/rsync",
archive = true,
compress = true,
verbose = true,
--extra = {"--bwlimit=2000"},
},
ssh = {
port = 22
}
}
关键点在于delete = false,是否同步删除 true=同步删除 false=增量备份
当然如果是使用rsync的话就更简单了
rsync -azuvop
u参数表示只更新,全体是必须要先同步一次完成后,在源端有更新的文件会自动同步,
而不是全盘同步,