如何模拟 rsync 到 cp 以从源复制目标磁盘中不存在的所有文件并更新现有文件?

如何模拟 rsync 到 cp 以从源复制目标磁盘中不存在的所有文件并更新现有文件?

读取坏扇区时,rsync 会停止,然后硬盘会进入非常糟糕的模式,需要特殊修复。这是我的磁盘第三次出现这种情况。除了坏扇区外,磁盘功能正常。请注意,之前已使用 e2fsck 仔细检查过,没有问题。

我认为在 rsync 运行时,磁盘可能会尝试自行重新分配在坏扇区上读取的文件,并且会出现一些问题。我真的不知道。因此,除了 rsync 之外,我想采用另一种复制内容的方法,这种方法对我的磁盘的破坏性可能较小。

我使用 rsync 从源中删除位置和大小不合适的文件。这非常快速和高效。现在,我想将 rsync 的一些行为模拟到 cp 中,以便复制所有文件并正确更新文件。

我想尝试这个命令: cp -v -dR --copy-contents -f -n --preserve=mode,ownership,timestamps

v: verbose
d: same as --no-dereference --preserve=links
R: recursive
--copy-contents of special files 
-f: if an existing destination file cannot be opened, remove it and try again
(This command is only useful in appending stuff in files? )
-n: do not overwrite an existing file (overrides a previous -i option)
-p: same as --preserve=mode,ownership,timestamps

但是,我的文件可能包含的数据比备份中的多(比空白空间多)。每个文件的大小都是标准的,并且已预先分配给磁盘。我不知道如何确保使用 cp 将这些文件复制到旧文件上。我不想删除整个文件并将其复制过来。

相关内容