rsync+inotify自动备份服务器的配置

1 备份服务器IP : 192.168.1.106

客户端IP     : 192.168.1.107

2 .

#yum -y install rsync xinetd gcc gcc-c++

安装这两个服务,同时也将C/C++编译器也安上(如果事先没安的话,避免我们在编译二进制文件时找不到编译器的情况)

3 .在服务器端(192.168.1.106)的/etc下创建一个rsyncd.conf

#service iptables stop 关闭防火墙,与selinux

#vi /etc/selinux/config   将SELINUX=disabled

#vi /etc/rsyncd.conf

uid = nobody

gid = nobody

max connections = 200

timeout = 600

use chroot = no

hosts allow = *

pid file=/var/run/rsyncd.pid

#syslog facility = local7

log file=/var/log/rsyncd.log

#rsync con**

#The ‘standard‘ things

[backup]

path = /backup   //在服务器的根下面创建一个目录用来备份客户端的文件

ignore errors    //忽略一些错误

read only = no

list = no

auth users = test  //认证用户

secrets file = /etc/rsyncd.secrets 认证用户的用户名与密码存放位置

4 . 在服务器端(192.168.1.106下面编译/etc/xinetd.d/rsync

#vi /etc/xinetd.d/rsync

service rsync

{

disable = no     //将原来的YES改为NO就OK了

flags           = IPv6

socket_type     = stream

wait            = no

user            = root

server          = /usr/bin/rsync

server_args     = --daemon

log_on_failure  += USERID

}

5 . 在服务器端创建建认证的用户与密码文件

#vi /etc/rsyncd.secrets

test:test

:wq

保存退出

6 . 启动rsync服务

#service xinetd restart

#/usr/bin/rsync --daemon --config=/etc/rsyncd.conf

7 . 注意权限的问题引起客户端无法连接的原因

#chmod 777 /backup

#chmod 600 /etc/rsyncd.secrets

密码文件必须要改为600的权限,不然客端连接的时候会报错

客户端的配置(192.168.1.107)

#yum install gcc gcc-c++ rsync xinetd

#service xinetd restart

#service iptables stop

#netstat -tnl |grep 873

1 . vi /etc/rsyncd.secrets

testpasswd

:wq

保存退出

2 . 修改权限

#chmod 600 /etc/rsyncd.secrets

3 . 在客户端

#rsync -vzrtopg --password-file=/etc/rsyncd.secrets /aaa [email protected]::backup

其中aaa是本地要备份到服务器上面的目录

这样的是用于手动同步的,命令也是很麻烦的可以将其写到一个shell角本通过crontab调用进行自动同步

但还有一种效率更高的方法就是下面我们要说的rsync+inotify的相结合的一种有效方式

http://inotify-tools.sourceforge.net下载相应的安装包

# tar -zxvf inotify-tools-3.14.tar.gz

#cd inotify-tools-3.14

#./configure && make && make install

安装完成后写一个shell角本

#vi rsync.sh

#!/bin/bash

src=/aaa

des=backup

ip=192.168.1.106

/usr/local/bin/inotifywait -mrq --timefmt ‘%d/%m/%y %H:%M‘ --format ‘%T %w %f‘ -e modify,delete,create,attrib $src | while read file

do

rsync -vzrtopg --delete --progress $src [email protected]$ip::$des --password-file=/etc/rsyncd.secrets &&

echo "$src was rsynced"

done

:wq

#nohup sh  /root/rsync.sh  &  注意中间的空格

这样就可以保证当你修改客户端的/aaa里面的文件时会立即向服务器端进行更新,达到数据的快速一致

时间: 2024-12-29 11:30:01

rsync+inotify自动备份服务器的配置的相关文章

rsync+inotify自动同步

rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的"Rsync演算法"来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快.所以通常可以作为备份工具来使用. 运行Rsync server的机器也叫backup server,一个Rsync server可同时备份多个client的数据:也可以多个Rsync server备份一个client的数据.Rsync可以搭配ssh甚至使用daem

rsync+inotify实现数据同步传输

rsync简介: rsync:remote sync,是一款快速增量备份备份工具,能同步更新两处计算机的文件与目录,并适当利用差分编码以减少数据传输.rsync中一项与其他大部分类似程序或协议中所未见的重要特性是镜像对每个目标只需要一次发送.rsync可拷贝/显示目录属性,以及拷贝文件,并可选择性的压缩以及递归拷贝.还能通过脚本或crontab计划任务这执行自动备份. 特点: 可以镜像保存整个目录树或文件系统: 较高的数据传输效率: 可以借助于ssh实现安全数据传输: 支持匿名传输: rsync

rsync+inotify实现远程同步

rsync介绍 rsync,英文全称是remote synchronize,是一款实现远程同步功能的免费软件,它在同步文件的同时,可以保持原来文件的权限.时间.软硬链接等附加信息. rsync提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件.甚至还可以实现只同步一个文件里有变化的内容部分,所以可以实现快速的同步备份数据.同时,rsync还可以实现同步本地数据.删除文件和目录的功能. inotify介绍 Inotify 是一个 Linux 内核特性,它监控文件

centos7中配置rsync+inotify实现自动监控数据同步

rsync服务可以实现数据的同步,但不是自动同步,所以在一些网站服务等, 需要用到inotify进行自动监控. 实验环境:centos7 两台 能互相ping通对方.一台为源端,一台为发起端. 该实验博主源端地址:192.168.60.135 发起端地址:192.168.60.136 http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz 这是inotify网址,进网站响应很慢,耐心等待. 一.源

网站集群架构实战(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync+Inotify全网备份、Zabbix自动注册全网监控)--技术流ken

前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高性能-技术流ken>下面是项目的一些简单介绍. WEB集群项目简介 随着网站访问量的激增,势必会导致网站的负载增加,现需求搭载一套高性能,高负载,高可用的网站集群架构以保障网站的持续.高效.安全.稳定的运行. 针对以上需求,我们采用了如下的技术: 使用负载均衡技术来实现网站请求的调度分发,减小后端服务器

rsync简介与rsync+inotify配置实时同步数据

rsync简介 rsync是linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. rsync特性 rsync支持很多特性: 可以镜像保存整个目录树和文件系统 可以很容易做到保持原来文件的权限.时间.软硬链接等等 无须特殊权限即可安装 快速:第一次同步时rsync会复制全部内容,但在下一次只传输修改过的文件.rsync在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽 安全:可以使用scp.

使用rsync + inotify 实现多台游戏服代码自动实时同步

一 应用场景描述 在LB后端有多台游戏服运行PHP代码,每台服务器的环境部署一样,PHP代码一样.现在有时需要更改游戏配置文件,如更改各个区服的开服状态等.登陆到每台服务器去更改相应的文件会比较繁琐,需要当在第一台服务器上的配置文件作更改时,其他服务器上的配置文件自动更改.于是考虑可以使用rsync + inotify的方式来同步代码. 二 rsync和inotify配置 使用yum -y install rsync安装rsync服务 rsync有两种工作模式,命令行模式和C/S模式 使用man

配置Rsync和Rsync + inotify

第一部分:配置Rsync 一.介绍Rsync工具 rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的"Rsync演算法"来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快.所以通常可以作为备份工具来使用. Rsync的特性如下: 1)支持拷贝特殊文件如链接,设备等 2)可以有排除指定文件或目录同步的功能,相当于打包命令tar 3)可以保持原来文件或目录的权限,时间,软硬链接等所有属性

配置rsync+inotify实现站点文件实时同步

一.rsync简介 rsync是linux系统下的数据镜像备份工具.可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,在传输前执行压缩,因此非常适用于异地备份.镜像服务器等应用. rsync的官方站点为http:rsync.samba.org/ 二.使用rsync备份工具 2.1.rsync命令的基本用法 用法类似于cp命令,例如将文件/etc/fstab 和目录/boot/grub同步备份到.opt目录下,其中-r表示递归整个目录,-l选项用来备份链接文