是否可以实时同步两个Linux目录?


25

我想将内部硬盘驱动器的目录同步到外部硬盘驱动器。

当我在内部硬盘驱动器上写入或修改文件时,相同的文件会自动复制到外部硬盘驱动器...并再见备份;)

这将类似于带有外部硬盘驱动器的RAID。

这可能吗?


22
恐怕认为“再见备份”几乎是不合适或正确的。
Ben Pilbrow 2010年

说真的 本说了什么。这不能替代备份。
邓肯X辛普森

Answers:


8

据我所知,只有DRBD实时存在。但我认为它不适用于您的情况,因为删除文件时,也会在外部磁盘上将其删除。您可以更轻松地使用rsync和每隔几分钟运行一次的cron脚本。


谢谢您的回答。但是,如果“ cron” rsync每..5分钟运行一次,是否会损害性能?它太重了吗(检查是否更改了所有文件?)?
stighy 2010年

这就是为什么他们发明了具有快照功能的文件系统的原因;)
PiL 2010年

1
DRBD的配置可能有点复杂,如果您需要对其进行配置需要帮助,我写了一篇不错的文章:geek-kb.com/install-and-configure-drbd-centos-6
Itai Ganot 2015年

30

lsyncd似乎是完美的解决方案。它结合了inotify(内核内置功能,女巫监视目录树中的文件更改)和rsync(跨平台文件同步工具)。

lsyncd -rsyncssh /home remotehost.org backup-home/

引用github:

Lsyncd监视本地目录树事件监视器界面(intify或fsevents)。它会汇总并合并事件几秒钟,然后生成一个(或多个)进程来同步更改。默认情况下,这是rsync。因此,Lsyncd是一种轻量级的实时镜像解决方案,相对易于安装,不需要新的文件系统或块设备,也不会影响本地文件系统的性能。


1
缺点

8

您可以仅在内部和外部硬盘驱动器上创建软件RAID1。对于系统而言,如果它是内置硬盘驱动器或外部连接的大容量存储,则没有什么区别。

但是RAID不能备份!如果不小心删除了硬盘驱动器上的文件,该怎么办?它还会在您的外部“备份”驱动器上被删除。

备份通常包含多于一代的文件,因此您可以从中检索意外删除的文件。


4
显式“ RAID未备份”的大+1。
nickgrim 2012年

同样,与内部和外部硬盘驱动器成员进行的软件袭击可能会非常缓慢,不可靠并且被指定经常破坏。
大卫



0

git-annex也可以用来实现这一点。

git-annex允许使用git管理文件,而无需将文件内容检入git。尽管这可能看起来很矛盾,但是在处理当前大于git的文件时,由于内存,时间或磁盘空间的限制,它很有用

有一个演练可以快速使用户熟悉git-annex


尽管从理论上讲这可以回答问题,但[最好]在此处包括答案的基本部分,并提供链接以供参考。
Itai Ganot 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.