zoukankan      html  css  js  c++  java
  • rsync数据同步工具应用指南

    Rsync (Remote synchonization) 
    rsync是Unix下的一款应用软件,它能同步更新两处计算机的文件与目录,并适当利用差分编码以减少数据传输。rsync中一项与其他大部分类似程序或协议中所未见的重要特性是镜像对每个目标只需要一次发送。rsync可拷贝/显示目录内容,以及拷贝文件,并可选择性的压缩以及递归拷贝。
    在常驻模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输协议或者通过远程shell如RSH或者SSH伺服文件。SSH情况下,rsync客户端运行程序必须同时在本地和远程机器上安装。
     
    rsync可以是一种网络服务,也可以是客户端命令。
    rsync命令可以在本地做同步和删除。
    1 rsync -avz /src/ /dest/ #cp
    2 rsync -avz --delete /src/ /dest/     #将/dest/和/src/同步,以靠近参数的为基准 
    rsync命令通过ssh通道从远端主机拉取数据到本地
    1 rsync -avzP -e 'ssh -p 22' /tmp/ root@192.168.1.253:/tmp/  #本地到远端
    2 rsync -avzP -e 'ssh -p 22' root@192.168.1.253:/mnt/ . #远端到本地,注意/mnt/的斜杠,有斜杠是目录下的内容,无斜杠是目录本身。
    -e 'ssh -p 22'表示通过ssh通道传输数据,-p 22 可以省略
    -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD。
    -z, --compress 对备份的文件在传输时进行压缩处理。
    -v, --verbose 详细模式输出。
    -P 显示同步的过程,可以用--progress替换
     
    配置rsync服务端:
    0、yum install rsync
    1、创建/etc/rsyncd.conf配置文件
     
    #rsync server
    uid=rsync
    gid=rsync
    pid file =/var/run/rsyncd.pid
    lock file=/var/run/rsync.lock
    log file=/var/log/rsyncd.log
    ignore errors
    read only=false
    list=false
    auth users=flyme #虚拟账号,不用在本地存在
    secrets file=/etc/rsync.passwd  #flyme存在在里面
    [backup]
    path=/root/backup #备份模块
    comment=backup
     
    2、创建rsync用户,及共享的目录/backup
    1 useradd rsync -s /sbin/nologin -M
    2 id rsync
    3 mkdir /backup
    4 chown -R rsync /backup
    3、创建密码文件
    1 echo "flyme:123456">/etc/rsync.passwd
    2 chmod 600 /etc/rsync.passwd
    4、开启rsync服务
      
    1 rsync --daemon
    2 ss -ta|grep rsync
    3 echo "rsync --daemon">>/etc/rc.local #开机自启
    配置客户端:
    0、安装yum install rsync
    1、创建密码文件
    echo "123456">/etc/rsync.passwd
    chmod 600 /etc/rsync.passwd
    2、rsync
    push:
    rsync -avz /tmp/ flyme@192.168.1.x::backup --password-file=/etc/rsync.passwd   #backup是服务端/etc/rsyncd.conf [xxx]
  • 相关阅读:
    判断JS数据类型的四种方法
    JavaScript正则表达式精简
    virtio介绍
    DPDK与SRIOV应用场景及性能对比
    KVM和Xen的区别
    理解 JavaScript 闭包
    JS数组常用操作方法总结
    JavaScript中的 NaN 与 isNaN
    如何在Unity中复制多个组件并粘贴到另一个GameObject上
    Unity Umotion 导入动作发生漂移的解决办法
  • 原文地址:https://www.cnblogs.com/naodong/p/6888376.html
Copyright © 2011-2022 走看看