Como você sugeriu, use o rsync com o truque sudo. O scp não preservará as permissões de qualquer maneira.
Eu ssh em uma caixa do ubuntu com o nome de usuário "ubuntu" e posso me tornar root sem digitar uma senha via "sudo su". Como posso scp arquivos para esta caixa usando o ubuntu @ username? Isso não me permite fazer isso usando root @. O erro é:
scp: /etc/...: Permission denied
Eu posso fazer essa mesma tarefa no rsync usando --rsync-path="sudo rsync" por exemplo.
Como você sugeriu, use o rsync com o truque sudo. O scp não preservará as permissões de qualquer maneira.
Você pode fazer o SCP como usuário e, em seguida, efetuar login e copiá-los como root. Como o SCP não pode su
, não há uma boa maneira de fazer isso, a menos que você altere a senha de root
.
(Eu pensei que você teria que adicionar PermitRootLogin yes
ao /etc/sshd/sshd.cofig, mas parece o Ubuntu usa o método random-root-password ao invés de bloquear root)