我需要在两台基于 Windows 的非域机器上保持文件和文件夹在公共网络上同步。
我在考虑通过 SSH 进行 rsync - 但我想知道是否有更简单的解决方案?是否有可能通过 SFTP/SCP/SSH 使用同步框架?
或者我愿意接受更好的想法?
我需要在两台基于 Windows 的非域机器上保持文件和文件夹在公共网络上同步。
我在考虑通过 SSH 进行 rsync - 但我想知道是否有更简单的解决方案?是否有可能通过 SFTP/SCP/SSH 使用同步框架?
或者我愿意接受更好的想法?
我不认为你可以超越 rsync。它快速、可靠并且与 SSH(这是您的要求)结合使用时是安全的。它也是免费的!
如果您想与您的版本控制系统进行一些集成,请查看Unison。
还有一些商业替代品,例如InstantSync。
想我会发布我最终使用的东西 - WinSCP - http://winscp.net
通过 GUI 连接到 SFTP 服务器 + 支持本地/远程/两者同步 + 可通过命令行/批处理界面编写脚本。
似乎是使用FolderShare的教科书案例。
这个答案类似于线程开启者创建的答案,但我无法发表评论,所以我在这里添加:
一年前我在一个客户那里遇到了同样的问题。我们需要一个可编写脚本的非 gui 解决方案,用于通过 Internet 将一个大文件夹与多个子文件夹同步!
当时系统使用 rsync,但我不喜欢必须安装 linux 工具并需要两者之间的 vpn 来保护通信的必要性。
所以第一种方法是使用 Powershell 编写脚本并使用 WinSCP 和 IIS ftps(ftp over ssl)。 WinSCP 和 IIS ftps 不能很好地协同工作! 同步通常会导致我们无法修复的奇怪异常。然后我们切换到 CrushFTP 和 sftp (ssh ftp)。
这个解决方案效果很好!我们有超过 300 次自动夜间部署,没有一个失败。所以我可以推荐使用 powershell 编写脚本,使用 WinSCP 库将文件夹同步到 sftp(不是 ftps)服务器。虽然它绝对不如 rsync 快,但它非常稳定且易于编写脚本。
您可以使用Hamachi通过安全 VPN 设置共享文件夹,然后使用文件夹同步应用程序来同步它们。
您尝试过屡获殊荣的rsynccrypto吗?
我使用SVN。它(我认为)通过 SSH 和 SSL 工作。
完整版本控制,文件同步,有什么不喜欢的?
我推荐rdiff-backup。它支持通过 SSH 进行增量备份,是一种免费且经过验证的解决方案。作为增量,它还允许访问已删除的文件或修改文件的旧版本。
+1 克里斯的推荐。这正是我使用 FolderShare 的目的,使文件夹在运行 Windows 的 3 台 PC 和运行 OS X 的 2 台 Mac 之间保持同步。
您可以在 hamachi 上使用vpn服务器
试试这个,适用于 Windows 的 SSHSync
http://code.google.com/p/sshsync/
允许智能安全 FTP 传输的命令行应用程序。SshSync 仅支持拉式传输,但它允许使用私钥来确保身份验证是安全的。包含始终处理的文件列表的文本文件用于检查是否只检索了“新”文件。