rsync似乎是在Unix / Linux中进行有效文件备份和同步的事实上的标准。

是否有人对它为什么不能在Windows中流行有任何想法?世界?

为什么它不成为文件同步的通用“协议”?

评论

这是因为没有合适的端口,并且Windows用户已经习惯了它。现有的非相当大的端口是一个很大的PITA。

Windows已经通过DFS和RDC提供增量同步,可以集中管理,大规模部署,配置等。

@ p.campbell,Windows有cwrsync

#1 楼

我之所以这么说,主要是因为窗户上的人没有意识到这一点。 Rsync是一个命令行实用程序,与unix原理一致,即预先安装了许多小工具。 Windows哲学基于GUI应用程序,这些应用程序均单独下载和安装。没有一个平滑的集成点可以使rsync变得明显或有意义,并且在Windows系统上运行命令充其量是乏味的。

另外,rsync在大型应用程序中(例如用于合并和解析日志)或作为自动存档系统(通过cronjob轻松实现)时,确实会发光。 Windows在其生态系统中根本没有其他工具可以使使用rsync实际上可行。

最后,我要说的是rsync太复杂了。我认识的经常使用它的人都有一组预设的标志(我的名字是-avuz),通常可以完成他们想要的操作,但是手册页/文档中列出了数十个命令行开关,其中一些是其他开关的组合。例如(在[手册页] [1]中):


-a,--archive:存档模式;等于-rlptgoD(没有-H,-A,-X) )。上述等效项的唯一例外是,当指定了--files-from时,则不暗示-r。Windows用户通常期望Windows和菜单具有一个单个应用程序是一个多合一的解决方案,而不仅仅是工具链中的独立部分。

评论


我完全同意你的看法 !手册页是理解rsync和许多其他应用程序的最差方法。

– Antoine Benkemoun
09年7月3日在7:01

实际上,这是相反的。 UNIX / Linux用户至少从2006年开始就不知道Windows提供了DFS和RDC。它易于设置,管理和部署到整个域(即具有数十个或数百个客户端的数百或数千个桌面)。

– Panagiotis Kanavos
14年6月23日在8:30

@PanagiotisKanavos除了DFS与rsync不同。 NFS(或许多其他协议)可在基于Linux的操作系统上使用,但rsync通常用于分段备份,一次关闭传输等。苹果和橘子。

–安德鲁·怀特(Andrew White)
2014年8月5日在11:54

@Pacerier:“命令行是命令行”吗?您要么非常宽容,要么只知道一个,而另一个则不知道。对于任何了解Linux / Mac(或任何其他Unix shell)中的Bash的普通人来说,cmd.exe是如此残缺,以至于说它“充其量是乏味的”仍然是一种轻描淡写的说法。

– mivk
2015年6月7日19:22

“在Windows系统上运行命令充其量是乏味的。” -您可能没有做很多事情,从未听说过Powershell,Linux迷或以上所有内容。如今与在Linux上进行操作并没有什么不同。

–艾伦B
15年8月19日在9:22

#2 楼

我很惊讶没有人提到DeltaCopy,它是rsync打包在Windows GUI中的。它甚至可以将自身安装为与rsyncd兼容的服务。

评论


+1我不能足够投票。 DeltaCopy是我们将几个Linux服务器备份到基于Windows的备份服务器的方式。 Ubuntu上的Rsync直接进入Windows上的DeltaCopy客户端。

–马特·埃弗森(Matt Everson)
09年7月3日在17:16

使用ntfs安全权限似乎效果不佳

–詹姆斯·瑞安(JamesRyan)
2011年1月12日在16:06

是否可以通过SSH在远程Linux机器上没有rsyncd的情况下提取文件?

– Cees Timmerman
15年8月21日在11:50



当rsync在ssh上运行时,它将在另一端启动rsync进程。您无需配置在远程计算机上运行的独立rsyncd,但需要安装它。

– Sekenre
15年8月24日在10:12

DeltaCopy作为Windows上的服务器,cron脚本运行rsync到linux机器,并运行rsnaphot以实现“ Time Machine”备份。无价。

–MGP
16-6-22在1:38



#3 楼

我认为,因为没有合适的GUI。

另一个说法可能是存在robocopy。
Robocopy缺少rsync提供的许多很酷的功能,
但是在大​​多数情况下robocopy足以胜任当前的工作。

评论


robocopy并没有做任何事情来优化远程副本,这是rsync的主要创新。我会说没有可点击的GUI是不尝试的唯一借口

–哈维尔
09年7月2日在21:11

在Windows世界中,处理“远程”文件通常涉及共享远程光盘,然后执行“本地”文件操作。对于这种自动复制就足够了。

–无用
09年7月2日在22:12

#4 楼

