Как скопировать папку клонирования на удаленный компьютер в одной строке?

У меня две машины с одинаковой структурой папок. Один из них - мой персональный компьютер, другой - удаленный компьютер. Иногда я хочу, чтобы программа запускалась на удаленном компьютере. На данный момент мне всегда нужно

ssh на удаленном компьютере. Введите мой пароль, скопируйте папку вручную, используя rsync

Даже если бы я написал скрипт для rsync (как показано ниже ) Мне все равно нужно вводить мой пароль каждый раз или жестко кодировать его внутри скрипта bash (что было бы глупо).

#!/bin/bash/
pathToSync="/path/to/my/Folder/"
rsync -r -l -p --progress "$pathToSync"/ myUsername@nameOfRemoteComputer:"$pathToSync"

У кого-то есть идея, как решить эту проблему более эффективно? Таким образом, в конце мне нужно написать

sync myFolder nameOfRemoteComputer

Ответ на этот вопрос. Как дополнение к правильному ответу, приведенному ниже. Вот команды bash, чтобы ssh и rsync работали без ввода паролей. На клиентском компьютере типа:

mkdir ~ / .ssh # Возможно, эта папка уже существует chmod 700 ~ / .ssh cd ~ / .ssh ssh-keygen -t rsa # Это создает открытый ключ cp authorized_keys authorized_keys_Backup # Это резервное копирование старых / существующих ключей cat id_rsa.pub >> ~ / .ssh / authorized_keys ssh-copy-id nameOfRemoteComputer

Выполнено! (-> Проверить, работает ли ssh без пароля сейчас) (у меня такое же имя пользователя на клиенте и удаленном компьютере, иначе это будет ssh-copy-id myRemoteUsername@nameOfRemoteComputer)

1
задан 19 January 2016 в 18:59

0 ответов

Другие вопросы по тегам:

Похожие вопросы: