Скопируйте файлы с удаленного Ubuntu на локальный Mac

43

Я искал все вокруг и, кажется, не могу найти это ... Я пытаюсь скопировать закрытый ключ на мою локальную машину, которая является Mac.

Когда я запускаю терминал на моем Mac, я получаю Jamies-iMac:~ jamie$

Так что после того, как я ssh на свой сервер Ubuntu, я попытался

scp /path/to/myfile.txt jamie@Jamies-iMac:/path/to/myfile.txt

что дает мне:

ssh: Could not resolve hostname Jamies-iMac: Name or service not known
lost connection

Вместо этого jamie@Jamies-iMac:/path/to/myfile.txtя попробовал некоторые другие варианты, но ничего не работает. Спасибо за вашу помощь.

inorganik
источник

Ответы:

66

У @ovc все правильно, но есть синтаксическая ошибка, и мое редактирование по какой-то причине было отклонено. Вам нужно иметь двоеточие между пользователем и filepath на стороне Ubuntu, а на стороне Mac вы должны иметь /Users/username/часть в filepath. Вот так:

scp username@192.168.1.111:/path/to/myfile.txt /Users/Jamie/local/path/to/myfile.txt

Это предполагает, что у вас настроена аутентификация с закрытым ключом.

inorganik
источник
3
Его показ "Отказано в
доступе
порт по умолчанию - 22, -Pдля указания порта
Vahid
2
Используйте -rдля рекурсивного копирования папки
speckledcarp
14

Вы делаете это неправильно. Просто используйте команду Scp на Mac, как это: scp username@192.168.1.111:/path/to/myfile.txt /local/path/to/myfile.txt. Вы также можете просто использовать FileZilla, который является графическим клиентом. Подключитесь к вашей Ubuntu с помощью URL-адреса, как sftp://192.168.1.111, конечно, вам нужно использовать действительный IP-адрес.

ООА
источник
Ах, так что я могу пойти только одним путем. Я знал, что это было что-то простое. Спасибо.
неорганик
Я внес небольшую правку в ваш ответ, она не сработала, пока я не сделал это так, как показано в правке.
неорганик
1
inorganik, это может идти обоими путями, если у вас есть SSH-сервер, работающий на обеих машинах. Я не верю, что это так с Mac. В противном случае вам нужно будет использовать scp с компьютера без сервера, чтобы он мог выполнить соединение.
ооо
+1 за упоминание графического варианта клиента, я использовал Cyberduck, и это сработало.
Дориан Фарримонд
7

Отличные ответы выше. Кроме того, если вам нужно использовать сертификат для аутентификации, вы можете использовать флаг -i.

scp -i /path/to/cert username@192.168.1.111:/path/to/myfile.txt /Users/Jamie/local/path/to/myfile.txt
Асинус Рекс
источник
Я не видел вашего ответа ранее, но это было то, что мне было нужно. Я вроде как вывел его из ответа выше, а потом увидел твой. Спасибо
AJC