计划任务、实时同步与自动触发配置
三种触发模式对比
| 模式 | 触发时机 | 延迟 | 资源消耗 | 适用场景 |
|---|---|---|---|---|
| 实时监控(Real Time) | 文件系统变更时立即触发 | 毫秒级 | 中等(需持续监控) | 多设备协同、文档实时同步 |
| 计划任务(Schedule) | 按预设时间间隔触发 | 取决于间隔 | 低(空闲时触发) | 定时备份、非实时场景 |
| 手动触发 | 用户点击 Analyze/Synchronize 按钮 | 用户主动 | 仅运行时消耗 | 低频同步、临时需求 |
实时文件监控
工作原理
实时监控模式下,GoodSync 会在后台持续监控左右端点的文件系统事件。一旦检测到文件或文件夹的创建、修改、删除、重命名,就会在短暂的等待延迟(可配置,默认几秒)后自动触发同步作业。
等待延迟的设置是为了避免文件还在写入时就同步——比如一个大文件正在保存中,GoodSync 会等它写完再开始复制。
配置步骤
- 打开作业 → Options → Automation 标签
- 勾选「Real Time」复选框
- 设置等待延迟(建议 3-10 秒,根据文件大小调整)
- 可选项:设置「Reconnect if lost」(端点断连时自动重连)
实时监控的局限性
- 网络端点延迟:对于 FTP、云存储等基于网络协议的端点,GoodSync 无法直接监听文件系统事件,只能用定时轮询方式模拟实时——间隔通常是 30-60 秒
- Windows 网络共享:SMB 端点在 Windows 上支持事件通知,但事件传播有延迟
- 资源占用:持续监控需要占用少量 CPU 和内存,在同时运行多个实时作业时需要注意

计划任务
可用计划类型
GoodSync 内置了多种预设计划间隔:
- Every minute
- Every 15 minutes
- Every 30 minutes
- Every hour
- Every 2 hours
- Every 4 hours
- Every 8 hours
- Once a day at specific time(指定每天的某个时间)
- Once a week on specific day and time(每周指定日期和时间)
- Once a month on specific day and time(每月指定日期)
也可以通过 Windows 任务计划程序或 Linux cron 创建自定义计划,调用 gsync 命令行工具触发。
配置步骤
- 打开作业 → Options → Automation 标签
- 勾选「Schedule」复选框
- 选择间隔类型,或自定义具体的日期时间
- 可选:设置计划错过时的补跑策略(如电脑关机错过了计划,开机后是否补跑)
计划与实时可以共存
一个作业可以同时开启实时监控和计划任务,两者互不冲突——实时监控负责快速响应文件变更,计划任务作为兜底确保即使实时监控漏掉的变更也能被同步到。
开机自启与无人值守
Windows 选项
- 注册为服务:Server 版 GoodSync 可以注册为 Windows 服务,开机即启动,不依赖用户登录
- 加入启动项:标准版可以在 GoodSync Options → General 中勾选「Start GoodSync when Windows starts」,让 GoodSync 在用户登录后自动启动
- 计划任务触发:通过 Windows 任务计划程序创建「开机时触发」的任务,运行
gsync run <作业名>
Linux 选项
- systemd timer:可以创建一个定时器单位文件,在开机时触发同步作业
- cron:传统方式,在 crontab 中添加开机任务(
@reboot gsync run JobName)
脚本钩子(进阶)
GoodSync 支持在同步的不同阶段执行自定义脚本:
- Before Sync:同步开始前执行
- After Sync:同步完成后执行(无论成功失败)
- On Error:同步发生错误时执行
脚本可以是任何可执行程序(.bat、.cmd、.ps1、.sh、.exe 等),通过命令行参数接收作业名、同步结果等信息。
典型用途:
- 同步完成后发送邮件通知
- 同步失败时触发告警
- 同步成功后执行后续数据处理任务(如数据库备份后同步,同步完成后压缩)
脚本钩子在 Options → Scripts 标签中配置。
配置检查清单
在启用自动触发(实时/计划)之前,确认以下事项:
- [ ] 过滤器已配置好,不会同步意外的文件
- [ ] 端点连接稳定,不会频繁断连
- [ ] 存储目标有足够空间
- [ ] 冲突处理策略已明确设置(双向同步模式)
- [ ] 版本历史已开启(防止自动同步中的误操作)
- [ ] 端点的自动重连选项已启用(在 Advanced 标签中)