首页/数据/备份与容灾速查/robocopy 文件镜像备份

robocopy 文件镜像备份

Windows 的文件复制工具:支持重试等待、日志留档与镜像模式,适合把目录复制到外置盘或文件服务器做镜像备份。

备份与容灾速查数据更新于 2026-10-13

robocopy 是什么

Windows 自带的文件复制工具,面向大批量目录同步:支持多线程、断点重试、失败等待、属性与 ACL 复制、日志留档以及镜像模式。相比资源管理器复制,它在长路径、海量小文件、网络抖动场景下更稳,退出码还能被脚本直接判断,因此常被用作 Windows 上的文件级备份与同步手段。

基本信息

适用平台Windows 7/Server 2008 R2 及以后,系统自带
权限要求读取源、写入目标;复制 ACL 与所有者需相应特权
关键选项/MIR 镜像、/E 含空目录、/R 重试次数、/W 等待秒数、/L 预演、/MT 多线程
日志/LOG 覆盖写日志,/LOG+ 追加,/TEE 同时输出到控制台

典型使用场景

  • 把业务目录镜像到外置盘或文件服务器,做每日文件级备份
  • 跨机房搬运海量小文件,用 /MT 提高吞吐并允许重试
  • 迁移前预演:加 /L 只列动作不落地,确认范围后再正式执行
  • 保留 NTFS 权限:用 /COPYALL 或 /SEC 复制访问控制列表
  • 长期留档:日志按天追加到文件,便于事后核对复制结果

镜像备份示例

镜像备份示例
robocopy C:\data E:\backup\data /MIR /L /NP /TEE      # 先预演,只列将要执行的动作
robocopy C:\data E:\backup\data /MIR /R:2 /W:5 /NP `    # 正式执行,失败重试 2 次、每次等 5 秒
  /LOG+:E:\logs\robocopy.log /TEE                        # 追加日志并同时打印
robocopy C:\data E:\backup\data /E /XO /R:1 /W:3 `       # 只补新文件的追加模式,不删目标
  /COPYALL /MT:16 /NP                                   # 复制全部属性,16 线程

退出码读法

退出码含义处理建议
0没有文件需要复制正常,注意别误判为失败
1有文件复制成功正常
2目标存在多余文件(未指定 /MIR 时不删)确认是否需要清理
31+2 同时发生正常
8 及以上有文件复制失败必须告警,检查占用与权限
16严重错误,未执行复制检查路径、凭据与目标可达性
/MIR 会删除目标端多余文件:目标必须是专用备份目录,源路径写错(少一层目录)会直接清空目标里的有效数据。首次执行前一律先加 /L 预演。

易错点

  • 用 0 与非 0 判断成败:robocopy 的 0-7 都属于正常返回,脚本必须按位判断 8 及以上才是失败
  • /MIR 指向含人工文件的目录:目标端非备份产生的文件会被删除,且无回收站可恢复
  • 长路径超过 260 字符报错:需用 \\?\ 前缀或启用长路径支持
  • 复制打开中的文件(如 PST、数据库文件)失败:应先停应用或改用卷影复制

数据来源与参考

  • Microsoft Learn(robocopy 语法与选项说明)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