一.概念

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

在远程同步任务中,负责发起rsync同步操作哦的客户机称为发起端,而负责响应来自客户机的rsync同步操作的服务器称为同步源。在同步过程中,同步源负责提供文档的原始位置,发起端对该目录具有读取权限。

[root@crushlinux ~]# rpm -qa | grep rsync
rsync--.el6_4..x86_64

二.配置文件

1.开启rsyncd服务

vim /etc/xinetd.d/rsync
          在这个路径下有配置文件
service rsync
{
        disable = yes   #说明rysnc是关闭的
        flags           = IPv6
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}

可以看到rysnc服务是关闭的(disable = yes),这里把它开启,把disable的值改为no

2.创建rsync服务器配置文件vim  /etc/rsyncd.conf

手动添加一下内容

 uid = www 使用的用户
  gid = www
  use chroot = no  是否使用根目录锁   如果"use chroot"指定为true,那么rsync在传输文件以前首先chroot到path参数所指定的目录下。这样做的原因是实现额外的安全防护,但是缺点是需要以roots权限,并且不能备份指向外部的符号连接所指向的目录文件。默认情况下chroot值为true。
max connections =     指定该模块的最大并发连接数量以保护服务器,超过限制的连接请求将被告知随后再试。默认值是0,也就是没有限制。

timeout =    通过该选项可以覆盖客户指定的IP超时时间。通过该选项可以确保rsync服务器不会永远等待一个崩溃的客户端。超时单位为秒钟,0表示没有超时定义,这也是默认值。对于匿名rsync服务器来说,一个理想的数字是600。
address = .254监听地址(要备份的主机地址)
hosts allow =      //允许的主机
 hosts deny = *     //拒绝所有主机

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

[wwwroot]    模块名字,自定义命名
path = /mier/wwwroot/    指定该模块的提供备份的目录路径,该参数是必须指定的
comment = frist
read only = no
#list = no  是否把rsync 服务器上提供同步数据的目录显示
incoming  chmod  =       Du=rwx,Dg=rwx,Fu=rwx,Fgo=r
如果想要认证在另行配置
auth users = a            //授权用户
secrets = /etc/rsyncd_users.db          //存放账户信息的数据文件
dont compress = *.gz *.bz2 *.tgz *.zip *.rar *.z
                                        //同步时不再压缩的文件类型

3.启动rsync

 /usr/bin/rsync --daemon

注意:1.同步的目的目录(也就是你往里同步的目录)的属主属组要和你同步时的用户一样

2.selinux要关闭

   3.iptables要关闭

rsync -avz --exclude=*svn /data/www/$line/ /data/wwwroot/$line
     红色部分是同步的时候不同步那些数据
关闭rsync
    Kill $(cat /var/run/rsyncd.pid)

三.rsync命令的基本用法

1.命令格式及常用备份选项

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

常用选项:

-r:递归创建

-l:对于符号链接文件仍然复制为符号链接文件

-v:显示同步过程中的详细信息

-a:归档模式保留文件的权限。属性等信息,等同于组合选项“-rlptgoD”

-z:在传输文件时进行压缩

-p:保留文件的权限标记

-t:保留文件的时间标记

-o:保留文件的文件的属主标记

-g:保留文件的属组标记

-H:保留硬链接文件

-A:保留ACL属性信息

-D:保留设备文件及其他特殊文件

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

--checkdum:根据校验和(而不是文件大小)来决定是否跳过文件

2.配置源的标记方法

rsync同步源的资源表示方法为

用户名@主计地址::共享模块名

rsync://用户名@主机地址/共享模块名

例:rsync –avz a@192.168.8.10::wwwroot /root

rsync –avz rsync://a@192.168.8.10/wwwroot  /root

rsync远程同步的更多相关文章

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

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

  2. rsync远程同步的基本配置与使用

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

  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. linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录

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

  7. rsync - 远程同步工具

    一直没有对这个命令太有深入的理解 简介 rsync 即 remote sync,一个远程与本地文件同步工具.rsync 使用的算法能够最小化所需复制的数据,因为它只移动那些修改了的文件. rsync ...

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

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

  9. [cmd] rsync - 远程同步工具

    简介 rsync 即 remote sync,一个远程与本地文件同步工具.rsync 使用的算法能够最小化所需复制的数据,因为它只移动那些修改了的文件. rsync 是一个非常灵活的同步工具,它也是一 ...

随机推荐

  1. DOM的内部插入和外部插入

    /*****************返回值都是最前面调用这个方法的元素 ***************** */ //这是外部插入 $("div").insertBefore($( ...

  2. Protobuf 在Ubuntu 14上的编译与使用

    前言 一直知道Google开源的一个与语言无关的数据交换协议:protobuf.只知道是一种不同于json和XML的格式,还有就是性能特别的好(这在Java和C++的实现确实是!) 最近闲下来看了下G ...

  3. 关于极光推送在手机系统低于iOS10的手机上闪退的问题。

    最近项目中用到了极光推送,升级到了最新的SDK 2.1.9版本,发现只能在iOS10 上运行,其他测试的时候真机闪退.贴上一个可能的原因:

  4. vim 括号自动补全

    来源:http://www.cnblogs.com/huanlei/archive/2012/04/02/2430153.html 有时要重新配置vim 的,所以收藏了: inoremap ( ()& ...

  5. Python中参数是传值,还是传引用?

    在 C/C++ 中,传值和传引用是函数参数传递的两种方式,在Python中参数是如何传递的?回答这个问题前,不如先来看两段代码. 代码段1: def foo(arg): arg = 2 print(a ...

  6. 修改mysql方法

    我已验证: 方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('n ...

  7. HTTP请求错误400、401、402、403、404、405、406、407、412、414、500、501、502解析

    HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求.不作修改,客户程序就无法重复此请求. HTTP 错误 401 401.1 未授权:登录失败 此错误表明传输给服务器的证 ...

  8. [原创]ASM动态修改JAVA函数之函数字节码初探

    ASM是非常强大的JAVA字节码生成和修改工具,具有性能优异.文档齐全.比较易用等优点.官方网站:http://asm.ow2.org/ 要想熟练的使用ASM,需要对java字节码有一定的了解,本文重 ...

  9. 使用Func<>和Action简化委托

    /// <summary> /// 入口 /// </summary> public void Run() { TestDelegate t = test; t(); Acti ...

  10. postman定义公共函数

    对于postman定义公共函数,相信很多小伙伴并不是很了解,下面给大家带来了一点福利,一起来看看吧.1.判断是否超时(assertNotTimeout)