您的位置:首页 > 其它

rsync+inotify目录文件实时同步备份 推荐

2013-06-10 23:26 597 查看


说明:192.168.1.2 (rsync+inotify)-----------FTP192.168.1.3 (rsync)---------------------backup实验目的:实时自动同步:192.168.1.2 ------->192.168.1.3到目录:/data/ftpdata ; 一、FTP服务器(rsync+inotify)1、准备软件包[root@ftp ~]# mkdir /data/ftpdata[root@ftp ~]# wget http://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz[root@ftp ~]# wget http://cloud.github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz 2、安装Rsync[root@ftp ~]# tar -zxvf rsync-3.0.9.tar.gz[root@ftp ~]# cd rsync-3.0.9[root@ftp rsync-3.0.9]# ./configure --prefix=/usr/local/rsync[root@ftp rsync-3.0.9]# make;make install 建立密码认证文件[root@ftp ~]# echo "111111">/etc/rsyncd.secrets[root@ftp ~]# less /etc/rsyncd.secrets 111111*其中111111可以自己设置密码,rsyncd.secrets名字也可以自己设置;权限:要将/etc/rsyncd.secrets设置为root拥有, 且权限为600。
[root@ftp ~]# chmod 600 /etc/rsyncd.secrets[root@ftp ~]# ll /etc/rsyncd.secrets-rw------- 1 root root 7 Jun9 21:24 /etc/rsyncd.secrets 3、安装inotify[root@ftp ~]# tar -zxvf inotify-tools-3.14.tar.gz [root@ftp ~]# cd inotify-tools-3.14[root@ftp inotify-tools-3.14]# ./configure --prefix=/usr/local/inotify[root@ftp inotify-tools-3.14]# make;make install 4、创建rsync复制脚本此项功能主要是将ftp端的目录/data/ftpdata里的内容,如果修改了(无论是添加、修改、删除文件)能够通过inotify监控到,并通过rsync实时的同步给backup的/data/ftpdata里,下面是通过shell脚本实现的。[root@ftp ~]# vim /opt/rsync.sh#!/bin/bashSRC=/data/ftpdata/DST=root@192.168.1.3::ftpdata/usr/local/inotify/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format'%T %w%f' -e modify,delete,create,attrib $SRC| while read filesdo/usr/bin/rsync -vzrtopg --delete --password-file=/etc/rsyncd.secrets$SRC $DST> /dev/nulldone:wq[root@ftp ~]# chmod u+x /opt/rsync.sh rsync.sh脚本加入开机启动项[root@ftp ~]# echo "/opt/rsync.sh" >> /etc/rc.local 防火墙开启rsync端口:873[root@ftp ~]# vim /etc/sysconfig/iptables添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 873 -jACCEPT重启:[root@ftp ~]# /etc/init.d/iptables restart二、备份服务器(rsync)1、准备工作创建备份目录:[root@backup ~]# mkdir /data/ftpdata 2、准备软件包[root@backup ~]# wget http://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz 3、安装rsync(备份服务器只安装rsync)[root@backup ~]# tar -zxvf rsync-3.0.9.tar.gz [root@backup ~]# cd rsync-3.0.9[root@backup rsync-3.0.9]# ./configure --prefix=/usr/local/rsync[root@backup rsync-3.0.9]# make;make install 4、建立用户与密码认证文件[root@backup ~]# echo "root:111111" > /etc/rsyncd.secrets[root@backup ~]# less /etc/rsyncd.secretsroot:111111 注意:请记住,在ftp端建立的密码文件,只有密码,没有用户名;而在备份服务端backup里建立的密码文件,用户名与密码都有。权限:要将/etc/rsyncd.secrets设置为root拥有, 且权限为600。[root@backup ~]#chmod 600 /etc/rsyncd.secrets 5、建立rsync配置文件[root@backup ~]# vim /etc/rsyncd.confuid = rootgid = rootport = 873use chroot = yesread only = yeshosts allow=192.168.1.0/255.255.255.0hosts deny=*max connections = 5log file =/var/log/rsyncd.logpid file =/var/run/rsyncd.pidlock file =/var/run/rsyncd.locklog format = %t %a %m %f%bsyslog facility = local3timeout = 300 [ftpdata]path = /data/ftpdatalist = noread only = noignore errorsauth users = rootsecrets file =/etc/rsyncd.secrets:wq 启动rsync服务[root@backup ~]# /usr/local/rsync/bin/rsync --daemon--config=/etc/rsyncd.conf[root@backup ~]# ps -ef |grep rsync Rsync服务加入开机启动项[root@backup ~]# echo "/usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf" >> /etc/rc.local 防火墙开启rsync端口:873[root@backup ~]# vim /etc/sysconfig/iptables添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 873 -jACCEPT 重启:[root@backup ~]# /etc/init.d/iptables restart 现在rsync与inotify在ftp端安装完成,rsync在备份服务器backup端也安装完成! 重启[root@ftp ~]# reboot[root@backup ~]# reboot 三、测试验证1、在ftp端/data/ftpdata 目录上创建一个文件夹:[root@ftp ftpdata]# mkdir zl 2、在backup端查看/data/ftpdata目录是否相同;[root@backup ~]# ll /data/ftpdata/ 四、备份与恢复1、手动备份192.168.1.2---------->192.168.1.3 [root@ftp ~]# /usr/bin/rsync -vzrtopg --delete--password-file=/etc/rsyncd.secrets /data/ftpdata/ root@192.168.1.3::ftpdata 2、手动恢复192.168.1.3 ---------->192.168.1.2[root@ftp ~]# /usr/bin/rsync -vzrtopg --delete--password-file=/etc/rsyncd.secrets root@192.168.1.3::ftpdata /data/ftpdata/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息