https://linuxize.com/post/how-to-use-scp-command-to-securely-transfer-files
With scp, you can copy a file or directory:
In this tutorial, we will show you how to use the scp command through practical examples and detailed explanations of the most common scp options.
The scp utility expressions take the following form:
scp provides a number of options that control every aspect of its behavior. The most widely used options are:
The colon(
To be able to to copy files you must have at least read permissions on the source file and write permission on the target system.
Be careful when copying files that share the same name and location on both systems, scp will overwrite files without a warning.
When transferring large files it is recommended to run the scp command inside a screen or tmux session.
Here,
You will be prompted to enter the user password and the transfer process will start.
Omitting
the filename from the destination location copies the file with the
orginal name. If you want to save the file under a different name you
need to specify a new name:
If SSH on the remote host is listening on a port other than the default 22 then you can specify the port using the
The command to copy a directory is much like as when copying files. The only difference is that you need to use the
To copy a directory from a local to remote system use the
For example to copy a file named
If you haven’t set a passwordless SSH login to the remote machine, you will be asked to enter the user password.
The following command will copy the file
You
will be prompted to enter the passwords for both remote accounts. The
data will be transfer directly from one remote host to the other.
To route the traffic through the machine on which the command is issued use the
How to Use SCP Command to Securely Transfer Files
- From your local system to a remote system.
- From a remote system to your local system.
- Between two remote systems from your local system.
In this tutorial, we will show you how to use the scp command through practical examples and detailed explanations of the most common scp options.
SCP Command Syntax
Before going into how to use thescp
command, let’s start by reviewing the basic syntax.The scp utility expressions take the following form:
scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2
OPTION
- scp options such as cipher, ssh configuration, ssh port, limit, recursive copy ..etc[user@]SRC_HOST:]file1
- Source file.[user@]DEST_HOST:]file2
- Destination file
scp provides a number of options that control every aspect of its behavior. The most widely used options are:
-P
Specifies the remote host ssh port.-p
Preserves files modification and access times.-q
Use this option if you want to suppress the progress meter and non-error messages.-C
. This option will force scp to compresses the data as it is sent to the destination machine.-r
This option will tell scp to recursively copy directories.
Before you Begin
Thescp
command relies on ssh
for data transfer, so it requires an ssh key or password to authenticate on the remote systems.The colon(
:
) is how scp distinguish between a local and a remote locations.To be able to to copy files you must have at least read permissions on the source file and write permission on the target system.
Be careful when copying files that share the same name and location on both systems, scp will overwrite files without a warning.
When transferring large files it is recommended to run the scp command inside a screen or tmux session.
Copy Files and Directories Between Two Systems with SCP
Copy a Local File to a Remote System with the scp Command
To copy a file from a local to remote system run the following command:scp file.txt remote_username@10.10.0.2:/remote/directory
file.txt
is the name of the file we want to copy, remote_username
is the user on the remote server, 10.10.0.2
is the server IP address. The /remote/directory
is the path to the directory you want to copy the file to, if you don’t
specify a remote directory, the file will be copied to the remote user
home directory.You will be prompted to enter the user password and the transfer process will start.
remote_username@10.10.0.2's password:
file.txt 100% 0 0.0KB/s 00:00
scp file.txt remote_username@10.10.0.2:/remote/directory/newfilename.txt
-P
argument:ssh -P 2322 file.txt remote_username@10.10.0.2:/remote/directory
-r
flag for recursive.To copy a directory from a local to remote system use the
-r
option:scp -r /local/directory remote_username@10.10.0.2:/remote/directory
Copy a Remote File to a Local System using the scp Command
To copy a file from a remote to local system, use the remote location as source and local location as destination.For example to copy a file named
file.txt
from a remote server with ip 10.10.0.2
run the following command:scp remote_username@10.10.0.2:/remote/file.txt /local/directory
Copy a File Between Two Remote Systems using the scp Command
Unlike rsync, when using scp you don’t have to login to one of the server to transfer files from one to another remote machine.The following command will copy the file
/files/file.txt
from the remote host host1.com
to the directory /files
on the remote host host2.com
.scp user1@host1.com:/files/file.txt user2@host2.com:/files
To route the traffic through the machine on which the command is issued use the
-3
option:scp -3 user1@host1.com:/files/file.txt user2@host2.com:/files
No comments:
Post a Comment