将海量数据从一个外部驱动器复制到另一个驱动器的最快,最安全的方法


85

我需要能够将大约2TB的数据从外部驱动器(单个USB外部磁盘)复制到另一个外部驱动器(通过Firewire连接的Drobo)。

Finder不是一个选择。如果遇到任何问题,它将停止该过程,我必须弄清楚为什么它会失败并重新开始。我可能要花上几个月才能解决。

我已经读过关于CP和RSYNC的信息,但我不太熟悉,恐怕我可能会弄错某些开关并错过了文件,或者弄乱了文件日期,或者更糟……

谁能建议我以最小的风险和成本实现这一目标?


从MacOS 10.13.4+开始,您实际上可以使用Finder复制大型文件(以及所有相关链接)。我只是自己尝试了一下(从现有磁盘上)创建了另一个Time Machine备份磁盘,它可以快速而精美地工作。显然,在10.13.4之前,这一个错误,但已得到修复。此答案中的更多信息:apple.stackexchange.com/a/323691/261070
youngrrrr

答案取决于您如何定义“最快”。您想要最快的传输速度还是最短的时间(从您(人类)开始工作到完成)之间的时间。花费的时间将取决于终端是否使您感到恐惧。对于您而言,理想的答案还取决于此操作是一次性操作还是通常重复的操作,以及您是否愿意花钱。
iconoclast

Answers:


143

远程同步rsync是复制大量数据的可靠选择。您可以准备命令并进行空运行,然后再提交副本。添加--dry-run以模拟副本。

您的最终命令将非常简单:

sudo rsync -vaE --progress /Volumes/SourceName /Volumes/DestinationName

标志是:

  • v 增加详细程度。
  • a 应用存档设置以精确镜像源文件,包括符号链接和权限。
  • E 复制扩展属性和资源派生(仅OS X)。
  • progress 在复制过程中提供倒计时和传输统计信息。

sudo,用于确保rsync拥有适当的权限,以访问和读取驱动器上的所有文件,而不论其所有者是谁。这还允许rsync将文件写入新驱动器,从而重新创建原始所有者信息。

rsync 可能是最好的选择,因为它可以在出现问题时重新运行,提供详细的日志记录,并且在保持安全的前提下尽可能快。

有很多指南,您可以充分利用rsync命令示例rsync,这些示例提供了相关示例。正如@GordonDavisson在下面的评论所示,请注意斜杠;如果您的副本以文件夹开头,则可以带来很大的不同。

替代工具包括dittocp。两者都是合理的选择,但提供不同的语法。


5

我使用bittorrent同步在Drobo和QNAP之间同步8TB。


bittorrent同步也是一种实现此目的的方法。(我认为)不需要降低投票数。
CousinCocaine 2015年

6
@CousinCocaine是的,但问题是关于如何做某事,而不是要使用哪个应用程序。
狄龙(Dillon)

@Dillon:知道使用什么应用程序是你需要知道知道,有时99%怎么办呢。
iconoclast

3

不久前,我在这里回答了类似的问题。我的答案复制在下面。


cp -Rfv sourcefile destinationfile经常成功地使用。

cp =复制

R =维护文件层次结构

f =如果无法打开现有目标文件,请将其删除并重试

v =详细模式,显示文件进度

sourcefile =您要复制的数据

destinationfile =您要复制到的目录/驱动器


9
但是值得注意的是,即使文件没有更改,cp也会重新复制文件,而rsync不会浪费时间复制目标上已经存在的文件。因此,您可以从上次中断的地方重新启动和/或进行增量复制。
大卫

可以添加-n不复制已存在的文件,并-p在可能的情况下保留所有权限,包括扩展属性和资源派生。
旋转

3

“最快”的方法是将两个驱动器物理地移动到单台计算机的内部,进行复制(或rsync),然后再将它们移动回去。

我仍然会使用rsync,因为如果由于任何原因(电源开关上的猫脚踩到了?)而中断,rsync不会重新复制已经成功的文件。它还不会复制相同位置的文件。


请注意,由于数据集的大小,这样做速度更快。如果它小得多,那么移动驱动器的时间将抵消速度优势。
WGroleau '18