我广泛使用Cygwin rsync,并且效果很好。

但是...

安装和配置它很麻烦。您必须进行完整的Cygwin安装,才能获取一个二进制文件和三个dll,并且不清楚需要哪个三个dll。如何将其作为服务运行尚不清楚,并且命令行语法很复杂。非书呆子们希望很快放弃。

它还会使权限混乱到我总是设置cygwin = nontsec的位置,并且它经常挂起。我知道挂起是Cygwin dll的已知问题,而不是rsync本身(这不是对Cygwin家伙的批评。他们所取得的成就简直是奇迹!)。

Rsync是如果您通过WAN链接进行任何类型的复制,则非常有用,并且在我的待办事项列表上可以编写本机Win32版本。可悲的是,它已经出现在我的待办事项列表中已有数年之久,而且离排名靠前。我不认为仅编写GUI包装程序就迈出了一大步,因为未能解决Cygwin版本的一些基本问题。

如果有人感兴趣,请访问http://www.ratsauce。 co.uk/notablog/UsingRsync.asp描述了让我的Cygwin rsync在Windows上工作很多小时的痛苦结果。

JR

评论


对此,尽管Vista在我的XP系统上安装并运行良好,但Vista一点都不喜欢它。 Rsync是业务,如果它有到Windows的本地端口,我敢肯定它会被更多使用。

– gbjbaanb
09年7月3日,9:40

Windows的Git安装提供了开箱即用的已配置bash和CygWin。您甚至可以选择将unix命令集成到CMD。瞧,我忘了使用PowerShell或CMD)

–it3xl
17年9月22日在6:48

#5 楼

我想说的是,对于较小的计算机到计算机的同步,人们正在使用Robocopy,SyncToy或Foldershare(现在称为Live Sync)。对于大型企业分布式多主文件共享方案,他们正在使用分布式文件系统(DFS)。这些工具可以很好地处理大多数同步情况,而在Windows上安装,学习和使用重新编译的* nix应用程序的收益很小。

#6 楼

您的普通Windows用户将使用它做什么?

评论


+1是正确的-Windows用户的备份主要是“将其拖放到单独的/外部硬盘驱动器中”

– LiraNuna
09年7月3日,0:31

我很少将答复记为下标,也不会将其记为下标,但是从什么时候开始ServerFault成为普通Windows用户的论坛?对于系统管理员来说,异地复制变得越来越重要。大公司可能只会购买DPM以在其T3连接上使用。我们的卑鄙的人需要一些能够以ADSL上传速度工作的东西,而rsync可以做到这一点。

–约翰·雷尼(John Rennie)
09年7月3日在10:13

@John:是的,但是除非人们知道rsync的存在,否则他们不会使用它。 rsync已被使用,并且对“典型的” * nix用户已经有用,并且有用,因此,任何值得他精打细算的* nix系统管理员都知道这一点。在Windows上?没那么多。 Windows是(而且可能更重要的是,它针对的是不同的受众群体,他们对此工具并不感兴趣或使用。由于Windows系统管理员通常最初是Windows用户,因此他们使用的工具会受到哪些工具的影响Windows用户使用您正在混合两个不同的问题(为什么它不受欢迎,而有用吗?)

–杰夫
2011-3-24在7:49



我只是回答了前者,我并不否认它会有用

–杰夫
2011-3-24在7:50

是的,但是周围还有很多Windows服务器也需要备份。

– kiltek
17年4月18日在8:37

#7 楼

IMO:

rsync不太可能安装在Windows世界中遇到的机器上,而经常安装带有robocopy的资源工具包(或者至少在“认可的”软件清单中)可以安装在生产系统上。)

正如其他人指出的那样,无论手头上有什么猫,robocopy通常都足以胜任皮肤。它可能不如rsync好,但是它是一个很好的工具。

缺少GUI可能是一个因素,但是即使有可用于robocopy的前端,我也发现大多数人都知道需要robocopy开关并将其粘贴到.bat文件中。

评论


在Windows 2008(及更高版本)中,robocopy随操作系统一起提供,因此无需再安装它。

–mrdenny
09年7月2日在23:25

我没有意识到这一点。感谢您提供的信息...在我们的环境中,我们距2008年至少还有一年的时间,自从退出AD管理以来,我一直没有跟上。

– Damorg
09年7月2日在23:37

默认情况下,Robocopy也会安装在Vista和Windows 7中,也可能会安装在它们的PE对应部件中。

–奥斯卡·杜韦伯恩(Oskar Duveborn)
09年7月3日在16:32

Robocopy不会仅传输文件的CHANGED部分,因此与rsync相比,具有较小更改的大文件复制速度非常慢。

– JustinP
2012年1月19日上午10:54

#8 楼

