Shell script that fetches file with SCP [duplicate]

На этот вопрос уже есть ответ здесь:

Я хочу создать сценарий оболочки, который запускается ежедневно и получает файл с другого сервера с помощью команды SCP.

Проблема в том, что когда я ввожу эту команду в терминале, она запрашивает пароль.

a) Как сценарий оболочки может ввести пароль?

b) Действительно ли это хорошая идея хранить пароль в сценарии оболочки?

Пример команды:

scp -r myUser@myServer:/local/java/log/archive/2018/02/16/log.2018-02-16.gz ~/Temp/
0
задан 2 March 2018 в 02:10

1 ответ

Первый шаг: установка пароля меньше доступ SSH (через ssh-keygen):

Выполненный ssh-keygen (Вы заканчиваете с 2 файлами: id_rsa и id_rsa.pub, каждый - Ваш .pub открытый ключ для совместного использования с миром, другим закрытым ключом). Затем выполненный ssh-copy-id myUser@myServer. Просто введите свой пароль при запросе и Вы теперь можете к SSH, не имея необходимость вводить Ваш пароль для myUser@myServer.

Второй шаг: автоматизируемый ежедневно scp:

Ввести crontab -e, выберите своего любимого редактора и добавьте строку у основания файла: 0 0 * * * scp -r myUser@myServer:/local/java/log/archive/2018/02/16/log.2018-02-16.gz ~/Temp/ сохраните и... Voilà! (можно использовать a @daily scp (...) запись crontab, которая является в основном тем же как 0 0 * * *),

См. Anacron (Планирование задания с помощью crontab, что произойдет, когда компьютер будет завершением работы в течение того времени?) для управления задачей Крона, когда Вы компьютер снижаетесь.

5
ответ дан 30 October 2019 в 08:30

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

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