
Я использую следующие команды для синхронизации папок. Каждая команда требует ввода пароля. Как мне сгруппировать эти команды, чтобы ввести пароль только один раз? Спасибо.
rsync -ave ssh /opt/lampp/htdocs/new/folder1/[email protected]:/home/folder1/
rsync -ave ssh /opt/lampp/htdocs/new/folder2/[email protected]:/home/folder2/
rsync -ave ssh /opt/lampp/htdocs/new/folder3/[email protected]:/home/folder3/
решение1
Настройте аутентификацию на основе ключей и используйте ssh-agent.
решение2
В командной строке bash:
rsync -ave ssh /opt/lampp/htdocs/new/folder{1,2,3} [email protected]:/home/
Если вы сделаете папку {1,2,3}/, произойдет что-то неправильное.
Это та же команда в более подробной версии:
rsync -ave ssh /opt/lampp/htdocs/new/folder1 /opt/lampp/htdocs/new/folder2 /opt/lampp/htdocs/new/folder3 [email protected]:/home/
Использование Authorized_keys
Вы также можете добавить публичные ключи, специфичные для команды, добавив это в authorized_keys:
command="rsync --server -vldogDtpr --partial . /home/",no-pty,no-agent-forwarding,no-port-forwarding ssh-rsa AA[...]3RIy/FbGhV5Xg1jILhhgb[...]iTqYKj/FgF0+vZJaQ== erik@myhost
Проблема в том, что я не знаю, как ограничить rsync, разрешив передачу только в папки 1, 2, 3..
решение3
http://linuxproblem.org/art_9.html
Эта ссылка должна вам помочь.