rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用。

rsync的官方站点是http://rsync.samba.org/,目前最新版本是3.1.1,由Wanyne Davison进行维护。作为一种最常用的文件备份工具,rsync往往是Linux和UNIX系统默认安装的基本组件之一。

1、rsync:快速增量备份工具,实现远程同步,可使用ssh和rsync备份

rsync服务器:备份源,提供一个目录供客户端上传或下载

2、rsync的配置:

建立rsync的配置文件:/etc/rsyncd.conf

use  chroot=yes             禁锢在源地址

port  837                   默认端口号为873

pid  file                     进程号文件位置

hosts  allow                 允许访问客户机地址

[wwwroot]                   共享名

path=/路径                   真正的文件夹位置

comment=                  描述

read  only=yes|no              只读|读写

auth  users=用户名            认证的用户

secrets  file=文件名路径          验证文件

验证文件格式:    用户名:密码

权限必须设置为600

3、管理rsync服务:

启动:rsync  --daemon

停止:kill  进程号

4、rsync的使用

格式:rsync  选项  原始位置  目标位置

选项:-a:归档模式,等同于 -rlptgoD

-r:递归,包含目录

-p:权限(保留权限)

-t:时间

-z:压缩

-v:同步过程信息

--delete:删除目标位置有而原始位置没有的文件

5、备份源(服务器端)的表达方式:

1)用户名@服务器IP::共享名

例:benet@192.168.1.100::wwwroot

2)rsync://用户名@服务器IP/共享名

Rsync  -avz  benet@192.168.1.100::wwwroot /root

6、实现免交互模式:

1)创建密码文件并设置权限为600

2)同步时使用   --password-file=文件名    的方式指定文件位置

7、实时同步:有变化则备份,无变化不备份

通过inotify机制实现,实时监控本地文件系统目录的变化,并作出通知响应,适当调整监控文件数量

inotify-tools辅助工具,有两个命令:

inotifywait:持续监控,实时输出结果

inotifywatch:短期监控,完成后输出结果

格式:inotifywait  -mrq  -e  监控事件类型  /监控目标

-m:持续监控         -r:监控整个目录

-q:简化输出          -e:监控事件类型

类型有:modify(修改)    create(创建)    move(移动)

delete(删除)     attrib(属性更改)

以上便是rsync的基本使用方法了,rsync远程同步实验案例请关注微信公众号 L宝宝聊IT 浏览“rsync远程同步示例”文章进行查阅。

rsync远程同步示例

实验要求:

(1)如图所示,搭建网络,配置地址。

(2)在1.10服务器上配置为服务端,修改rsync的配置文件/etc/rsyncd.conf,并启动rsync服务程序。

(3)在1.20上使用rsync命令验证是否能够从服务端(/var/www/html)下载文件到客户机端(/myweb)。

(4)修改rsync的配置文件/etc/rsyncd.conf,实现客户机端(/myweb)能上传文件到服务端的(/var/www/html)位置。在客户机端验证。

(5)在1.20上实现每天晚上22:00对服务器的网站目录(/var/www/html)做一次同步。

(6)在1.20上配置rsync+inotify实时同步。通过编写脚本来实现,客户机能够实时上传文件到服务端。注意:需要安装inotify软件。

步骤:

1、  按照要求配置IP地址,实现可以互相ping通。

2、为备份账户创建数据文件(vim  /etc/rsyncd_users.db)并赋予权限。

3、修改1.10服务器端的rsync配置文件/etc/rsyncd.conf,并启动rsync服务程序。(启动rsync服务:rsync  --daemon)

4、使用1.20客户机测试能够从服务器端下载文件到/myweb

1)  在1.10的/var/www/html目录下创建一个文件。

2)在1.20客户机端创建目录/myweb,并同步下载服务器端的文件

3)  在客户机/myweb目录下查看是否同步,

5、修改rsync的配置文件/etc/rsyncd.conf,实现客户机端(/myweb)能上传文件到服务端的(/var/www/html)位置。在客户机端验证。

1)进入/etc/rsyncd.conf配置文件并修改。

2)重启rsync服务,需要先杀死再启动

keill $(cat  /var/run/rsyncd.pid)

rsync --daemon

3)赋予/var/www/html目录相应的权限

4) 在客户机端/myweb目录下创建一个文件并验证是否能上传同步到服务器端。

5)到服务器端查看

6、在1.20上实现每天晚上22:00对服务器的网站目录(/var/www/html)做一次同步。

1)  创建一个zhangsan用户的密码文件/etc/server.pass,并赋予权限

2)创建计划任务,crontab  -e ,并启动

00        22  *  *  *  /usr/bin/rsync  -az --delete  --password-file=/etc/server.pass  /myweb/  zhangsan@192.168.1.10::wwwroot

7、在1.20上配置rsync+inotify实时同步。通过编写脚本来实现,客户机能够实时上传文件到服务端。