我在Windows中使用robocopy-Windows Vista和Windows 7中已预装了robocopy,并且可以解决到目前为止我遇到的任何备份情况。

#9 楼

我的猜测是它根本没有GUI。对于轻松的同步任务,Microsoft甚至提供了Sync Toy,而rsync可以做更多的事情...

评论


恰好有一个GUI:sepiola.org/en/home我曾经与Sepiola的开发人员进行过交谈,他们告诉我他们只是围绕rsync制作了GUI。

–拉斐尔·路西格(Raffael Luthiger)
09年7月2日在22:00

我对此表示反对,因为这表明Windows系统管理员在没有GUI的情况下会丢失。这不是真的。大多数优秀的管理员都可以使用命令行实用程序。

– Quux
2011年5月23日在5:49

#10 楼

无论如何,Windows都有一个功能完善的rsync,不需要安装Cygwin。我一直在使用它将数据的不同部分备份到不同的驱动器。排除特定目录很有用,但其他实用程序也可能这样做。

Nestor

评论


它仍然使用Cygwin,这意味着它的dll可能会与可能使用Cygwin的其他应用程序混淆。在这种情况下,通常最好安装Cygwin。

– dlamblin
09年7月23日在7:24

#11 楼

哦,男孩,你们显然已经错过了“ Unison”实用程序。我一直在支持一些主要的美元/欧元“实时”基础设施,我不得不说每个人都有非常相似的问题...如何复制并始终保持主动-主动-...如果您不在乎关于会话持久性,那么这就是炸弹……我在solaris extras中发现的最好的东西:-)

#12 楼

我发现适用于Windows的最简单的rsync GUI应用程序是grSync。

(屏幕快照:http://www.opbyte.it/grsync/screenshot.html)

如果它更流行,也许rsync会被更多使用。 />

#13 楼

我相信rsync可以在Windows World的cygwin下使用:) cygwin易于安装和使用,但是对于喜欢GUI的普通用户来说,它并不常见。因此我们遇到了两个障碍:

1)缺少GUI前端

2)即使tcl / tk中存在GUI前端,例如-需要安装cygwin

并且rsync并不是要出售自己的专有软件,因此很难在潜在客户面前消除障碍。正如Joel所说:消除一个障碍会使您的用户群增加一倍。因此,在此我们为Windows用户设置了障碍-因此,Windows平台上的用户群较小。

#14 楼

我将robocopy用于Windows中类似rsync的行为。

基本上,我写了一个外部驱动器上的backup.bat文件。
我定期运行该文件来备份桌面到外部驱动器。
然后将外部驱动器存储在防火保险箱中。

#15 楼

我们为Rsync和Windows构建了一个GUI。

您连接到的计算机/备份服务器必须正在运行SSH和Rsync。

如果有任何疑问,请通过评论告诉我在这个答案上。

#16 楼

完全相同的原因tarbzip2闻所未闻。它非常不适合Windows。将目录压缩并通过SMB传输它更适合Windows,并且在许多情况下看起来几乎一样快。这不是我实现更美好世界的梦想,但这是努力解决的现实。大多数Windows机器都没有安装任何Unix层。与Mac OS X不同。

#17 楼

开发中有一些较新的rsync guis。我最近通过维基百科碰到的一个是yintersync。作为Windows上rsync的gui,它看起来相当全面,并且还整洁地还支持用于复制活动文件的卷影副本。

我最近在我的工作dr系统上对此进行了测试,效果很好。它具有内置的计划程序和电子邮件报告。这可能有助于rsync最终赶上Windows人群

#18 楼

缺少gui并不是真正的问题。 xacls,robocopy,net,sc非常有用,并且没有任何GUI。
我相信,如果不使用rsync,则更多是由于以下事实:


Windows缺少真正的外壳程序和真正的脚本语言。
从95开始,Windows附带了一个易于使用的图形工具(法语版本命名为“ Porte document”)。从Windows 2000(或XP?)开始,资源管理器中将出现一个“同步”菜单。


评论


“真实”的定义是? ^^

–奥斯卡·杜韦伯恩(Oskar Duveborn)
09年7月3日在16:33

真正的外壳不仅可以自定义提示,窗口大小或图块,还可以自定义更多内容。它具有完成您想要执行的每项任务的能力(管理用户帐户,调整系统配置等)。真正的脚本语言可以定义环境(您是否曾尝试在多国环境中使用“ date”命令?)并且可以在交互式提示中使用(与vbs / js不同)。

–天赋
09年7月3日在18:10

PowerShell满足您的所有要求,自2006年以来已成为Windows的一部分。它与.NET集成,因此在某些情况下,我实际上更喜欢Bash。

–詹姆斯
2011年7月15日在4:36