# 如何在windows上使用rsync

**URL:** <https://forum.beginner.center/t/topic/2472>\
**Category:** 🛠工具与编程\
**Tags:** windows, rsync\
**Created:** [2025 年12 月 4 日 03:09 UTC](https://forum.beginner.center/t/topic/2472 "2025-12-04T03:09:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

作者： ![doggie](https://forum.beginner.center/user_avatar/forum.beginner.center/doggie/32/550_2.png) [@doggie](https://forum.beginner.center/u/doggie)\
发布日期： [2025 年12 月 4 日 03:09 UTC](https://forum.beginner.center/t/topic/2472/1 "2025-12-04T03:09:26Z")

</div>

> 本文由 [简悦 SimpRead](http://ksria.com/simpread/) 转码， 原文地址 [kaifeiji.cc](https://kaifeiji.cc/post/using-rsync-on-windows/)

> 本博客部署在 VPS 上，之前一直用 SFTP 上传到服务器，不是很方便。 想到用 rsync 可以远程同步。

本博客部署在 VPS 上，之前一直用 SFTP 上传到服务器，不是很方便。

想到用 rsync 可以远程同步。

## 远程同步文件的选项

向 Linux 服务器远程同步文件，选项还是挺多的：

1、SFTP

Linux 发行版一般都自带 sftp-server，所以只需要本地装个 FileZilla，用 SSH 账号连接上传即可。

有三个痛点：一是难以用脚本实现自动化，二是加密传输速度慢，三是更新同步不方便（全量覆盖？选择覆盖？）。

2、FTP

Linux 需要安装一个 FTP 服务器，倒也不繁琐；本地还是 FileZilla。

解决了 SFTP 速度慢的问题，但仍然无法实现自动化的更新同步。

3、Git

需要有一个 Git 服务器做中转，GitHub、GitLab、Gitee，或者自建 Git Server 也行。

本地和 VPS 克隆同一个仓库。

本地提交（`git commit -m "new article"`），推送（`git push`）。

VPS 拉取（`git pull`）。

实现了增量同步，不用全量覆盖（几百 MB）等半天。

4、rsync

Linux 自带，速度快，增量同步——简直完美。

## 在 Windows 中使用 rsync

重点来了，怎么在 Windows 使用 Linux 的 rsync 命令呢？

### cwrsync

cwrsync 是 [itefix.net](http://itefix.net) 开发的 rsync 在 Windows 的实现。

早期有免费版本，目前官网开始收费，不提供免费下载链接，但在其他地方仍然能下载到。

下载解压到`C:\app\cwrsync`，进入 cmd：

```auto
C:\app\cwrsync> cd bin
C:\app\cwrsync\bin> rsync -av --progress /cygdrive/c/some/path/ user@123.123.123.123:/var/www/blog

```

注意：rsync 不支持 Windows 格式的路径（例如 C:\some\path\），cwrsync 使用 / cygdrive/c/some/path/，映射到 C 盘的对应路径。

### cygwin

cygwin 是在 Windows 上兼容 POSIX 的模拟层：提供 Cygwin Terminal，可以执行 Shell 命令，例如 ls、mkdir 等；提供了包管理服务，可以安装包括 rsync 在内的常见 Linux 软件。

在安装 cygwin 的过程中，可以选择安装 rsync：

 ![](https://discoursecdn.beginner.center/original/2X/9/98345b9c1e4daf9aecaffc7c848668581c0aa900.png)

如果已经安装过 cygwin，可以再次执行 cygwin 的 setup 安装包，选择安装 rsync。

安装完成后，直接使用 rsync 即可：

 ![](https://discoursecdn.beginner.center/original/2X/1/14bea3fc5df08b6cb013a902e303c3da83c7efa7.png)

没错，cygwin 用的路径也是`/cygdrive/c/some/path/`，因为 cwrsync 其实是基于 cygwin 开发的。

### git bash

优点是只要在 Windows 安装了 git 就能使用，缺点是安装 rsync 比较麻烦。

具体参考这位老哥的文章：

[How to use rsync on Git Bash](https://shchae7.medium.com/how-to-use-rsync-on-git-bash-6c6bba6a03ca)

与 cygwin 不同的是，git bash 是基于 MinGW 在 Windows 实现的 bash shell，它所映射的 Windows 路径是这样的：`/c/some/path/`。

### WSL

WSL 是更重的解决方案，但是一劳永逸。不再赘述。
