11、文件比较与同步工具(FreeFileSync)
11.1、基本介绍:
1、FreeFileSync是一个用于文件同步的免费开源程序。FreeFileSync通过比较其内容,日期或文件大小上的一个或多个文件夹,然
后根据用户定义的设置同步内容。除了支持本地文件系统和网络共享之外,FreeFileSync还能够同步到FTP,FTPS,SFTP和MTP设备。
2、下载网址:https://freefilesync.org/。
3、支持系统:Windows,Linux和macOS。
(1)请选择windows版的进行下载:
(2)点击 exe 文件,一路"下一步"安装即可,安装后桌面上会出现 2 个快捷方式:
11.2、基本操作:
1、软件界面及功能:
(1)图示:
(2)功能:
1)快捷工具窗口
2)保存/加载配置
3)文件比较缩略图
4)开始比较文件差异按钮
5)文件比较设置
6)过滤条件设置
7)修改同步设置
8)同步按钮
9)源文件目录设置
10)待同步文件目录
11)源文件目录与待同步目录不同的文件列表
12)同步预览区域
13)待同步文件与源文件不同的列表
14)同步统计
2、文件比较设置:
(1)图示:
比较两个文件夹时,FreeFileSync会分析相对于包含文件的左右基本文件夹的路径。如果相对路径匹配,
FreeFileSync将通过考虑所选的比较变量来决定文件对的分类方式。
(2)按文件时间和大小进行比较:
1)当变体时间和文件大小匹配时,此变体认为两个文件相等。
2)在将文件与备份位置同步时应该选择它。
3)每当更改文件时,其文件修改时间也会更新。因此,按文件时间和大小进行比较将检测应同步的所
有文件。
(3)按文件内容比较:
1)如果两个文件具有相同的内容,则将它们标记为相等。
2)在进行一致性检查时应选择此变体,以查看两侧的文件是否按位相同。
3)它是所有比较变体中最慢的,因此其用于同步目的的有用性是有限的。
4)如果用于同步,则当修改时间不可靠时,它可以用作后备。例如,某些移动电话和传统FTP服务器
不会保留修改时间,因此在文件大小相同时检测不同文件的唯一方法是阅读其内容。
(4)按文件大小比较:
1)如果文件大小相同,则认为两个文件相同。
2)由于具有相同大小的文件可能具有不同的内容,因此仅当文件修改时间不可用或不可靠时才应使用
此变体。例如,在某些MTP和FTP同步方案中,按内容进行比较的速度太慢。
3、文件过滤设置:
(1)图示:
如果文件和目录通过所有过滤规则,则仅考虑进行同步。它们必须匹配包含列表中的至少一个条目,并
且不包括过滤器配置对话框中显示的排除列表中的任何条目,每个列表项必须是相对于同步基目录的文
件或目录路径。必须用 | 分隔多个项目或新行。* 和 ?的使用:* 表示零个或多个字符,而 ?代表一个
字符。
(2)从文件夹对C:\Source,D:\Target中排除项目:
(3)排除除某些文件之外的子文件夹:
设置两个具有相同源和目标路径但具有不同本地过滤器的文件夹对。
1)文件夹1:
排除文件夹:\SubFolder\
2)文件夹2:
包含文件:\SubFolder\*.txt
(4)排除空文件夹
文件大小为零的过滤器设置文件大小过滤器,下限为0个字节。 时间跨度和文件大小过滤器仅匹配文件,
因此这将排除所有文件夹。 然而,在同步期间,如果一些排除的文件夹包含至少一个非排除的项目,即
当它们不是空的时,它们仍将被同步。
4、同步设置:
(1)图示:
(2)同步模式:
1)双向:将左侧的更改同步到右侧,将右侧的更改同步到左侧。
2)镜像:将左侧的更改同步到右侧,包含删除移动等。
3)更新:将左侧的更改同步到右侧,不删除右侧原有的文件。
4)自定义:自行根据需要定义同步模式。
(3)检测已移动的文件:
1)FreeFileSync 能够在一侧检测移动的文件,并且可以在同步期间快速在目标端应用相同的移动,而不是
慢速复制和删除。为了使其工作,FreeFileSync 需要数据库文件(sync.ffs_db)来比较当前文件系统状态与上
次同步的时间。
2)双向:已经创建了数据库文件,因此,移动文件的检测始终处于活动状态。
3)镜像:不需要数据库文件来查找同步方向,因此默认情况下无法检测已移动的文件。如果你不介意创建
数据库文件,可以通过选中"检测已移动的文件"复选框来启用此功能。
4)更新、自定义:无法使用"检测已移动的文件"。
5)注意:
第一次同步文件夹对时,无法检测已移动的文件,只有从第二次同步开始,数据库文件才可用于确定移动的
文件。所有文件系统都不支持检测。最值得注意的是,无法检测FAT文件系统上的某些文件移动, 还有虚拟
化的文件系统,例如,安装的 WebDAV 驱动器可能不支持移动检测,在这些情况下,FreeFileSync 将自动
回退复制和删除。
5、高级设置:
(1)说明:
FreeFileSync 具有许多专用设置,只能通过手动打开全局配置文件 GlobalSettings.xml 来访问。请注意,
FreeFileSync 启动时会读取此文件一次,退出时会再次保存。因此,仅在 FreeFileSync 未运行时才应用手
动更改。对于便携式 FreeFileSync 变体,该文件位于安装文件夹中,对于本地安装,请转到:
Windows:%AppData%\FreeFileSync
Linux:~/.config/FreeFileSync
macOS:~/Library/Application Support/FreeFileSync
(2)参数:
1)FileTimeTolerance:
默认情况下,文件修改时间允许有2秒的差异,但仍被视为相等。这是FAT / FAT32文件系统所要求的,它只能以2秒的精度存储文件时间。
2)RunWithBackgroundPriority:
在同步正在运行时,访问相同数据位置的其他应用程序可能会出现明显的减速。启用此设置可降低 FreeFileSync 的资源消耗,但代价是
同步速度明显降低。
3)LockDirectoriesDuringSync:
为了防止多个同步任务读取和写入相同的文件,FreeFileSync 实例使用锁定文件(sync.ffs_lock)进行序列化。锁文件只能由 FreeFileSync
识别,并确保最多只能同时对某个文件夹运行单个同步,而其他实例排队等待,这可确保只有一致的文件集才能同步。主要用例是网络同
步方案,其中多个用户针对共享网络文件夹同时运行FreeFileSync。
4)VerifyCopiedFiles:
如果处于活动状态,FreeFileSync 将在复制后对源文件和目标文件进行二进制比较并报告验证错误。请注意,这可能会使文件复制时间翻
倍,并且无法保证数据在复制之前尚未损坏。此外,欺骗性地从应用程序和硬件堆栈中的各种缓冲区中读取有效数据可能会隐藏损坏。
5)NotificationSound:
从比较或同步后要播放的FreeFileSync安装目录中选择声音文件。如果不播放声音,请设置空名称。
6、同步文件步骤:
(1)设置源文件目录
(2)设置待同步文件目录
(3)设置文件比较方式(比较内容、时间、大小)
(4)设置同步参数(双向、镜像、更新及自定义)
(5)点击同步按钮
11.3、把 10.155.0.80 的本地 D:\source 目录同步到本机挂载的网络驱动器 Z 盘 \\10.155.0.81\network 上:
1、远端服务器 81 设置:
(1)确保服务项中开启了 tcp/ip netbios helper 服务(默认是开启的):
(2)开放网络访问共享目录端口:
windows 防火墙开放入站访问策略 139、445 端口。
(3)把需要同步的 network 目录共享出来:
2、本地服务器 80 设置:
(1)新建网络映射驱动器:
1)映射:
2)映射成功:
(2)双击绿色的图标,进行备份策略的配置:
1)选项设置:
A、
B、
2)比较设置:
A、
B、
3)过滤器设置:
A、
B、
4)同步设置:
A、
B、
(3)手动同步:
提示:
上图的手动同步每次同步前需要指定目标目录,否则无法同步。
可以将配置为
文件,方便以后手动同步时使用,也方便编辑,方便同时开多个不同的同步对进程进行同步。
(4)另存为批处理作业,自动同步:
1)另存为批处理作业到桌面:
2)保存之后如下图(选中后点击右侧的"同步"可以进行手动同步):
3)双击桌面上的红色快捷方式,把上图中的配置文件拖到命令行框里,设置同步的时间间隔,点击开始,开始同步:
提示:可以同时开多个不同的同步对进程进行同步,默认的空闲时间是10s(亲测一个小时之内可用,太大可能监测会失效(12个小时))。
为了方便可以将设置为定时任务,但不能使用网络驱动器,否则会因无法验证用户而同步失败。
4)然后,会在右下角的任务栏中出现红色的图标:
11.4、FreeFileSync的优缺点:
1、优点:
(1)同步的最小时间间隔可以精确到秒级。
(2)可以设置单向或双向同步。
2、缺点:
服务器重启后,需要手动启动红色的同步软件,并鼠标单击开始按钮,否则无法开始同步。
11、文件比较与同步工具(FreeFileSync)的更多相关文章
- 文件比较与同步工具——FreeFileSync
1. 基本介绍 FreeFileSync是一个用于文件同步的免费开源程序.FreeFileSync通过比较其内容,日期或文件大小上的一个或多个文件夹,然后根据用户定义的设置同步内容.除了支持本地文件系 ...
- FreeFileSync 4.2 发布,文件夹比较和同步工具
FreeFileSync 是一款开源的文件夹比较和同步工具,可用于 Win 和 Lin 平台,最近发布了 4.2 版本. FreeFileSync 采用双面板设计,使用方法很简单: 在左面版和右面版上 ...
- Rsync 3.1.0 发布,文件同步工具
文件同步工具Rsync 3.1.0发布.2013-09-29 上一个版本还是2011-09-23的3.0.9 过了2年多.Rsync基本是Linux上文件同步的标准了,也可以和inotify配合做实时 ...
- Microsoft SyncToy 文件同步工具
Microsoft SyncToy SyncToy 是由 微软 推出的一款免费的文件夹同步工具.虽然名字中有一个 Toy,但是大家可千万不要误以为它的功能弱爆了.实际上,我感觉这款软件还真是摆脱了微软 ...
- 【转】文件同步软件FreeFileSync
原文网址:http://imcn.me/html/y2012/9855.html FreeFileSync 是一款开源的文件夹比较和同步工具,可用于 Win 和 Lin 平台,最近发布了 5.0 版本 ...
- windows文件同步工具
windows 文件同步工具: realTimesync freefilesync second copy second copy注册码: Name:爱学府软件园 注册码:15BF-E46C-67 ...
- 文件和文件夹同步工具AFiles 1.0 发布
文件和文件夹同步工具AFiles 1.0 正式发布了! 本软件支持按文件日期或长度的各种比较方式来同步文件或者文件夹. 支持双向同步功能. 支持深层文件夹功能. 可以自动产生比较和同步的记录情况. ...
- 文件同步工具BT Sync介绍和使用说明
BT Sync介绍 BT 下载,相信大伙儿都知道的.今儿个要介绍的 BT Sync,跟 BT 下载一样,都是 BitTorrent 公司发明滴玩意儿,都是采用 P2P 协议来进行传输. 简而言之,BT ...
- Lsyncd - 实时文件同步工具(精译)
原文: http://axkibe.github.io/lsyncd/ 描述 Lsyncd监视本地目录树事件监视器接口(inotify或fsevents).它聚集并组合事件几秒钟,然后生成一个(或多个 ...
随机推荐
- 用 set follow-fork-mode child即可。这是一个 gdb 命令,其目的是告诉 gdb 在目标应用调用fork之后接着调试子进程而不是父进程,因为在 Linux 中fork系统调用成功会返回两次,一次在父进程,一次在子进程
GDB的那些奇淫技巧 evilpan 收录于 Security 2020-09-13 约 5433 字 预计阅读 11 分钟 709 次阅读 gdb也用了好几年了,虽然称不上骨灰级玩家,但 ...
- [Qt] 打包
步骤: 1.release项目,生成exe文件 2.在命令行中使用windeployqt,将相关文件复制到exe文件所在文件夹 3.用Enigma Virtual Box打包所有文件 参考 https ...
- 【CentOS_7】使用tcpdump抓明文包
tcpdump port 12345 -X -X:以十六进制与ASCII方式输出,用于抓取http等明文传输协议 tcpdump功能强大,更多参数可以参考 https://www.cnblogs.c ...
- xl release 安装
前提,该版本需要jdk-1.8以上(包括1.8),内存大于等于2G,磁盘最小空间2G,操作系统windows或者unix-family xl release是一个端到端的管道编排工具. 下载XL-re ...
- GCC参数详解-(转自:篱笆博客)
gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言, ...
- 程序"三高"解决方案
0. 程序三高 1. 缓存 2. 预处理和延后处理 3. 池化 3.1 内存池 3.2 线程池 3.3 连接池 4. 异步(回调) 5. 消息队列 5.1 服务解耦 5.2 异步处理 5.3 流量削峰 ...
- easyUI中datagrid展示对象下属性以及显示多个子属性(Day_37)
easyUI中datagrid展示对象下属性以及显示多个子属性 显示对象单个属性值 添加formatter属性 <th field="decidedzone" width=& ...
- ASP.NET Core文件上传IFormFile于Request.Body的羁绊
前言 在上篇文章深入探究ASP.NET Core读取Request.Body的正确方式中我们探讨了很多人在日常开发中经常遇到的也是最基础的问题,那就是关于Request.Body的读取方式问题,看是简 ...
- 为什么选择b+树作为存储引擎索引结构
为什么选择b+树作为存储引擎索引结构 在数据库或者存储的世界里,存储引擎的角色一直处于核心位置.往简单了说,存储引擎主要负责数据如何读写.往复杂了说,怎么快速.高效的完成数据的读写,一直是存储引擎要解 ...
- libevent中的事件机制
libevent是事件驱动的网络库,事件驱动是他的核心,所以理解事件驱动对于理解整个网络库有很重要的意义. 本着从简入繁,今天分析下单线程最简单的事件触发.通过sample下的event- ...