如何在家庭网络上的两台电脑之间同步文件/数据?

如何在家庭网络上的两台电脑之间同步文件/数据?

我有一台台式机和一台笔记本电脑,它们的主目录中的文件几乎相同。有时我会对 、 等进行更改~/Music~/Documents但这些更改当然不会影响另一台机器。

所以我希望有一个解决方案来同步我的笔记本电脑和台式机主文件夹中的所有数据。我可以偶尔用交叉电缆连接它们。

我不想使用 Ubuntu One 或 Dropbox(文件很大,而且当两者都在家庭网络上时,就不需要使用互联网)。

答案1

最好的工具是命令行工具“Rsync”。如果您需要 GUI,请尝试 Unison 或 LuckyBackup,它们基于 Rsync 的概念。Unison 和 LuckyBackup 都在存储库中。

rsync 的一个示例可能是:

rsync -vxtr /home/scaine/图片/ /home/OtherUser/图片/

...这会将我的图片目录与其他用户的图片目录同步。我指定的选项将验证所有副本,在复制期间保留时间戳/权限,并遍历找到的子目录。执行“man rsync”获取更多选项。

至于将您的电脑连接在一起 - 将它们放在交换机/集线器上或使用交叉电缆,然后通过 samba 共享目录。

编辑:如果目标是“镜像”两台 PC,则需要注意以下几点。此命令只会将文件从源“添加”到目标。如果您需要删除,那么您也需要其中的 -delete 选项。

经过调查,Rsync 似乎不是处理镜像特别好。参见意识到你可能会发现较旧的文件覆盖了较新的文件在此更新期间!更糟糕的是,即使您让 -update 选项起作用并阻止此行为,它也不会用较新的文件“更新”较旧的文件 - 它只会“跳过”它。不太理想。

最后,要执行双向同步,您需要运行相同的命令,但反转源/目标。当然,这现在用处有限,因为您的第一个命令(假设您使用了 -delete 选项)将删除目标上任何在源上不存在的文件。Unison 从内存中很好地处理双向同步。

如果您真的想让多个编辑保持同步,那么 Dropbox 解决方案是最好的选择。如果您可以再看看 UbuntuOne 或 Dropbox,符号链接可能是一个解决方案 - 只符号链接您的文档文件夹,同时将图片和音乐从 One/Dropbox 中移除,并使用此 rsync/unison 解决方案处理大件物品?

答案2

对于一小部分文件,我建议Dropbox或者Ubuntu 一号,但您似乎想在计算机之间同步您的音乐收藏,而这两种方式都不太适合,原因有二:

  • 它们都与互联网同步,这意味着大量文件需要很长时间才能下载和上传
  • 它们提供的空间有限(但可以购买更多空间),这意味着对于大量的文件,你最终可能需要花费很多钱

齐奏,这是我用于本地复制的工具,它本身没有这些限制。您可以通过本地网络进行同步,这意味着它速度很快(如果您愿意,也可以通过互联网进行同步),并且可以根据需要同步任意数量的内容 — 仅受可用磁盘空间和带宽的限制。Unison 既有 GUI 也有终端界面,这意味着您可以在桌面和服务器上平等地使用它。Ubuntu wiki 上的一个很好的指南如果您选择使用 Unison,您可能希望参考它。

答案3

如果你不想或不喜欢使用终端,这里有一些基于 GUI 的替代方案

同步顾名思义,这是一个基本的 GUI rsync

齐奏unison 使用的替代后端grsync

您可以从软件中心安装它们,也可以使用apt-get

答案4

简单回答:

rsync -vzu [email protected]:/remote/dir/*  /local/dir

-u 选项比较日期,仅当目标日期早于源日期时才进行传输。

-v 表示详细,-z 表示使用压缩。

相关内容