Файлы SCP от machineB до machineA

Используйте цикл для итерации по каталогам, в которые Вы хотите скопированный и копируете содержание Вашего основного каталога каждому:

dest=(Fred Barney Thelma Louise Foo Bar)
for d in "${dest[@]}"; do
    cp -r master "$d"
done
2
17.12.2013, 04:59
2 ответа

Незначительные подсказки

Если в Вас входят machineA как корень затем, я не думаю, что необходимо сказать root@machineA:/... бит, можно сказать это немного меньше verbosely как это:

$ scp david@machineB:/bat/data/snapshot/5.data /data01/primary

Я всегда говорю, что целевые каталоги как это также, именно так более очевидно, что собирается произойти:

$ scp david@machineB:/bat/data/snapshot/5.data /data01/primary/.

Ваша проблема

Но я не думаю, что это - первопричина Вашего сообщения об ошибке:

Проверка ключа хоста перестала работать.

Скорее это сообщение обычно означает, что у Вас есть недопустимое, и/или из синхронизирующего хоста вводят Ваш /etc/.ssh/known_hosts файл.

Можно подтвердить с этой командой:

$ ssh-keygen -R <hostname>

Пример

$ ssh-keygen -R skinner
# Host skinner found: line 1 type RSA
# Host skinner found: line 125 type RSA
/home/saml/.ssh/known_hosts updated.
Original contents retained as /home/saml/.ssh/known_hosts.old

Пропуск проверки хоста

Если Вы знаете то, что Вы делаете и не заботитесь о проверке хоста, что можно временно отключить ее как так:

$ scp -o StrictHostKeyChecking=no \
    david@machineB:/bat/data/snapshot/5.data /data01/primary/.

Ссылки

4
27.01.2020, 21:54
  • 1
    Спасибо за подробное предложение. Я заметил очень странную проблему здесь. Когда я выполняю свою команду как это - scp david@machineB:/bat/data/snapshot/5.data /data01/primary/. от machineA это хорошо работает. Но если я выполняю свою ту же команду как это scp david@machineB:/bat/data/snapshot/5.data root@machineA:/data01/primary от machineA, это всегда дает мне вышеупомянутое исключение.. Какие-либо мысли, почему? –  SSH 17.12.2013, 07:38
  • 2
    @SSH - Я был бы подозрителен к known_hosts файлы в соответствии с обеими учетными записями на machineA и B. Можно отладить ssh и scp путем добавления растущих чисел -v переключатели. Пример, scp -vv david@machineB:.... . Причина должна быть довольно очевидной с увеличенной отладкой. –  slm♦ 17.12.2013, 08:13
  • 3
    я немного плохо знаком со всеми этими вещами. Если можно вести меня шаг за шагом, что я должен сделать, то я смог выяснять немного вещей и также изучать довольно мало вещей также.. –  SSH 17.12.2013, 08:17
  • 4
    @SSH - верная попытка Ваша команда с дополнительным -vv переключатели. Пример: scp -vv david@machineB:/bat/data/snapshot/5.data root@machineA:/data01/primary |& tee logfile.txt. Это получит вывод в файл logfile.txt. –  slm♦ 17.12.2013, 08:24
  • 5
    я просто сделал это и это скопировало набор материалов в файле logfile.txt и когда я открыл тот файл, большая часть материала выходят за предел моей головы.:( Теперь, что я должен сделать? –  SSH 17.12.2013, 08:28

“Проверка ключа хоста, неудавшаяся”, означает, что Вы ранее соединились с машиной тем именем, и Вы теперь соединяетесь с другой машиной тем же именем. В идеальном мире это было бы безошибочным знаком, что кто-то угоняет Ваше соединение, и Вы пытаетесь соединиться с машиной взломщика вместо той, которая Вы хотели соединить Вас. Поэтому SSH отклоняет попытку подключения.

Так как Вы копируете между двумя удаленными машинами, любой из них мог быть преступником. Для наблюдения, какой это, выполняет команду на одной машине, например. ssh david@machineB true и ssh root@machineA true.

В комментарии я вижу, что Вы видите эту ошибку, когда Вы пытаетесь достигнуть machineA от себя. Это всегда безопасно (если нет причуды в определении имен, которые заставляют Ваше название машины относиться к другой машине). Наиболее вероятное объяснение состоит в том, что Вы переустановили свою машину в какой-то момент, заставив Ваш ключ хоста измениться, но Вы снова использовали старое имя хоста.

Ssh хранит информацию о прошлых соединениях в файле ~/.ssh/known_hosts. Если Вы решили, что запись там является устаревшей (потому что машина была переустановлена), удалите ее:

ssh-add -R root@machineA
2
27.01.2020, 21:54

Теги

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