2010-11-01
lsyncd同步记录
静态文件相对于动态程序在互联网中有先天的优势,因此,在网络内容发布中,我们一般优先选择静态化,但对多个服务器来说这又是一个问题,如果实时同步。 还好,lsyncd给我们提供了一个解决方案。 下载地址:http://code.google.com/p/lsyncd/ 按照wiki安装后,写一个配置文件: settings={ logfile="/var/log/lsyncd.log", statusFile="/tmp/lsyncd.status", } sync{default.rsync,source="XXX",target="XXX",rsyncOps="-avzt",exclude={"XXX"},recursive=true} source是你要同步的内容目录 target是你要同步的目标目录,可以是同机的其它目录,也可以是远程的地址(ssh的话,用user@host:XXX的形式) rsyncOps是rsync的参数 exclude可以设置一些需要排除在外的东西 recursive当然是要求目录级深了,呵呵。 然后把它做成一个系统服务(debian/ubuntu): #!/usr/bin/env bash ### BEGIN INIT INFO # Provides: lsyncd # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start/stop lsyncd daemon ### END INIT INFO LSYNCD=/usr/bin/lsyncd PID=/var/run/lsyncd/lsyncd.pid . /lib/lsb/init-functions case "$1" in start) log_daemon_msg "Start lsyncd." $LSYNCD ;; stop) log_daemon_msg "Stop lsyncd." killproc -p $PID ;; restart) $0 stop $0 start ;; *) echo "Usage: /etc/init.d/lsyncd {stnard|stop|restart}" ;; esac
版权所有:2009-2020 Findnow.Powered by Get findnow at SourceForge.net. Fast, secure and Free Open Source software downloads