Lệnh scp cho phép bạn sao chép tệp hiệu quả giữa hai máy chủ khác nhau. Cú pháp của scp sử dụng lại cú pháp của cp, vì vậy hầu hết người dùng Linux sẽ cảm thấy nó khá quen thuộc.
Cái khó khi dùng lệnh scp là nguồn hoặc đích có thể ở xa, tức là một máy tính được kết nối với mạng khác, chứ không phải mạng cục bộ của bạn. Khi chỉ định một tệp để sao chép, bạn cũng cần phải bao gồm thông tin chi tiết về máy chủ lưu trữ từ xa, bao gồm địa chỉ IP và tên người dùng của nó.
Tải tệp lên bằng lệnh scp
Cú pháp scp chung là:
scp source destination
Về cơ bản cú pháp giống như lệnh cp.
Ví dụ scp đơn giản nhất là ví dụ mà bạn có thể dùng nhiều nhất: tải tệp từ máy cục bộ lên máy chủ từ xa. Trong trường hợp này, phần source (nguồn) của lệnh đơn giản và phần destination (đích) phức tạp hơn:
scp index.html bobby@example.org:/var/www/html/
Thao tác này sẽ sao chép tệp cục bộ có tên index.html vào máy chủ lưu trữ từ xa. Bạn có thể chỉ định tệp này giống như cách chỉ định tệp cho bất kỳ lệnh nào khác. Nó có thể là một tham chiếu tuyệt đối hoặc tương đối đến tệp. Ví dụ, index.html, ../index.html và /home/bobby/index.html là những cách khác nhau mà bạn có thể sử dụng để chỉ định một tệp cục bộ.
Đích đến trong ví dụ là bobby@example.org:/var/www/html/. Điều này có nghĩa rằng:
- Người dùng Bobby sẽ là chủ sở hữu của tệp mới trên máy chủ từ xa. Tài khoản người dùng đó cần phải tồn tại và bạn sẽ có thể truy cập nó.
- Tên máy chủ của máy chủ mà chúng ta sẽ tải tệp lên là example.org. Chúng ta đã chỉ định miền ở đây, nhưng bạn cũng có thể sử dụng địa chỉ IP để thay thế.
- Trên máy chủ đó, scp sẽ tải tệp lên thư mục /var/www/html/.
Khi bạn nhập lệnh đó, terminal thường sẽ nhắc bạn nhập mật khẩu của người dùng mà bạn đã chỉ định trên máy điều khiển từ xa.
Tải xuống toàn bộ thư mục
Đây là một biến thể phức tạp hơn một chút có thể tải xuống toàn bộ thư mục:
scp -rpC bobby@example.org:/tmp/docs /home/bobby
Đầu tiên, bạn cần lưu ý rằng bây giờ source là một máy từ xa, trong khi destination là cục bộ. Ví dụ này cũng giới thiệu ba cờ (flag) hữu ích:
- -r: Tải xuống đệ quy toàn bộ thư mục. Nó sẽ chuyển tất cả các tệp bên trong /tmp/docs. Điều này rất hữu ích để sao lưu nhanh chóng hoặc chuyển số lượng lớn tệp, đặc biệt nếu bạn không có quyền truy cập đăng nhập vào máy chủ từ xa.
- -p: Lưu giữ dấu thời gian của tệp và chế độ của tệp gốc. Các bản sao cục bộ của bạn sẽ có cùng thời gian tạo hoặc quyền ghi như bản gốc của chúng.
- -C: Cho phép nén. Nếu bạn đang chuyển nhiều tệp, điều này có thể tăng tốc quá trình, đặc biệt nếu bạn đang sử dụng kết nối chậm.
Lệnh scp cũng dễ dàng như lệnh cp
Cách sử dụng lệnh scp rất dễ dàng: về cơ bản nó giống như cp. Sự khác biệt chính là scp cần thêm một số chi tiết cho máy chủ từ xa. Tuy nhiên, như với cp, có những cờ hữu ích để mở rộng chức năng của nó, bao gồm nén và sao chép đệ quy để cung cấp cho tải xuống nhiều tệp.
Nắm vững lệnh scp có thể hữu ích nếu bạn cần quản lý một máy chủ Linux. Thực hiện sao lưu và truyền dữ liệu từ xa là công việc hàng ngày đối với những người làm công việc quản trị máy chủ.
Vân Nguyễn
Dịch từ: https://www.makeuseof.com/scp-example/
Bình luận (0
)