87

I have a centos server lets say with ip: 1.2.3.4. I want to download a file from 1.2.3.4 at path /root/pc/filename.rar to my localhost host (current pc). What command I need to download that file? I am trying like this but its not working

scp root@1.2.3.4:/root/pcfilename.rar

I want to download that file into my system current directory.

coure2011
  • 1,567
  • 9
  • 25
  • 35

3 Answers3

135

Just add where you want it to be copied to (ie: ./):

scp root@1.2.3.4:/root/pcfilename.rar ./
totaam
  • 1,929
  • 1
  • 14
  • 13
15

First of all, make sure that the root user is really needed to access the file. If the file can be retrieved by a normal user, that would be preferred to limit the security risks.

If root is really required, make sure that root is actually allowed to login by ssh by checking your /etc/ssh/sshd_config file and see if the PermitRootLogin option is set to yes.

Finally, your command above should work when you add a . (pointing to your current dir) behind it, like so:

scp root@1.2.3.4:/root/pcfilename.rar .

Or you can always use a full path as well:

scp root@1.2.3.4:/root/pcfilename.rar /home/user/pcfilename.rar
Oldskool
  • 664
  • 3
  • 13
-2

I'm using

rsync -avz example@x.x.x.x:/home/example/* .

This example will deliver files inside the folder (-a switch), will print the process (-v switch, verbose) and will use compression during the transfer (-z switch). The dot in the beginning tells rsync to deliver the files in the current folder. Otherwise you could replace the dot (.) with a folder, say /home/foo/bar

Betro
  • 7
  • 1
  • 1
    The question specifically asks how to do this with `scp`. Since the other answers show that it is possible to do it in `scp`, there’s no need to present a solution using a different utility. You don’t offer any reason why an `rsync` solution is preferable, and what you do say is unclear. – G-Man Says 'Reinstate Monica' Jan 09 '20 at 22:23