正如标题所说,我想将故障的 4TB 外部 USB 驱动器中的所有内容复制到新的 4TB USB 驱动器中。
复杂的是,我不确定不同的程序如何处理错误。
此外,由于这可能需要很长时间,我想在保持驱动器安装的同时复制数据;将添加新文件,但如果有任何区别,则不会更改任何文件。
我将通过命令行进行工作。
更新:根据建议,我正在尝试使用来自这里。
sudo rsync -aAXv --log-file=/home/osmc/rsync.log --exclude={"/lost+found"} /mnt/Main/* /mnt/NewMain
将更新发现错误时如何处理它们。
答案1
如果您能够放弃保持驱动器及其文件系统处于挂载状态的要求:从外部介质启动以确保磁盘处于非活动状态(或取出驱动器并将其作为从属设备粘在另一台机器上),然后在每个(重要)分区上使用 ddrescue:
ddrescue /dev/sdb1 /mnt/some/large/storage/sdb1backup logfile
这将创建该分区的映像,然后可以将其挂载:
mount -o loop /mnt/some/large/storage/sdb1backup /mnt/image
ddrescue 的工作方式与 dd 类似,最明显的区别是它更加冗长。我强烈建议浏览手册页以查找与您的情况相关的选项。日志文件允许您多次运行并跳过已成功检索的扇区。
如果你一定要启动并运行它:rsync -Pravdtz /files somehost:somefolder/
答案2
建议我使用 rsync 的答案不见了,所以我自己回答了。谢谢你的提示。
我正在尝试使用 rsync 并遵循来自这里。
sudo rsync -aAXv --log-file=/home/osmc/rsync.log --exclude={"/lost+found"} /mnt/Main/* /mnt/NewMain
它花了很长时间才完成,但我能够继续使用系统,甚至在过程中读写驱动器上的文件。它遇到的错误被记录下来并在最后重试。我最终丢失了一些文件,但对我来说并不重要。
这可能不适合每个人的需求,但它确实满足了我的需要。