<legend id="h4sia"></legend><samp id="h4sia"></samp>
<sup id="h4sia"></sup>
<mark id="h4sia"><del id="h4sia"></del></mark>

<p id="h4sia"><td id="h4sia"></td></p><track id="h4sia"></track>

<delect id="h4sia"></delect>
  • <input id="h4sia"><address id="h4sia"></address>

    <menuitem id="h4sia"></menuitem>

    1. <blockquote id="h4sia"><rt id="h4sia"></rt></blockquote>
      <wbr id="h4sia">
    2. <meter id="h4sia"></meter>

      <th id="h4sia"><center id="h4sia"><delect id="h4sia"></delect></center></th>
    3. <dl id="h4sia"></dl>
    4. <rp id="h4sia"><option id="h4sia"></option></rp>

        Skip to end of metadata
        Go to start of metadata

        作用

        rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。

        特性如下:

        • 可以镜像保存整个目录树和文件系统。
        • 可以很容易做到保持原来文件的权限、时间、软硬链接等等。
        • 无须特殊权限即可安装。
        • 快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。
        • 安全:可以使用scp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
        • 支持匿名传输,以方便进行网站镜像。

        机制

        此方式主要是服务端开放服务,并由客户端主动的获得增量信息,拉取到客户端口

        服务器端

        安装rsync

        yum -y install rsync

        添加配置文件

        /etc/rsyncd.conf

        #global settings 
        pid file=/var/rsync/rsync.pid
        port=873
        lock file=/var/rsync/lock.log
        log file=/var/rsync/rsync.log
        
        [mysql] 
        path=/home/data_back/  #参与同步的目录 ,注意同步的文件目录权限
        use chroot=no  #不使用chroot
        max connections=10
        read only=yes
        write only=no
        list=no
        uid=nobody  #进行备份的用户 nobody为任何用户
        gid=nobody  #进行备份的组   nobody为任何组
        auth users=rsyncuser  #认证的用户名
        secrets file=/etc/rsync_server.pas
        strict modes=yes
        hosts allow=27.223.26.74,192.168.1.2/10
        hosts deny=*
        ignore errors=yes  #可以忽略一些无关的IO错误
        timeout=120 #秒
        本页内容


        参数说明:
        [mysql] :模块名,自己定义,可以在下方添加其它模块。须与客户端执行命令中的模块名一致。
        path:要备份的服务端文件夹路径。
        hosts allow:允许的客户端连接IP。
        secrets file:服务端密码文件,内容格式为,用户名:密码。
        auth users:有权限的用户名,与密码文件中用户名一致。

        创建密码文件

        在/etc中创建文件rsync_server.pas,加入用户名与密码,内容格式为:用户名:密码。

        vi /etc/rsync_server.pas
        rsyncuser:123456

        然后设置密码文件权限为600

        chmod 600 /etc/rsync_server.pas

        注意密码文件只有设置为600权限才可以使用,客户端的密码文件也必须为600。


        启动与停止rsync服务

        #启动

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


        #停止
        ps -ef | grep rsync
        kill -9 进程号
        rm -rf /var/rsync/rsync.pid


        安装rsync客户端

        • 查看是否安装rsync,系统一般默认已安装,安装方法:yum -y install rsync(同服务端)。
        • 在/etc下创建密码文件rsync_client.pas,注意内容只有密码,且与服务端密码文件中的密码相同。
        • 更改密码文件权限为600
        • 执行同步命令
        rsync -aqzrtopg --delete rsync://rsyncuser@27.223.26.74/mysql /home/oa_daba_backup --password-file=/etc/rsync_client.pas

        同步命令

        rsync -参数    用户名@同步服务器的IP::rsyncd.conf中那个方括号里的内   本地存放路径

        如:

        rsync -avzP    rsyncd@192.168.10.1::mysql  /backup说明:

        示例参数说明:

        • -a 参数,相当于-rlptgoD,
        • -r 是递归
        • -l 是链接文件,意思是拷贝链接文件;
        • -p 表示保持文件原有权限;
        • -t 保持文件原有时间;
        • -g 保持文件原有用户组;
        • -o 保持文件原有属主;
        • -D 相当于块设备文件;
        • -z 传输时压缩;
        • -P 传输进度;
        • -v 传输时的进度等信息


        rsync参数

        1. -v, --verbose 详细模式输出
        2. -q, --quiet 精简输出模式
        3. -c, --checksum 打开校验开关,强制对文件传输进行校验
        4. -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
        5. -r, --recursive 对子目录以递归模式处理
        6. -R, --relative 使用相对路径信息
        7. -b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。
        8. --backup-dir 将备份文件(如~filename)存放在在目录下。
        9. -suffix=SUFFIX 定义备份文件前缀
        10. -u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
        11. -l, --links 保留软链结
        12. -L, --copy-links 像对待常规文件一样处理软链接
        13. --copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链接
        14. --safe-links 忽略指向SRC路径目录树以外的链接
        15. -H, --hard-links 保留硬链接
        16. -p, --perms 保持文件权限
        17. -o, --owner 保持文件属主信息
        18. -g, --group 保持文件属组信息
        19. -D, --devices 保持设备文件信息
        20. -t, --times 保持文件时间信息
        21. -S, --sparse 对稀疏文件进行特殊处理以节省DST的空间
        22. -n, --dry-run显示哪些文件将被传输
        23. -W, --whole-file 拷贝文件,不进行增量检测
        24. -x, --one-file-system 不要跨越文件系统边界
        25. -B, --block-size=SIZE 检验算法使用的块尺寸,默认是700字节
        26. -e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步
        27. --rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
        28. -C, --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件
        29. --existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件
        30. --delete 删除那些DST中SRC没有的文件
        31. --delete-excluded 同样删除接收端那些被该选项指定排除的文件
        32. --delete-after 传输结束以后再删除
        33. --ignore-errors 即使出现IO错误也进行删除
        34. --max-delete=NUM 最多删除NUM个文件
        35. --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
        36. --force 强制删除目录,即使不为空
        37. --numeric-ids 不将数字的用户和组ID匹配为用户名和组名
        38. --timeout=TIME IP超时时间,单位为秒
        39. -I, --ignore-times 不跳过那些有同样的时间和长度的文件
        40. --size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间
        41. --modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0
        42. -T --temp-dir=DIR 在DIR中创建临时文件
        43. --compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份
        44. -P 等同于 --partial
        45. --progress 显示备份过程
        46. -z, --compress 对备份的文件在传输时进行压缩处理
        47. --exclude=PATTERN 指定排除不需要传输的文件模式
        48. --include=PATTERN 指定不排除而需要传输的文件模式
        49. --exclude-from=FILE 排除FILE中指定模式的文件
        50. --include-from=FILE 不排除FILE指定模式匹配的文件
        51. --version 打印版本信息
        52. --address 绑定到特定的地址
        53. --config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件
        54. --port=PORT 指定其他的rsync服务端口
        55. --blocking-io 对远程shell使用阻塞IO
        56. -stats 给出某些文件的传输状态
        57. --progress 在传输时显示传输过程
        58. --log-format=formAT 指定日志文件格式
        59. --password-file=FILE 从FILE中得到密码
        60. --bwlimit=KBPS 限制I/O带宽,KBytes per second
        61. -h, --help 显示帮助信息