Copy files, folder từ máy tính lên vps và ngược lại bằng scp command line

Cú pháp đơn giản của SCP command như sau:

scp [other options] [source username@IP]:/[directory and file name] [destination username@IP]:/[destination directory]

Trong đó:

  • [other options] là tham số bạn có thể thêm vào SCP command. phổ biến nhất là:

    • –P port xác định chính xác cổng vào của server (port mặc định của TCP là 22)
    • –c cipher giúp bạn xác định thuật toán mã hóa bạn muốn dùng. Một số giá trị bạn có thể đặt vào là ‘aes256-ctr’, ‘aes256-cbc’, ‘blowfish-cbc’, ‘arcfour’, ‘arcfour128’, ‘arcfour256’, ‘cast128-cbc’, aes128-ctr’, ‘aes128-cbc’, ‘aes192-ctr’, ‘aes192-cbc’, and 3des-cbc’. Lựa chọn mặc định trong cấu hình là ‘AnyStdCipher’
    • –q sẽ vận hành trong chế độ im lặng, có nghĩa là chỉ có các lỗi nghiêm trong mới hiện lên.
    • –r là recursive copying, có nghĩa là bao gồm tất cả thư mục con.
    • -4 hoặc -6 được dùng khi bạn muốn chọn phiên bản protocol IPv4 hay IPv6.
    • –p là “preserve”, dùng để lưu lại thời gian chỉnh sửa và thuộc tính của file.
    • –u sẽ xóa file nguồn sau khi chuyển đổi hoàn tất.
  • [source username@IP] là username và IP của máy có file bạn muốn. Nó sẽ giống như root@123.123.123.12

  • :/ báo cho SCP command biết sau đó sẽ là thư mục nguồn

  • [directory and file name] đường dẫn chứa file, và tên của nó. Nó có dạng /users/datvnn/Desktop/SCP.png

  • [destination username@IP] là username và IP của máy đích

  • [destination directory] là thư mục đích nơi file được lưu

Lưu ý: bạn thực hiện lệnh trên máy nào thì không cần thêm username@IP của máy đó.

1. Copy từ PC lên VPS

Copy tệp abc.txt từ pc lên thư mục root của vps.
Mở powershell và chạy lệnh sau, đừng quên thay đường dẫn thực tế của bạn.

scp F:\DOWNLOAD\WEB\abc.txt root@103.22.23.29:/root
# output
abc.txt               100%    4     0.1KB/s   00:00

Hoặc nếu muốn đổi tên tệp khi copy

scp F:\DOWNLOAD\WEB\abc.txt root@103.22.23.29:/root/abc2.txt

Bạn sẽ được yêu cầu xác thực nếu đây là lần đầu tiên bạn kết nối với vps. Hãy nhấn nhập yes để đồng ý. Tiếp theo hãy nhập mật khẩu tài khoản root của bạn.

Copy thư mục WEB từ PC lên thư mục root của vps cũng tương tự như sau:

scp –r F:\DOWNLOAD\WEB root@103.22.23.29:/root

Lưu ý: tùy chọn -r để bao gồm tất cả các thư mục con.

2. Copy từ VPS xuống PC

Bạn chỉ cần đảo ngược chỗ vị trí nguồn và vị trí đích là được, ví dụ copy tệp abc2.txt từ thư mục root của vps xuống thư mục WEB của PC:

scp root@103.22.23.29:/root/abc2.txt F:\DOWNLOAD\WEB