lsyncd
lsyncd 简介
Lsyncd功能跟Inotify和Sersync相同,属于实时同步工具,但是Lsyncd功能更加强大,Lysncd 实际上是lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核 *(2.6.13 及以后)里的 inotify 触发机制,然后通过rsync去差异同步,达到实时的效果。Lsyncd最强大之处在于简单高效传输海量数据并且Lsyncd支持多种工作模式。
github 项目地址:https://github.com/axkibe/lsyncd
lsyncd 安装与程序环境
yum -y install lsyncd # 该包属于epel仓库,如果没有需要提前配置好epel仓库
程序环境:
[root@localhost ~]\# rpm -ql lsyncd
/etc/logrotate.d/lsyncd
/etc/lsyncd.conf # 配置文件
/etc/sysconfig/lsyncd
/usr/bin/lsyncd # 主程序
/usr/lib/systemd/system/lsyncd.service # Unit FIle
...
lsyncd 简单示例
角色 | IP |
---|---|
主 lsyncd Server | 192.168.8.176 |
备 rsync Client | 192.168.8.113 |
为了方便起见,在这里我关闭了Selinux
和防火墙.
在 Server 端
编辑/etc/lsyncd.conf
配置文件:
settings {
logfile = "/var/log/lsyncd/lsyncd.log",
statusFile = "/var/log/lsyncd/lsyncd.status",
inotifyMode = "CloseWrite",
maxProcesses = 8,
}
sync