在 RcloneView 中使用空运行预览同步更改后再进行传输
一次配置错误的同步可能在几秒钟内删除数千个文件。RcloneView 让你可以在传输任何一个字节之前,通过空运行预览每一项更改,让你在提交同步之前拥有十足的信心。
同步操作是 rclone 中最强大的功能之一。它会让目标与源保持一致,传输新文件、更新已更改的文件,并删除源中已不存在的文件。最后这部分,也就是删除操作,正是让同步既强大又危险的原因。
空运行会模拟整个同步操作,而不会真正移动、复制或删除任何内容。它会准确地向你展示将要发生的事情:哪些文件将被传输、哪些将被删除、哪些将被跳过。你可以查看输出结果,确认它符合你的预期,然后才执行真正的同步。
RcloneView 将空运行直接集成到其同步工作流程中,让你可以在提交更改之前,轻松通过 GUI 预览更改。无论你是在同步两个云远程,还是将本地文件备份到云端,空运行都应该是你每次操作的第一步。

在一个地方管理和同步所有云端
RcloneView 是 rclone 的跨平台 GUI。通过清爽的可视化界面比较文件夹、传输或同步文件,并自动化多云工作流。
- 一键作业:复制 · 同步 · 比较
- 调度器与历史记录,实现可靠的自动化
- 支持 Google Drive、OneDrive、Dropbox、S3、WebDAV、SFTP 等
核心功能免费。Plus 提供自动化功能。
空运行的作用
启用空运行模式后,rclone 会执行与真实同步相同的所有分析:扫描源和目标,按大小、时间戳或校验和比较文件,并构建要执行的操作列表。唯一的区别是这些操作实际上都不会被执行。
空运行输出会告诉你:
- 要传输的文件:将从源复制到目标的新增或已修改文件。
- 要删除的文件:目标中存在但源中不存在、将被移除的文件。
- 要跳过的文件:两端相同、无需任何操作的文件。
- 总数据量:将要传输的数据量,帮助你估算所需时间和带宽。
此模 拟为只读操作。不会移动、复制或删除任何文件。你的源和目标将完全保持不变。
为什么空运行对破坏性操作至关重要
sync 命令本质上具有破坏性,因为它会删除目标中源里不存在的文件。这是有意为之的设计,正是这一点使同步与复制不同。但这也意味着一旦出错就会产生后果:
- 同步方向错误:如果你不小心交换了源和目标,同步会删除你的源文件,以匹配一个空的或过时的目标。
- 路径不正确:同步到错误的目录可能会覆盖不相关的文件,或触发大量删除。
- 过滤器配置错误:如果你的包含/排除过滤器设置错误,原本想保留的文件可能会在源扫描中被排除,从而在目标中被删除。
- 身份验证过期:如果源远程的凭据已过期,它可能会显示为空,导致同步删除目标中的所有内容。
空运行可以在任何损害发生之前捕获上述每一个问题。花几秒钟查看输出结果,可以节省数小时的恢复工作。
如何在 RcloneView 中启用空运行
RcloneView 提供了一种简单直接的方式来运行同步预览:
- 打开 Job Manager(作业管理器),选择要预览的同步作业。
- 在作业 配置的 Custom Flags(自定义标志) 部分添加
--dry-run标志。 - 执行该作业。RcloneView 将模拟同步并显示结果。
- 在传输监视器中查看输出,了解将会发生什么。
- 如果一切看起来正确,移除
--dry-run标志,然后真正运行该作业。
或者,你也可以使用内置终端直接运行空运行命令:
rclone sync source: dest: --dry-run
解读空运行输出
空运行输出使用与真实同步相同的格式,但不会执行任何操作。以下是需要留意的内容:
已传输的文件会列出其 路径和大小。请确认这些正是你期望被更新或添加的文件。如果你看到一些本应已经同步的文件被列为传输对象,这可能表明存在时间戳不匹配或校验和差异,值得进一步调查。
已删除的文件是最需要重点审查的项目。列出待删除的每个文件,在真实同步中都将从目标永久移除。如果你在此处看到想要保留的文件,可能需要调整源路径、过滤器或同步方向。
已跳过的文件证实了已同步的文件被正确识别。健康的空运行输出应主要显示跳过的文件,只有少量的传输和删除操作。
结尾处的汇总统计信息会告诉你传输、删除的总数以及总数据量。将这些数字与你的预期进行比较。如果你正在同步一个只改动了一个文件的文件夹,但空运行却显示数千次传输,那说明某处配置有误。
空运行发现的常见意外情况
以下是空运行曾经避免数据丢失的真实场景:
意外的大规模删除:你设置了从 Google Drive 到 S3 的同步,但 Google Drive 的令牌已过期。Rclone 看到的是一个空的源,于是计划删除目标中的所有内容。空运行会显示数千次删除且零传输,立即标记出这个问题。
过滤器不匹配:你为 *.tmp 文件添加了排除过滤器,但不小心输入成了 *.tmpl,这恰好匹配到了你的 Terraform 模板文件。空运行显示这些模板文件将从目标中被删除,从而提醒你发现了这个拼写错误。
基础目录错误:你原本打算同步 remote:projects/2026,却输入成了 remote:projects。空运行揭示了所有项目年份的文件都将被同步,这可能会覆盖你并不打算触及的子目录中的文件。
大小写敏感问题:在不区分大小写的远程(如 OneDrive)和区分大小写的远程(如 S3)之间移动文件,可能会产生重复文件。空运行会显示这些意外的传输,让你能在问题扩大之前处理好大小写冲突。
将空运行纳入你的工作流程
为了实现最大程度的安全,建议将空运行纳入你的标准操作流程:
手动同步时:在执行任何同步操作之前,始终先运行一次空运行。查看输出结果后,再移除该标志并运行真正的同步。多花的这一分钟绝对物有所值。
创建新的计划任务时:创建新的计划同步任务时,先手动使用 --dry-run 运行一次。只有在确认空运行输出符合预期之后,才启用该计划任务。
配置更改之后:每当你修改某个作业的源、目标、过滤器或标志时,在下一次执行之前先运行一次空运行。配置更改可能会产生意外的副作用,而空运行能够揭示这些问题。
定期检查现有作业:即使是稳定运行已久的计划任务,偶尔进行一次空运行审查也是有益的。源数据、远程配置或提供商行为的变化都可能随时间改变同步行为。