Using scp Command on Linux

29/12/2020
Chưa phân loại
SCP means “secure copy” and it is an alternative way to FTP/SFTP to transfer files from a device to an other device. SCP, just as SFTP, works through SSH protocol.

Brief Introduction to SSH protocol:

SSH (Secure Shell) protocol was created as an alternative to Telnet to login and access remote devices in a secure way. In contrast with Telnet SSH provides encryption to the communication between both sides. In order to understand SSH and Telnet imagine a tunnel in which information travels from a device to another, with Telnet the tunnel is transparent allowing external actors to see the information passing through it, while with SSH the same tunnel is painted preventing people from seeing the information passing inside it. While the SSH protocol was initially developed for users to access remote devices through console, it can be useful to encrypt other functions or protocols such as FTP.

Using scp:

SCP allows us to safely transfer files from the client to the server (check here how to setup SSH as server), to fetch files from the server and to deliver files from the server to the client.

The syntax is is pretty easy to understand, let’s say we have 3 computers, A, B and C:

Using scp to fetch files from the device B using the device A (Fetching files):

scp username@X.X.X.X:/path/to/remote/file  /local/directory/where/to/save/the/file

Where:
scp = calls the program

Username = replace it for the proper username

@ = separates username and host/ip
X.X.X.X = replace it for the proper host/ip.

:/path/to/remote/file = determine the remote location of the file to fetch.

/local/directory/where/to/save/the/file = replace it for the local directory where you want to store the file.

Using scp to copy files from the Device A to device B (sending files):

scp FILENAME username@X.X.X.X:/remote/directory

Where:
scp = calls the program
FILENAME = name of the file to transfer

Username = replace it for the proper username

@ = separates username and host/ip

X.X.X.X = replace it for the proper host/ip

:/remote/directory = determine the remote location to store the transferred file.

Using scp to copy files from the device B to device C while operating the device A:

scp username1@X.X.X.X:/path/to/remote/file username2@Y.Y.Y.Y:/path/to/destinarion/directory

Where:
scp = calls the program

Username = replace it for the proper username on device B.

@ = separates username and host/ip

X.X.X.X = replace it for the proper host/ip for device B.

Username2 = replace it for the proper username of device C

@ = separates username and host/ip

Y.Y.Y.Y = replace it for the proper host/ip for the device C.

:/path/to/destinarion/directory = determine the remote location to store the transferred file.

Using scp to copy a whole directory (not single file) from Device A to device B:

Just as with the command “cp” we can add the -r parameter to transfer entire directories:

scp -r /local/directory username@X.X.X.X:/remote/directory

Where -r specifies the content to copy isn’t a file but a whole directory, just like we use the command “cp -r

By adding the parameter -r we can transfer directories instead of single files.

If we want to speed up the file transference we can add the parameter -C which will compress files or directories during the transference, even leaving the destination copy uncompressed (if the source was so).

An example to speed up scp may be:

scp -C FILENAME username@X.X.X.X:/remote/directory

Note: Do not mistake -C for -c, while -C is to speed up the file’s transference by compressing the content, -c determines the chiper.

Additionally we can specify the port number. By default SCP uses the SSH port 22, but some sysadmins change it for security reasons. To specify a different port just add -P as parameter:

scp -P 2048  FILENAME username@X.X.X.X:/remote/director

Where:
-P:
Specifies a port.

2048: replace it for the correct port.

I hope you found this article useful and productive, keep following LinuxHint for more tips and updates on Linux.

ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

Nginx là gì ? Hướng dẫn Cài Đặt Và Cấu hình Nginx Cơ Bản

Nginx là một máy chủ proxy ngược mã nguồn mở (open source reverse proxy server) sử dụng phổ biến với...
24/12/2020

du Command on Linux

Every Linux distro comes up with a number of tools integrated into the system. Each of the tools has their own purposes....
29/12/2020

Setup Pacman Mirrors on Arch Linux

In this article I will show you how to setup Pacman mirrors on Arch Linux. Let’s get started. What is an Arch Linux Mirror? Like...
28/12/2020
Bài Viết

Bài Viết Mới Cập Nhật

Mua proxy v4 chạy socks5 để chơi game an toàn, tốc độ cao ở đâu?
18/05/2024

Thuê mua proxy Telegram trọn gói, tốc độ cao, giá siêu hời
18/05/2024

Thuê mua proxy Viettel ở đâu uy tín, chất lượng và giá tốt? 
14/05/2024

Dịch vụ thuê mua proxy US UK uy tín, chất lượng số #1
13/05/2024

Thuê mua proxy Việt Nam: Báo giá & các thông tin MỚI NHẤT
13/05/2024