Scp
|
From Linuxconfig.org
.. back to the list of Linux Commands
Name
scp - secure copy (remote file copy program)
Synopsis - man page
scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2
Frequently used options
-p Preserves modification times, access times, and modes from the original file.
-q Disables the progress meter.
-r Recursively copy entire directories.
-v Verbose mode. Causes scp and ssh(1) to print debugging messages
about their progress. This is helpful in debugging connection,
authentication, and configuration problems.
Examples
scp is largely replacing unsecured rcp protocol. Therefore for data copy over the internet scp is suggested of rcp. Scp can can be used to upload data as well as download data. First we upload data from our local box to remote.
We are about to transfer file myscpfile.txt from linuxconfig.local to linuxconfig.org's /tmp directory. For this we need to know valid user name and password for linuxconfig.org. In this case the user name is linuxconfig.
SYNTAX:
scp [local file to copy] [username]@[host]:/[remote directory to copy file in]
scp myscpfile.txt linuxconfig@linuxconfig.org:/tmp
Now we can scp the file back to our local /tmp directory:
SYNTAX:
scp [username]@[host]:/[remote file to copy] [local directory to copy file in]
scp linuxconfig@linuxconfig.org:/tmp/myscpfile.txt /tmp
This works fine for the files, but what about directory copy. For directory we need to use scp's -r option. Let's copy directory from local to remote and back. As shown on the figure below, not using -r option does not work for directory's. You get following error:
scp: /tmp/dir1: not a regular file
SCP without passwords
In many cases you may need to scp for automatic backups, so you need to overcome the problem of entering user password every time you need to create session. To accomplish this task you need to exchange public keys.

















