高传输单向Linux备份解决scheme?

我有明显的一个稍有不同的备份要求:

我可以物理访问这两个磁盘,并且传输只能以一种方式进行。 我想将第一张磁盘完全复制到第二张,然后每月手动更新一次。

我看到这个线程︰https: //stackoverflow.com/questions/15208/whats-the-best-linux-backup-solution ,这里是我的需求不同。

这两个磁盘都是USB,并且有可能他们的安装位置会不时变化。 我需要能够指定一个源目录(/ media / A)和一个目的地(/ media / B),并且有一个拷贝到B,而不是每次从头开始,最终的结果是B和A是相同的。 我不需要时间机器式的增量更改,不需要tar或encryption任何东西,也不需要通过networking发送。

思考? 我正在运行Ubuntu 10.04。

Rsync是一个非常好的工具…具体来说:

rsync -Pav --delete --force-delete /media/A/ /media/B/ 

(注意结束斜杠)

  man rsync 

会给你更多的信息

为此,我推荐使用rsync实用程序。

rsync应该适应你的需求。 简单地给它的源和目的地的目录,其余的。

 cp -au /media/A/* /media/B 

似乎应该是足够的。 任何人有更明亮的想法? 异议?

rsync会像其他人上面显示的那样工作得最好,因为它会自动更新。 您也可以使用dd将原始磁盘数据从一个磁盘复制到另一个(“克隆”磁盘),这将更容易实现。

我build议一致。 主页链接

我将其用于家用电脑和笔记本电脑之间的日常同步,单向同步将更加容易。

configuration将非常简单:

 root = /media/A root = /media/B 

如果/media/b为空,则首次使用/media/A的内容进行传播。

之后,如果/media/A内容发生更改,则会将/media/B更改为与/media/A相同。 它也将以另一种方式工作。

如果他们都是本地和快速,你想要最准确的变化,那么我会用dd来复制一切。 如果你以交互方式运行,你可以使用pv来获得一个很好的进度条。 当你这样做,你必须确保目标磁盘没有安装。

为了应对磁盘可能安装在不同点的事实,我将通过它们的ID访问它们,而不是它们的瞬态设备名称。

所以简而言之:

umount /dev/disks/by-id/blah-blah pv < /dev/disks/by-id/ata-Patriot_Torqx_128GB_SSD_blah > /dev/disks/by-id/blah-blah

好的是,这将复制引导程序,所有分区等。一个缺点是,如果文件系统变得腐败,那么腐败就会传播。 但大概你有其他的备份来应对需要回到过去的时间。

回答其他的一些,因为我还不能评论:

卡尔的“cp”的问题是,它不会删除已删除的文件。

rsync -Pav的问题是它不会传播硬链接,但是你可以添加-H来做到这一点。

我喜欢Unison,但这不是一个好的select,因为它将所有内容写入临时目录,然后移动到临时目录中,所以它可能无法在磁盘几乎满的情况下工作。 它做了一个完整的前期扫描,所以它往往会变慢。 它保留了一些您不需要单向同步的会计信息。