我想做单向同步。
我的电脑上有一份文件Folder A
,可以不断更新内容。
另一个Folder B
文件用于备份,位于外部硬盘上。
现在我希望文件夹 A 中存在的任何额外内容都应复制到文件夹 B。但是,存在于 B 中而存在于 A 中不存在的内容“不应复制到 A”。
简而言之,备份文件夹可以从源文件夹复制所有内容,但是不应将任何内容从备份文件夹复制到源文件夹。
答案1
听起来像是 rsync 的一个完美任务
sudo rsync -az /path_to/A /path_to/B
-a 存档模式(意味着递归,将符号链接复制为符号链接,保留所有者、修改时间、组、所有者、特殊和设备文件)
-z 压缩数据
如果希望从 B 中的文件中删除 A 中删除的文件,请使用--delete
选项
有关详细信息,请参阅:
https://help.ubuntu.com/community/rsync
您可以从 cron 运行 rsync
sudo crontab -e
添加每小时任务
@hourly rsync /path_to/A /path_to/B
答案2
我建议使用 rsync 来实现这个目的。Rsync 非常快、稳定且功能多样。这里有一篇很好的介绍http://help.ubuntu.com/community/rsync
如果您愿意,有一个可选的图形前端:grsync
sudo rsync -azv --exclude 'dir1' /home/path/folderA/ /home/path/folderB
上述命令将从文件夹 A 复制到文件夹 B,但不包括 dir1。标志为
-a preserves time stamps
-z is to enable compression
-v verbose
还有更多可用选项。
答案3
我一直觉得 Unison 非常有用。它有一个基于文本或基于 GUI 的界面,以及相当多的选项来调整它以满足您的需要(只需一点点调整)。第一次同步需要相当长的时间,但之后就很棒了。您可以根据需要将其设置为单向同步,但它几乎会自动完成。它还可以根据您的选择从备份中删除或不删除。
您还可能会发现权限问题,这些问题在 ubuntu 文件格式中受支持,但在外部硬盘驱动器中可能不受支持(取决于外部硬盘驱动器是否将在 Windows 机器中使用,这可能是一件好事),因此您可能需要在没有权限的情况下进行同步。
无论如何,好处在于,通过本教程,只需相对简单地完成一次设置,之后无论何时您想进行设置,它都会是一个 GUI 界面。
以下是一些相关信息: http://www.ubuntugeek.com/unison-file-synchronization-tool.html
以下是教程: http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#tutorial
答案4
我同意其他答案,你可以使用同步在终端或界面中Grsync,幸运备份,导管或著名的齐奏。
另一个很棒的应用程序是克鲁萨德(KDE 的双面板文件管理器),在工具菜单中您可以找到“同步目录”,非常有用。
最后你可以安装葡萄酒并安装另一个出色的双窗格文件管理器,例如总指挥官。
无论如何,您有很多选择,所有这些选择都位于 Ubuntu 软件中心。