首页 > 代码库 > 【运维小实验】数据镜像备份实验inotify+rsync实时备份

【运维小实验】数据镜像备份实验inotify+rsync实时备份

数据镜像备份实验inotify+rsync实时备份

本文是基于VM搭建的虚拟集群环境,全部虚拟机网卡模式为NAT方式相连,处于同一网段。

搭建环境:

使用redhead 2.6.32-431.el6.x86_64版本的linux,创建两台,配置相关网络信息,确保同一网段下。

 技术分享

安装配置rsync+inotify

Rsync一般系统默认安装了,如果没有安装的去相关网站下载安装包解压安装即可

Inotify登陆https://github.com/rvoicilas/inotify-tools/wiki#getting下载安装即可

 

配置备份服务器

配置/etc/rsyncd.conf

  1 uid = nobody

  2 gid = nobody

  3 use chroot = no

  4 max connections = 10

  5 strict modes = yes

  6 pid file = /var/run/rsyncd.pid

  7 lock file = /var/run/rsync.lock

  8 log file = /var/log/rsyncd.log

  9

 10 [www]

 11 comment = www file

 12 path = /var/www/ #你要备份的目录

 13 ignore errors #忽略一些IO错误

 14 read only = no

 15 write only = no

 16 hosts allow = 192.168.153.131 #服务器的IP

 17 hosts deny = *

 18 list = false

 19 uid = root

 20 gid = root

 21 auth users = webuser #此用户名随便设置跟系统用户没关系,方便自己记忆即可

 22 secrets file = /etc/rsync.password

 

配置密码文件/etc/rsync.password

webuser:123 #注意格式 用户名:密码

 

配置服务器

配置inotifyrsync.sh放置在要备份的目录下

#!/bin/bash

host1=192.168.153.136 #配置备份服务器的相关信息

src=http://www.mamicode.com/var/www/

dst=www

user=webuser

 

/usr/local/bin/inotifywait -mrq --timefmt ‘%d/%m/%y %H:%M‘ --format ‘%T %w%f%e‘ -e close_write,modify,delete,create,attrib $src | while read files #定义同步触发的条件

        do

  /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsync.password $src $user@$host1::$dst

        echo "${files} was rsynced" >>/tmp/rsync.log 2>&1

        Done

 

Chmod 755 inotifyrsync.sh

 

 

配置密码文件/etc/rsync.password

123 #注意格式  只需要对应密码

 

Chmod 600 /etc/rsync.password

 

 

启动

服务器:/var/www/inotifyrsync.sh &

备份服务器:/usr/bin/rsync --daemon

 

测试:

在服务器上修改index.html

修改前备份服务器的index.html

 技术分享

修改后:

 技术分享

 

修改过程服务器的提示信息:

 

技术分享


本文出自 “走在产品路上的运维dog~” 博客,请务必保留此出处http://vrfxie.blog.51cto.com/11026252/1920145

【运维小实验】数据镜像备份实验inotify+rsync实时备份