不,对于大量数据来说更快。对于少量数据,副本仍会更快,但移动驱动器所花费的时间会取消复制。但是,在非完美条件下,它可能会更快,因为如果被中断,rsync可以避免再次复制在中断之前完成的操作。
WGroleau '18

如果传输速度更快,但是打扰让您重新开始,则整个过程可能不会更快,而整个过程就很重要。“完美的条件” = 没有任何东西可以中断该过程。以我的经验,在处理大量转帐时,某些事情会引起问题是常见的。因此,我将不间断的传输称为“完美”。
iconoclast

如果您在使用rsync就像我说的,中断也不会让你从头开始。
WGroleau

在这种情况下,您不理解我的意思是“重新开始”。我很清楚的事实,rsync的可以拿起在同步数据不放过。但是,如果您发出命令,但命令未能完成,则将开始进行人工干预,这将使整个过程花费更长的时间。要么是通过保姆来浪费时间,要么是失败与发现之间有很大的延迟。有什么事情的人是整个过程的时间和人工干预的时间。
iconoclast

1

如果您要将驱动器A复制到驱动器B,可以使用“磁盘工具”来完成。


我们将使用磁盘工具的还原功能。关于还原与复制和粘贴之间区别的一些背景:

磁盘实用程序中的“还原”功能利用了块复制功能,可以加快复制过程。它还几乎可以 复制源设备。当我们说“几乎准确”时,并不是要暗示有用的数据可能会被遗忘,因为事实并非如此。这意味着块复制将数据块中的所有内容从一台设备复制到另一台设备。结果几乎是原件的精确副本。另一方面,文件副本按文件复制数据文件,并且在文件数据保持不变的情况下,文件在源设备和目标设备上的位置可能会非常不同

使用块复制速度更快,但是它确实会影响何时可以使用它,最重要的是,逐块复制需要首先从Mac卸载源设备和目标设备。这样可以确保块数据在复制过程中不会更改。不过不要担心。您无需进行卸载。Disk Utility的Restore(恢复)功能将为您解决这一问题。但这确实意味着在使用“还原”功能时,源和目标均无法使用

资料来源:https : //www.lifewire.com/use-disk-utility-to-clone-macs-drive-4042367


使用说明

用于将所有文件从设备A复制到设备B

警告:将一个卷还原到另一个卷时,目标卷上的所有文件都将被删除。还原卷之前,请将要保存的目标卷上的所有文件复制到其他卷。

  1. 选择“查看>显示所有设备”。
  2. 在边栏中选择要还原的卷,然后单击“还原”按钮在此处输入图片说明或选择“编辑”>“还原”。

这是已擦除并成为精确副本的卷。[设备B]

  1. 单击“还原”弹出菜单,然后选择要复制的卷[设备A]。
  2. 单击还原,然后单击完成。

来源:https : //support.apple.com/guide/disk-utility/restore-a-disk-dskutl14062/mac


块复制还会浪​​费时间复制可用空间,并且如果目标比源小一个块,它将失败。(可能会以无法立即检测到的方式失败。)而且,如果目的地较大,则多余的空间将变得无法使用。
WGroleau

@WGroleau您可以扩展“多余的空间变得无法使用”

块复制包括说出最后一个块的块。如果目标足以容纳数据但小于源,则操作系统会认为不存在可用的块。如果目的地更大,则操作系统会认为不存在额外的块。
WGroleau

@WGroleau只是这样,如果我有一个500gb的驱动器和一个1gb的文件,然后将其块复制到1000gb的驱动器,那我会正确理解。您可以链接网站吗?
JBis

在手册页中查找“ dd”。它将复制500GB,但499 GB中的大多数将为空。不可见的部分不仅对操作系统可见,并告诉您您有500 GB的驱动器。还要查找“分区图”和“体积图”
WGroleau 18/09/14

0

如果您不想走命令行路线,我会定期使用FreeFileSync应用程序将2 TB的数据从外部阵列同步到网络位置,而不会出现问题。您可以控制其处理错误的方式,并在完成时获取日志。

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.