Copy files from remote Ubuntu to local Mac
Sebastian Wright
I've searched all around and can't seem to find this... I'm trying to copy a private key to my local machine which is a Mac.
When I fire up terminal on my mac, I get Jamies-iMac:~ jamie$
So after I ssh into my Ubuntu server I tried
scp /path/to/myfile.txt jamie@Jamies-iMac:/path/to/myfile.txtwhich gives me:
ssh: Could not resolve hostname Jamies-iMac: Name or service not known
lost connectionIn place of jamie@Jamies-iMac:/path/to/myfile.txt I've tried some other variations but nothing seems to work. Thanks for your help.
5 Answers
@ovc had it right, but there is a syntax error, and my edit got rejected for some reason. You need to have a colon between the user and filepath on the ubuntu side, and on the mac side you need to have the /Users/username/ portion in the filepath. Like so:
scp username@192.168.1.111:/path/to/myfile.txt /Users/Jamie/local/path/to/myfile.txtThis assumes you have private key authentication set up.
3You're doing it the wrong way around. Simply use the scp command on the Mac, like this: scp username@192.168.1.111:/path/to/myfile.txt /local/path/to/myfile.txt. You may also just use FileZilla which is a graphical client. Connect to your Ubuntu with a URL like sftp://192.168.1.111, of course you need to use the valid IP address.
Excellent answers above. Additionally, if you need to use a certificate for authentication, you can use the -i flag.
scp -i /path/to/cert username@192.168.1.111:/path/to/myfile.txt /Users/Jamie/local/path/to/myfile.txt 1 If the path you're using has spaces, you should use the path in quotes, such as
scp username@192.168.1.111:"/path to/myfile.txt" ./myfile.txtYet, that didnt work for me.
Allegedly you should use triple backslashes, such as
/Users/me/Application\\\ Data/file.txtBut it worked with path in quotes and double slashes only.
I am ssh-ing from a mac into another mac though.
Proposition of a solution inspired by this answer .
In order to copy a file from a remote server to your local home computer you will need to open a terminal on your home computer and write a command structured like this :
scp -P $PORT_NUMBER $USERNAME@$IP_ADDRESS:$PATH_TO_THE_FILE_TO_COPY $PATH_TO_DESTINATIONExplanations :
scp : Secure Copy command more infos here
$PORT_NUMBER: SSH have a default port set to 22, you can edit this port here ex: 23
$USERNAME: the username access
$IP_ADDRESS: the ip of the remote access
$PATH_TO_THE_FILE_TO_COPY: the path where you want to get the file
$PATH_TO_DESTINATION: the path where you want to copy the file
For exemple :
scp -P 22 johndoe@$011.235.813.213:/var/projects/calculator/tests/week-1 /Users/John/transit/Advices :
- Be sure to have the necessary rights on the element you want to copy from your server.
- ⚠️ Init this command from your home computer not from the server ⚠️
🖖