当前位置:首页 > Linux

lsyncd —— 多机器实时同步文件神器

canca5年前 (2020-12-29)Linux823

lsyncd 是一个支持实时、双向、多机器的多模式文件同步工具。

使用 Lua 语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过 rsync 去差异同步,达到实时的效果。

安装

在源文件服务器上安装:

yum -y install lsyncd

配置

lsyncd 主配置文件,假设放置在/etc/lsyncd.conf:

settings {
    nodaemon = false,
    logfile = "/var/log/lsyncd.log",
    statusFile = "/var/log/lsyncd.status",
    inotifyMode = "CloseWrite",
    maxProcesses = 8}-- 可以有多个sync,各自的source,各自的target,各自的模式,互不影响。sync {
    default.rsyncssh,
    source    = "/home/wwwroot/web1/",
    host      = "111.222.333.444",
    targetdir = "/home/wwwroot/web1/",
    -- 忽略文件路径规则,可用table也可用外部配置文件
    -- excludeFrom = "/etc/lsyncd_exclude.lst",
    exclude = {
        ".svn",
        "Runtime/**",
        "Uploads/**",
    },
    -- maxDelays = 5,
    delay = 0,
    -- init = false,
    rsync = {
        binary = "/usr/bin/rsync",
        archive = true,
        compress = true,
        verbose = true,
        _extra = {"--bwlimit=2000"},
    },}

忽略规则

需要忽略同步的文件或文件夹,excludeFrom 选项才配置该文件,exclude 类型的配置不用该配置文件。假设配置文件放在/etc/lsyncd_exclude.lst

.svn
Runtime/**
Uploads/**

免密登录

为避免每次都需要手动输入密码,可设置为 SSH 免密登录。

启动

lsyncd -log Exec /etc/lsyncd.conf

参考


扫描二维码推送至手机访问。

版权声明:本文由Ant.Master's Blog发布,如需转载请注明出处。

本文链接:https://iant.work/post/739.html

标签: lsyncdLinux
分享给朋友:

“lsyncd —— 多机器实时同步文件神器” 的相关文章

Linux常用命令集锦

查看所有已安装前缀为samba的RPM包      rpm -qa samba*删除目录或文件   rm -r 文件名linux解压bz2文件使用   bunzip2   linux-2-4-2.tar.bz2 &nbs…

wget下载文件

一、下载目录#wget -r -np -nd http://example.com/packages/这条命令可以下载 http://example.com 网站上 packages 目录中的所有文件。其中,-np 的作用是不遍历父目录,-nd 表示不在本机重新创建目录结构。二、下载指定扩展名文件#…

centos 7 crontab定时器及开机自启

crontab 建议直接采用centos7 自带得cronteb包,定时器:就是定时去执行干某一件事在这里我以脚本为媒介1 当然是创建一个脚本,创建目录随意但是你一定要记得。。直接通过vi来创建一个test.sh脚本!…

centos7 手动修改dns

方法一:vim /etc/resolv.conf…

Linux修改用户名

Linux将用户名修改后,还需要修改 组名+家目录+UID这只会更改用户名,而其他的东西,比如用户组,家目录,UID 等都保持不变。1、修改用户名$ usermod -l 新用户  旧用户这只会更改用户名,而其他的东西,比如用户组、家目录、ID 等都…

Rsync自动同步工具

开机自启动 …

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。