zoukankan      html  css  js  c++  java
  • 利用Rsync进行文件同步

    1 需求

      先描述下需求,有时候后台经常要同步一些数据,然而又不想每次都全量同步。举个例子,有一个单点物理机,在上面部署了很多脚本和数据的目录,这些脚本又提供给外部来使用,这样的话,如果这台物理机器挂了,部署在上面的脚本都丢失了,这样导致外部调用都失败了,而且你不好恢复这些脚本,这些脚本都可能和目录结构有很强的关联性。

    2 原始办法

      每天定时打包脚本和数据目录,通过scp传到备份的机器上,来实现数据同步,这样有个缺点是,每次的数据同步都需要全量同步,如果数据文件目录很大的话,同步时间就会非常长,而且占用不必要的带宽。

    3 利用rsync进行数据同步

    3.1 增量同步

    推荐这种方式:

    /usr/bin/rsync -avz --progress 源目录 目的IP:目的目录

    在这种方式,文件只会以增量的方式进行同步,而不会删除原有文件。

    3.2 增、删方式同步

    /usr/bin/rsync -avz --progress –delete 源目录 目的IP:目的目录

      文件以差量的方式进行同步,源目录下新增或删除的文件都会同步到目的目录。但这种方式建议慎用,除非是你想完全保证两个机器的两个目录完全同步,否则,有可能你在目的机器上加了一个脚本,一不小心就被这个同步给删除。

    4 定时执行同步(Crontab)

      有时候,你需要定时执行同步功能,Linux下可以配置定时Crontab任务,配置方法可以参见crontab配置

  • 相关阅读:
    WPF学习笔记(三)
    WPF自定义控件——使用Win32控件
    WPF学习笔记(二)
    WPF自定义控件 —— 装饰器
    WPF中改进自定义Command一些想法
    WPF自定义控件 —— 布局
    制作WPF联机飞行棋的失败体验
    WPF自定义控件 —— 自绘篇
    c语言清屏、等待、随机函数
    c语言一个显示星号的函数(隐藏密码)
  • 原文地址:https://www.cnblogs.com/derrick/p/4055646.html
Copyright © 2011-2022 走看看