Sử dụng rclone cơ bản để đồng bộ giữa hai remote cloud storage

KP
Khoi Pro

Hướng dẫn cài đặt, kiểm tra remote và đồng bộ file giữa các cloud storage bằng rclone.

Rclone là công cụ rất tiện để di chuyển và đồng bộ dữ liệu giữa các cloud media storage, ví dụ S3, DigitalOcean Spaces hay Contabo Object Storage. Nếu bạn cần làm việc với nhiều remote cùng lúc thì rclone là lựa chọn gọn và dễ nhớ hơn rất nhiều.

Bài này đi theo luồng cơ bản: cài đặt, cấu hình remote, test kết nối, rồi chạy sync giữa hai storage.

Lưu ý khi cài rclone trên các môi trường khác nhau

Rclone có thể cài trên Linux, macOS và Windows. Khi chạy trên môi trường Linux hoặc macOS, bạn có thể gõ lệnh:

rclone config

Trong khi trên môi trường Windows, sau khi giải nén ra file `rclone.exe`, bạn chỉ cần chạy ngay trong folder vừa giải nén:

./rclone config

Rclone cấu hình và test remote như thế nào

Đầu tiên, ta cần cấu hình remote bằng câu lệnh:

rclone config

Màn hình rclone khá trực quan, bạn lần lượt làm theo các bước, từ `n` để tạo remote mới, chọn type phù hợp, rồi nhập thông tin provider tương ứng.

Các lưu ý:

1. Khi hỏi tới bước nhập credentials, thường ta có thể chọn cách nhập ở bước kế tiếp nếu chưa sẵn sàng ngay.
2. Các tuỳ chọn nâng cao như `location_constraint`, `acl`, `server_side_encryption`, `sse_kms_key_id` có thể bỏ qua nếu chưa cần.

Sau khi cấu hình xong, ta có thể test connection bằng lệnh:

rclone ls digitalocean:codetot

Nếu kết quả trả ra là danh sách file hoặc folder đang có, như vậy là thành công.

Cấu hình đồng bộ file từ remote này sang remote khác

Sau khi đã thấy remote hoạt động ổn, ta có thể đồng bộ dữ liệu sang remote khác bằng lệnh:

rclone sync digitalocean:codetot s3:codetot -P

`-P` có nghĩa là hiển thị progress để dễ theo dõi quá trình đồng bộ. Nếu bạn muốn copy thay vì mirror 2 đầu, có thể đổi sang `rclone copy` tuỳ trường hợp.

Mình cũng có dùng Contabo Object Storage, tài liệu tham khảo chính thức ở đây:
https://docs.contabo.com/docs/products/Object-Storage/Tools/rclone

Đọc thêm về lệnh `sync` và `ls` trên tài liệu chính thức của rclone:
https://rclone.org/commands/rclone_sync/
https://rclone.org/commands/rclone_ls/

Nếu bạn chỉ cần chuyển dữ liệu giữa hai máy chủ qua SSH, xem bài liên quan khác ở đây: bài chuyển file giữa hai máy chủ qua SSH.