使用 rsync 迁移服务器文件
先确认尾斜杠和元数据,再考虑删除;rsync 副本本身不是历史备份
rsync 适合通过本地文件系统或 SSH 重复同步目录树。归档模式 -a 不包含 ACL、扩展属性、访问时间、创建时间和硬链接,是否需要 -A、-X、-H 必须按文件系统验证。rsync 官方手册
- Linux 主机之间的应用文件、附件、配置和静态资源迁移
- 可以重复执行全量与增量复制,并在割接前进行最终同步的场景
- 需要显式处理属主、权限、ACL、扩展属性、硬链接或稀疏文件的目录
- 活跃数据库数据目录、虚拟机磁盘或应用无法保证一致性的写入目录
- 对象存储 Bucket:使用 rclone、厂商迁移服务或对象 API 工具
- 需要历史快照、防篡改保留和时间点恢复的备份目标
- 核对 SSH 主机指纹,不关闭主机密钥校验来绕过验证。
- 使用短期密钥、受限账号和目标目录最小权限,不在命令行传密码。
- 明确
/source/path与/source/path/的范围差异,并用小目录试验。 - 确认两端 rsync、文件系统、UID/GID、ACL、XAttr、硬链接和稀疏文件能力。
先演练;此命令不删除目标文件:
确认清单后移除 --dry-run 执行首次复制。割接前暂停或约束写入,再重复相同命令追赶变化。对不支持 ACL/XAttr 的目标文件系统,应移除对应选项并在差异记录中说明影响,不能把警告静默忽略。
rsync 不保存历史版本;恢复能力取决于目标副本是否独立、完整且未被同一错误覆盖。演练时从目标端复制到新的隔离目录,而不是覆盖源端:
确认 dry-run 范围后再执行实际恢复,并用只读方式启动应用验证。
--checksum 会读取两端文件计算校验,显著增加磁盘 I/O;它用于验证是否需要传输,与 rsync 对已传输文件的内部校验不是同一个概念。rsync 官方手册
同时记录文件数、逻辑容量、稀疏文件实际占用、ACL/XAttr 抽样、软硬链接、应用读取结果和命令退出码。
- 网络中断后使用相同源、目标和过滤规则重试,不临时改变尾斜杠。
- 如果差异持续出现,先确认业务仍在写入,再检查时间精度、UID/GID 映射和过滤规则。
--delete会删除目标端额外文件。确需镜像时先进行 dry-run、设置删除数量上限并取得审批;官方手册也明确建议删除前先 dry-run。- 不使用
--ignore-errors强制删除来掩盖源端 I/O 故障。
rsync 不是数据库备份、对象存储迁移器或不可变备份系统。核验日期:2026-07-14;参数语义以rsync 官方 manpage为准。
Built with