如何保持Rsync不被传输的文件?

我有一个Linux服务器上的远程文件系统的sshfs连接设置。 我正在从本地服务器到ftpfs文件系统执行Rsync。 由于这个设置的性质,我不能在sshfs文件系统上find任何东西。

当我做Rsync的时候,它试图在传输它们之后把所有的文件剪下来。 这导致chown错误,即使它传输文件就好了。

有了Rsync,有没有办法告诉它不尝试和chown文件? 如果我rsync像1000个文件,我最终以1000 chown: permission denied (error 13)错误的日志。 我知道这并不会损害任何东西,因为这些文件的所有权是由sshfsconfiguration本身决定的。 但是,如果没有得到它们将会很好。

你可能是这样运行rsync的:

 rsync -a dir/ remote:/dir/ 

根据文档的-a选项相当于: -rlptgoD

  -a, --archive archive mode; equals -rlptgoD (no -H,-A,-X) 

您可能想要删除-o-g选项:

  -o, --owner preserve owner (super-user only) -g, --group preserve group 

所以,而不是你的rsync命令应该是这样的:

 rsync -rlptD dir/ remote:/dir/ 

或者@glglgl指出:

 rsync -a --no-o --no-g dir/ remote:/dir/ 

剩下的选项是:

  -r, --recursive recurse into directories -l, --links copy symlinks as symlinks -p, --perms preserve permissions -t, --times preserve modification times -D same as --devices --specials --devices preserve device files (super-user only) --specials preserve special files 

不要传递-o或其他表示它的选项。

不要使用-a选项,因为它将包含保持权限的-p选项。 对于这种情况, -r应该足够了。

有关更多信息,请参阅man rsync

我遇到类似的情况, rsync不保留所有者和一组文件和目录从远程服务器同步。 为了更正,我复制了/etc/shadow/etc/group/etc/passwd文件。

当我运行下面的rsync命令时,它的工作就是保留了权限,符号链接和所有权。

我设置了ssh密钥来使用无密码的ssh。

 rsync -avpog [email protected]:/usr/local /usr