当前位置: 首页 > Linux

mac[linux]使用lsyncd实时同步两台机器的多个文件

时间:2023-04-07 02:07:49 Linux

什么是lsyncd?Lsyncd是一个轻量级的实时文件备份解决方案,非常易于安装和使用。它可用于在两台机器之间同步文件。更多使用场景请参考:https://github.com/axkibe/lsyncdinstallbrewinstalllsyncdbrewinstallrsync配置文件~/MyApp/sync.luasettings{logfile="/var/log/lsyncd.log",--logPathstatusFile="/var/log/lsyncd.status",--statusfilepidfile="/var/run/lsyncd.pid",--pid文件路径statusInterval=1,--statusfilewritingminimumtimenodaemon=true,--daemonrunningmaxProcesses=1,--maximumprocessmaxDelays=1,--maximumdelayinsist=true,}sourceList={}sourceList['/Users/hncg/MyApp/service']='/home/cg/MyApp/service'sourceList['/Users/hncg/MyApp/sites.d']='/home/cg/MyApp/sites.d'forfrom_source,target_sourceinpairs(sourceList)dosync{default.rsync,source=from_source,delete=true,target="cg@x.x.x.x:"..target_source,exclude={".idea/*",".git/*","assets/*","node_modules/*","运行时/*","tmp/*","__pycache__/*"},rsync={binary="/usr/local/bin/rsync",--binary="/usr/bin/rsync",archive=true,compress=true,bwlimit=2000,rsh="ssh-i/Users/hncg/.ssh/id_rsa"--rsh="/usr/bin/ssh-p22-oStrictHostKeyChecking=no"--如果要指定其他端口,请使用上面的rsh}}end运行sudolsyncd~/MyApp/sync.lua提示不需要安装rsync,安装后选择二进制配置的注释行即可brewinstalllsyncddefault,rsync会默认安装到/usr/bin/rsync。但是可能会报错'rsync:-pstglozD:unknownoption',应该是版本问题。所以解决方案是通过brewinstallrsync安装另一个rsync。brewinstallrsync默认安装到/usr/local/bin/rsync。