【文件同步】如何用rsync实现文件目录同步

有人问:有两个目录 A B,A为主目录,B为备份目录,当A内容更新之后B要同时更新,当B删除文件之后,A也要同步删除,如何实现这个场景。

其实实现起来非常简单,

只需要安装使用rsync这个软件 

然后配置两条命令即可

想要实现A目录实时同步到B目录 使用

rsync -av --delete A/ B/

而想要实现B目录删除之后实时更新到A 

rsync -av --delete B/ A/

如果想要保持一致更新迭代 那就需要增加计划任务

  1. 打开“任务计划程序”。
  2. 创建一个新的任务,设置触发器(例如,每天或每小时运行一次)。
  3. 在“操作”部分,添加一个操作来运行批处理脚本 sync.bat

创建一个名为 sync.bat 的批处理文件,内容如下:

@echo off
rsync -av --delete A/ B/
rsync -av --delete B/ A/

 这样就可以实现了

 

下边我们来详细说下 如何使用rsync

在Windows上安装和配置rsync

在Windows上,您可以通过以下几种方式安装和配置rsync:

使用Cygwin
  1. 安装Cygwin

    • 访问Cygwin官网(Cygwin)并下载安装程序。
    • 运行安装程序,选择需要的包管理器进行安装。
    • 在安装过程中搜索并安装rsync包。
  2. 配置rsync

    • 在Cygwin终端中,您可以使用rsync命令,但需要将Windows路径转换为Unix风格。例如,C:\变为/cygdrive/c
    • 您可以创建一个rsync命令别名或批处理脚本来简化操作。
使用WSL(Windows Subsystem for Linux)
  1. 启用WSL

    • 在Windows 10或更高版本中,启用“适用于Linux的Windows子系统”功能。
    • 从Microsoft Store安装您选择的Linux发行版。
  2. 安装rsync

    • 打开WSL终端,使用包管理器安装rsync。例如,在Ubuntu中,您可以使用:
      sudo apt update
      sudo apt install rsync
  3. 配置rsync

    • 在WSL中,您可以像在Linux系统中一样使用rsync命令。
使用第三方rsync工具
  1. 下载第三方rsync工具

    • 您可以下载并安装如Cowboy's rsync(rsync)等第三方rsync工具。
  2. 配置rsync

    • 安装后,您可以在命令行中直接使用rsync命令。

在Linux上配置rsync

在Linux上,rsync通常已经预装或者可以通过包管理器轻松安装。以下是配置rsync的步骤:

安装rsync
  1. 安装rsync
    • 在大多数Linux发行版中,您可以使用包管理器安装rsync。例如,在Ubuntu或Debian中,您可以使用:
      sudo apt update
      sudo apt install rsync
配置rsync服务端
  1. 创建rsync配置文件

    • 创建/etc/rsyncd.conf(对于全局配置)或~/.rsync/config(对于用户级配置)。
    • 配置文件示例:
      uid = nobody
      gid = nogroup
      max connections = 4
      log file = /var/log/rsyncd.log
      
      [shared]
      path = /var/rsync/shared
      comment = Shared data
      read only = no
      list = yes
  2. 启动rsync服务

    • 您可以使用rsync --daemon命令启动rsync服务,或者创建一个systemd服务文件来管理rsync服务。
配置rsync客户端
  1. 同步文件

    • 使用rsync命令同步文件。例如,从远程服务器同步到本地:
      rsync -avz user@remote_host::shared /local/path
  2. 实时同步

    • 要实现实时同步,您可以使用inotify工具监控文件变化,并触发rsync命令。

这些步骤提供了在Windows和Linux上安装和配置rsync的基本指南。根据您的具体需求,您可能需要进行额外的配置和调整。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值