1)配置/etc/sysctl.conf ,调整inotify内核参数

sysctl -p运行一下

3)安装inotify-tools

4)编写脚本vim  /opt/test.sh

赋予脚本执行权限并执行

chmod +x  /opt/test.sh

5)在打开一个控制台在客户机端/myweb下创建一个文件并到服务器端/var/www/html查看是否自动同步

文档参考微信公众号:L宝宝聊IT

rsync远程同步的基本配置与使用的更多相关文章

  1. rsync 远程同步 实时同步备份 两种免交互的方式实现实时备份

    rsync 远程同步: 一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步 作用:做数据备份 备份方式:      完全备份      增量备份 ...

  2. rsync数据同步工具的配置

    rsync数据同步工具的配置 1. rsync介绍 1.1.什么是rsync rsync是一款开源的快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具.Rsync软件适用于 unix ...

  3. Rsync远程同步工具使用

    rsync远程同步工具使用 Rsync(remote synchronize) 是一个远程数据同步工具,可以使用"Rsync算法"同步本地和远程主机之间的文件.Rsync的好处是只 ...

  4. hadoop(六)rsync远程同步|xsync集群分发(完全分布式准备三)|8

    前置环境准备:centos7克隆ip|机器名|映射关系|别名配置(hadoop完全分布式准备一)scp命令copy文件和配置(hadoop完全分布式准备二) rsync远程同步工具 优点 rsync主 ...

  5. rsync 远程同步部署——上下行同步

    rsync 远程同步部署--上下行同步 1.rsync (Remote Sync,远程同步) : 是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用 ...

  6. rsync远程同步

    一.概念 Rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持连接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用.rsy ...

  7. linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录

    最近需要写一个脚本备份各个服务器上的程序到一个指定服务器上,本来以为查查rsync命令的使用321就能搞定,结果rsync命令要支持自动登 录还是要配置服务和参数,又不确定网上说的配置的行不行,因为都 ...

  8. Linux rsync 远程同步部署篇

    rsync官网: www.samba.org/ftp/rsync.html端口:873上机实战系列项目100台规模集群全网数据备份解决方案3.本项目提供免费实战讲解视频:Linux集群全网服务器数据备 ...

  9. CentOS6.5使用rsync远程同步

    需达成目标:在服务器(192.168.18.211)端搭建 rsync 服务,       将 /root/rsync-server/ 目录同步到客户端 /root/rsync-local 目录 Li ...

随机推荐

  1. nginx部分实现原理解析

    nginx底层实现有几个主要的模块: 进程模块 事件模块 网络模块 进程模块 默认采用守护模式启动,守护模式让master进程启动后在后台运行,不在窗口上卡住. Nginx 启动后会有一个 Maste ...

  2. Zabbix4.2.0基本配置和邮件报警

    目录 1. 修改中文 2. 添加监控本机 3. 监控本机mysql 4. 配置邮件报警 4.1 添加FTP模板 4.2 报警媒介类型 4.3 配置报警到用户 4.4 配置动作 4.5 模拟FTP故障 ...

  3. Eureka控制台参数说明

    1.HOME进入Eureka控制台首页,首先看HOME页的头部System StatusEnvironment: 环境,默认为test,该参数在实际使用过程中,可以不用更改Data center: 数 ...

  4. 方便操作的命名范围scope

    <?php namespace Goods\Model; use Think\Model; class GoodsModel extends Model { protected $_scope ...

  5. 深入学习python解析并读取PDF文件内容的方法

    这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...

  6. InnoDB存储引擎概览

    InnoDB存储引擎概览   InnoDB存储引擎以其平衡了高可靠性和高性能性而闻名遐迩,在MySQL 8.0版本中,InnoDB存储引擎是默认的存储引擎.(历史追溯从MySQL 5.5.5版本开始, ...

  7. .6-浅析webpack源码之validateSchema模块

    validateSchema模块 首先来看错误检测: const webpackOptionsValidationErrors = validateSchema(webpackOptionsSchem ...

  8. C# 获取用户IP地址(转载)

    [ASP.NET开发]获取客户端IP地址 via C# 说明:本文中的内容是我综合博客园上的博文和MSDN讨论区的资料,再通过自己的实际测试而得来,属于自己原创的内容说实话很少,写这一篇是为了记录自己 ...

  9. 自定义滚动条mCustomScrollbar

    mCustomScrollbar 是个基于 jQuery UI 的自定义滚动条插件,它可以让你灵活的通过 CSS 定义网页的滚动条,并且垂直和水平两个方向的滚动条都可以定义,它通过 Brandon A ...

  10. Java8的lambda表达式和Stream API

    一直在用JDK8 ,却从未用过Stream,为了对数组或集合进行一些排序.过滤或数据处理,只会写for循环或者foreach,这就是我曾经的一个写照. 刚开始写写是打基础,但写的多了,各种乏味,非过来 ...