Thursday , 4 June 2026

Rsync Command Toàn Tập — 16 Ví Dụ Đồng Bộ File Thực Tế Trên Linux

Rsync command là công cụ đồng bộ và sao chép file được dùng nhiều nhất trên Linux — từ copy nội bộ giữa hai thư mục, đến đồng bộ với server từ xa qua SSH, backup incremental, hay mirror dữ liệu giữa hai máy chủ. Bài viết tổng hợp 16 ví dụ thực tế, có thể dùng trực tiếp.


Ưu Điểm Của Rsync Command

  • Delta transfer — chỉ truyền phần dữ liệu thay đổi, không copy lại toàn bộ file, tiết kiệm băng thông đáng kể
  • Hỗ trợ SSH — truyền file mã hóa an toàn qua mạng
  • Backup incremental — chỉ cập nhật file mới hoặc đã thay đổi
  • Giữ nguyên metadata — permission, ownership, timestamp, symlink đều được bảo toàn
  • Giới hạn bandwidth — kiểm soát tốc độ truyền để không ảnh hưởng các service khác
  • Nhanh hơn scp — đặc biệt khi sync thư mục lớn hoặc file đã tồn tại một phần ở đích

Cú Pháp Rsync Command

Các option thường dùng:

  • -v — verbose, hiển thị chi tiết quá trình transfer
  • -r — copy đệ quy (không giữ timestamp và permission)
  • -a — archive mode: copy đệ quy + giữ symlink, permission, ownership, timestamp
  • -z — nén dữ liệu khi truyền, giảm băng thông
  • -h — hiển thị dung lượng theo định dạng đọc được (KB, MB, GB)
  • -P hoặc –progress — hiển thị tiến trình transfer

Cài Đặt Rsync


16 Ví Dụ Rsync Command Thực Tế

1. Copy File Nội Bộ (Local)

Sync một file từ vị trí này sang vị trí khác trên cùng máy. Nếu thư mục đích chưa tồn tại, rsync tự tạo:

2. Copy Thư Mục Nội Bộ

Sync toàn bộ thư mục sang thư mục khác trên cùng máy:

3. Copy Thư Mục Từ Local Lên Remote Server

Đẩy thư mục từ máy local lên server từ xa:

4. Copy Thư Mục Từ Remote Server Về Local

Kéo thư mục từ server về máy local:

5. Rsync Qua SSH

Dùng option -e ssh để chỉ định rõ giao thức SSH. Toàn bộ dữ liệu truyền qua kênh mã hóa, kể cả password:

6. Copy File Từ Remote Về Local Qua SSH

7. Copy File Từ Local Lên Remote Qua SSH

8. Hiển Thị Tiến Trình Transfer

Thêm –progress để xem từng file đang transfer và tốc độ theo thời gian thực:

9. Chỉ Include File Theo Extension

Chỉ sync những file có extension cụ thể, bỏ qua tất cả file còn lại:

10. Exclude File Theo Extension

Bỏ qua những file có extension cụ thể, sync tất cả file còn lại:

11. Kết Hợp Include Và Exclude

Ví dụ: chỉ sync những file bắt đầu bằng chữ R, bỏ qua tất cả còn lại:

Thứ tự quan trọng: –include phải đặt trước –exclude, rsync xử lý rule theo thứ tự từ trên xuống.

12. Dùng Option –delete Để Xóa File Không Còn Ở Source

Khi muốn destination hoàn toàn khớp với source — file nào không còn ở source sẽ bị xóa ở destination:

Dùng cẩn thận: option này xóa thật, không có trash. Kết hợp với –dry-run ở ví dụ 15 để kiểm tra trước.

13. Giới Hạn Kích Thước File Transfer

Chỉ transfer những file nhỏ hơn hoặc bằng giới hạn chỉ định — hữu ích khi không muốn sync file quá lớn:

14. Tự Động Xóa File Source Sau Khi Transfer

Hữu ích khi cần chuyển file sang backup server rồi dọn sạch file gốc — không cần xóa thủ công sau khi sync xong:

15. Dry Run — Kiểm Tra Trước Khi Thực Thi

Chạy thử để xem rsync sẽ làm gì mà không thay đổi bất kỳ file nào. Nên dùng trước khi chạy lệnh có –delete hoặc –remove-source-files:

Output có dòng (DRY RUN) ở cuối — nếu kết quả đúng như mong muốn thì bỏ –dry-run và chạy lại.

16. Giới Hạn Bandwidth Khi Transfer

Dùng –bwlimit để giới hạn tốc độ I/O, tránh rsync chiếm hết băng thông ảnh hưởng các service khác. Đơn vị là KB/s:

Mặc định rsync chỉ sync các block đã thay đổi. Nếu muốn force sync toàn bộ file (bất kể đã thay đổi hay chưa), thêm option -W:


Tổng Kết

Rsync command là công cụ không thể thiếu trong bộ kỹ năng của bất kỳ sysadmin hay DevOps nào làm việc trên Linux. Từ sync nội bộ, backup định kỳ, đến mirror giữa hai server — rsync xử lý được hết với hiệu suất cao và tiêu tốn băng thông tối thiểu nhờ cơ chế delta transfer.

Để xem đầy đủ tất cả option có sẵn, dùng lệnh man rsync hoặc tham khảo tài liệu chính thức tại linux.die.net/man/1/rsync.

Xem thêm các bài thủ thuật Linux tại tungle.blog và chuyên mục Thủ thuật, hoặc bài liên quan về backup và đồng bộ dữ liệu trên Linux.

Bạn đang dùng rsync cho mục đích gì — backup, deploy hay mirror server? Để lại bình luận bên dưới.

About Tung Le

Cài win 10000 lần

Check Also

xem disk và partition trên Linux

Xem Disk Và Partition Trên Linux Hiệu Quả Bằng 7 Lệnh Thực Tế

Biết cách xem disk và partition trên Linux là kỹ năng cơ bản cần có …

Leave a Reply