Configure a autenticação baseada em chave e use um agente ssh.
Eu uso os seguintes comandos para sincronizar pastas. Cada comando requer que eu digite a senha. Como posso agrupar esses comandos para inserir apenas a senha uma vez? Obrigado.
rsync -ave ssh / opt / lampp / htdocs / novo / folder1 / [email protected]: / home / folder1 /
rsync -ave ssh / opt / lampp / htdocs / novo / folder2 / [email protected]: / home / folder2 /
rsync -ave ssh / opt / lampp / htdocs / novo / folder3 / [email protected]: / home / folder3 /
Em um prompt bash:
rsync -ave ssh /opt/lampp/htdocs/new/folder{1,2,3} [email protected]:/home/
Se você fizer a pasta {1,2,3} / a coisa errada vai acontecer ..
Este é o mesmo comando em uma versão mais detalhada:
rsync -ave ssh /opt/lampp/htdocs/new/folder1 /opt/lampp/htdocs/new/folder2 /opt/lampp/htdocs/new/folder3 [email protected]:/home/
Usando Authorized_keys
Você também pode adicionar chaves públicas específicas do comando, adicione isso a authorized_keys:
command="rsync --server -vldogDtpr --partial. / home /", no-pty, sem agente-reencaminhamento, sem reencaminhamento de porta ssh-rsa AA [...] 3RIy / FbGhV5Xg1jILhhgb [. ..] iTqYKj / FgF0 + vZJaQ == erik @ myhost
O problema é que eu não sei como limitar o rsync apenas permitindo a transferência para a pasta1,2,3.
Este link deve ajudá-lo.