前言
在Win服务器上磁盘扩容是有风险的,所以我们最好在扩容前进行数据的备份。
以下有几种常见的方式:
- 复制(FastCopy)
- 克隆(傲梅分区助手)
- 同步(RoboCopy、FreeFileSync)
FastCopy
特点
- FastCopy是Windows上最快的复制/备份软件
- 可复制(&删除)UNICODE和超过MAX_PATH(260个字)的文件路径名。
- 读/写/验证被做成独立的线程运行,加上异步和直接I/O,以保持性能接近设备的极限。
- 可指定包含/排除过滤器(UNIX通配符样式)。
- 因没有使用MFC,仅使用Win32API设计,不会贪占资源,运行快速。
个人使用结果
当文件都是小文件的时候效果不好。
适合大文件的复制。
因为是复制所有源目录文件不能变化。
傲梅分区助手
使用傲梅分区助手
的分区克隆功能。
个人结果
备份速度比FastCopy快,没有FreeFileSync快。
克隆的时候会冻结原磁盘,冻结原磁盘会影响业务。
RoboCopy
作为 Windows 系统自带的命令行工具,它在处理超大磁盘同步时性能出色。
它支持多线程复制,可以充分利用系统资源,加快同步速度。
而且能处理大量文件和大文件,在处理磁盘级别的数据同步时表现稳定。
缺点
没有图形化界面,没法查看进度和剩余时间。
同步小文件效果不如FreeFileSync。
再次同步的时候会全部文件进行对比,效果非常不好。
镜像复制
让目标目录 E:\DestinationFolder
成为源目录 D:\SourceFolder
的一个精确副本,会删除目标目录中源目录没有的文件和文件夹。
1 | robocopy D:\SourceFolder E:\DestinationFolder /MIR |
参数解释
/MIR
:镜像目录树,相当于/E
和/PURGE
的组合,/PURGE
表示删除目标中源中不存在的文件和文件夹。
默认会根据系统资源和任务情况合理分配线程数量,以此提高复制效率。
若你想手动指定线程数量,可以使用 /MT
选项。
实际示例
1 | robocopy D:\data\wwwjarapi\schoolfile E:\data\wwwjarapi\schoolfile /MIR |
多线程复制
使用 8 个线程将源目录 D:\SourceFolder
中的文件复制到目标目录 E:\DestinationFolder
,以加快复制速度。
1 | robocopy D:\SourceFolder E:\DestinationFolder /MIR /MT:8 |
参数解释
/MT
:指定多线程复制,后面的数字表示线程数,建议根据系统性能和磁盘情况调整。
仅复制新文件或更改过的文件
只复制源目录 D:\SourceFolder
中比目标目录 E:\DestinationFolder
中更新或不存在的文件。
1 | robocopy D:\SourceFolder E:\DestinationFolder /E /XO |
参数解释
/E
:复制子目录,包括空的子目录。/XO
:排除目标中比源更新的文件。
按文件大小和时间筛选复制
仅复制源目录 D:\SourceFolder
中大小大于 10MB 且在 2024 年 1 月 1 日之后修改过的文件到目标目录 E:\DestinationFolder
。
1 | robocopy D:\SourceFolder E:\DestinationFolder /E /MIN:10485760 /MAXAGE:20240101 |
参数解释
/MIN
:指定要复制的文件的最小大小(以字节为单位),这里 10MB 换算为字节是 10485760 。/MAXAGE
:指定要复制的文件的最大修改日期,格式为 YYYYMMDD。
记录日志
将复制过程记录到 C:\log.txt
文件中,同时在命令行显示详细信息。
1 | robocopy D:\SourceFolder E:\DestinationFolder /E /LOG:C:\log.txt /V |
参数解释
/LOG
:将状态输出到日志文件(覆盖现有日志)。/V
:显示详细信息。
FreeFileSync(推荐)
个人使用起来最推荐的方式。
免费版的不能设置多线程,捐赠版才可以。
优点
- 能显示同步的进度和剩余时间。
- 能监控文件夹变化自动同步。
- 小文件多的时候性能较好。
注意
每次同步之前要先点击
比较
进行重新对比。同步配置中
使用数据库文件来检测变化
主要用于文件夹下文件或文件夹移动位置的情况,如果没有这种情况不要勾选。