zoukankan      html  css  js  c++  java
  • Rsync数据同步工具

    Rsync是一款开源的,快捷的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具。用于服务器之间数据同步,一般都是通过定时任务和rsync。适用于unix、linux、windows等操作系统。

    特性:
    有排除功能,排除某个文件然后同步到目标。
    保持源文件或目录的权限、时间、软硬链接,属主、属组、属性不变。
    可以增量同步,只同步对方没有的。
    可以使用rcp,rsh,ssh等方式来配合传输文件。
    可以通过socket监听方式接收数据。
    可以加密传输。
    Rsync工作方式分为三大类:
    1.本地之间的数据同步。
    2.网络间两台不同IP服务器间数据同步。
    3.以socket进程监听的方式启动Rsync服务端,专门监听某个端口。

    第一类:

    [root@jinchuan ~]# rsync /etc/hosts /tmp  将hosts系统映射文件同步到/tmp
    [root@jinchuan ~]# rsync -avz /root/benet /tmp  将/root/benet目录同步到/tmp下
    -a表示以递归的方式传输  -v表示传输时显示详细信息  -z表示传输时进行压缩可以提高效率
    [root@jinchuan ~]# rsync -avz /root/benet /tmp --delete  这样可以实现/root/benet和/tmp两个目录完全一样,把/tmp下没有的增量传输过去,把/tmp与/root/benet下不一样
    的数据删除

    第二类:

    [root@jinchuan ~]# yum -y install openssh-clients  首先安装一个ssh通道的支持包
    [root@jinchuan ~]# rsync -avz /root/benet root@192.168.200.103:/tmp  将本地/root/benet目录增量同步到IP地址为192.168.200.131服务器的/tmp目录下
    [root@jinchuan ~]# rsync -avz -e 'ssh -p 22' /root/benet root@192.168.200.131:/tmp  -e是指定对方远程连接的端口号,默认是22不用指定。

    第三类:

    部署服务端:
    首先在服务端/etc/rsyncd.conf配置一个文件
    在配置文件内写
    uid = rsync
    gid = rsync
    use chroot = no
    max connections = 200
    timeout = 300
    pid file = /var/run/rsyncd.pid
    lock file = /var/run/rsync.lock
    log file = /var/log/rsyncd.log
    [backup]
    path = /backup/
    ignore errors
    read only = false
    list = false
    hosts allow = IP地址
    hosts deny = IP地址
    auth users = 虚拟用户名
    secrets file = /etc/rsync.password

    [root@jinchuan ~]# useradd -M -s /sbin/nologin rsync  创建rsync程序用户
    [root@jinchuan ~]# mkdir /backup  创建模块里的目录
    [root@jinchuan ~]# chown rsync.rsync /backup  将/backup的属主和属组改成rsync程序用户
    [root@jinchuan ~]# rsync --daemon  启动rsync服务
    [root@jinchuan ~]# touch /etc/rsync.password  在里面写虚拟的账号和密码
    [root@jinchuan ~]# chmod 600 /etc/rsync.password  将密码文件权限改成600
    部署客户端:
    [root@jinchuan ~]# vim /etc/rsync.password  创建服务端密码文件,写入密码。
    [root@jinchuan ~]# chmod 600 /etc/rsync.password  将密码文件权限改成600

    [root@jinchuan ~]# rsync -avz /root/benet rsync_backup@192.168.200.131::backup --password file=/etc/rsync.password  将客户端/root/benet目录推向

    服务端配置文件的模块,指向客户端的密码文件,这样可以密码免交互推送

    [root@jinchuan ~]# rsync -avz --bwlimit=100 /root/benet root@192.168.200.131:/tmp  这个是给rsync限速,因为他在推送时会占满整个带宽,导致其他服务无法正常工作

  • 相关阅读:
    delphi与JAVA的webservice架构
    process执行DOS命令
    DELPHI+JAVA 之间使用WebService
    一步一步用delphi实现webservice
    集合接口
    再次郑重声明
    京东的crm做的不错,赞一个
    vs 2010 ClickOnce 发布设置界面,系统必选包中缺少 fx2.0 的解决方法
    使用vs2010生成clickonce安装引导程序的方法
    用 Axialis IconWorkshop 将ico图标转换成gif图标
  • 原文地址:https://www.cnblogs.com/jinchuan16/p/9915751.html
Copyright © 2011-2022 走看看