Hướng dẫn chi tiết lệnh rsync trên Linux

  • Sunday 22/12/2024

Lệnh rsync là một công cụ mạnh mẽ trong Linux được sử dụng để sao chép và đồng bộ dữ liệu giữa các thư mục, máy tính hoặc ổ đĩa khác nhau. Công cụ này được biết đến với khả năng truyền tải dữ liệu nhanh chóng và hiệu quả nhờ sử dụng thuật toán chỉ sao chép các thay đổi.

rsync

1. Cài đặt rsync

Trước tiên, bạn cần cài đặt rsync nếu nó chưa được cài đặt trên hệ thống của bạn.

Trên Ubuntu/Debian:
sudo apt update
sudo apt install rsync

Trên CentOS/RHEL:
sudo yum install rsync

Trên Arch Linux:
sudo pacman -S rsync

 

2. Cú pháp cơ bản

Cú pháp cơ bản là:

#rsync [tùy_chọn] <source> <destination>

Trong đó:
Source: Thư mục hoặc tệp tin nguồn.
Destination: Thư mục hoặc tệp tin đích.

 

3. Tùy chọn phổ biến

Dưới đây là một số tùy chọn thường dùng với rsync:

-r hoặc --recursive: Sao chép thư mục và dưới thư mục.
-a hoặc --archive: Sao chép với các thuộc tính như: quyền truy cập, timestamp, links, etc.
-v hoặc --verbose: Hiển thị chi tiết quá trình sao chép.
-z hoặc --compress: Nén dữ liệu trong khi truyền tải.
--progress: Hiển thị tiến trình sao chép.
-e: Chọn giao thức truyền (ví dụ: SSH).
--delete: Xóa các tệp trong dest mà không còn tồn tại trong source.

 

4. Ví dụ thực tế

4.1 Sao chép tệp tin trong cùng máy

rsync -avz /home/user/source /home/user/dest

4.2 Sao chép qua SSH

rsync -avz -e ssh /home/user/source user@remote:/home/user/dest

4.3 Đồng bộ hai thư mục

rsync -av --delete /home/user/source/ /home/user/dest/

Lưu ý dấu / cuối cùng trong source để sao chép nội dung bên trong thư mục thay vì cả thư mục đó.

4.4 Chỉ sao chép các tệp thay đổi

rsync -av --update /home/user/source /home/user/dest

4.5 Hiển thị tiến trình

rsync -av --progress /home/user/source /home/user/dest

 

5. Kết hợp rsync với cron job

Bạn có thể sử dụng rsync cùng cron job để tự động hóa việc sao lưu dữ liệu.

Tạo file cron job:

crontab -e

Thêm lệnh rsync vào cron job (sao lưu mỗi ngày lúc 2 giờ sáng):

0 2 * * * rsync -avz /home/user/source user@remote:/home/user/backup

 

6. Một số mẹo khi dùng rsync

  • Sử dụng tùy chọn --dry-run để kiểm tra trước các tệp tin sẽ được sao chép.
rsync -av --dry-run /home/user/source /home/user/dest
  • Kết hợp với --exclude hoặc --include để loại trừ hoặc chỉ sao chép các tệp cụ thể:
rsync -av --exclude='*.tmp' /home/user/source /home/user/dest

 

7. So sánh rsync và scp

Điểm giống nhau

  • Cả rsync và scp đều có thể được sử dụng để sao chép dữ liệu qua mạng, sử dụng giao thức SSH để bảo mật.

Điểm khác nhau

Đặc điểm rsync scp
Phương pháp sao chép Chỉ sao chép các tệp thay đổi hoặc mới Sao chép toàn bộ tệp
Tốc độ truyền tải Nhanh hơn nhờ thuật toán nén và delta Chậm hơn
Tùy chọn nén Có hỗ trợ (-z) Không hỗ trợ
Đồng bộ dữ liệu Hỗ trợ đồng bộ (xóa các tệp không còn tồn tại trong nguồn) Không hỗ trợ
Hiển thị tiến trình Chi tiết hơn với tùy chọn –progress Hiển thị cơ bản
Sử dụng tài nguyên Tối ưu hơn do chỉ sao chép thay đổi Tốn tài nguyên hơn

 

8. Kết luận

Lệnh rsync là một công cụ tuyệt vời để sao chép và đồng bộ dữ liệu trên Linux. Với các tùy chọn phong phú, bạn có thể sử dụng nó cho nhiều mục đích khác nhau như sao lưu, đồng bộ hóa dữ liệu hoặc truyền tải tệp qua mạng. Hãy thử nghiệm với các tùy chọn để tìm hiểu sâu hơn và sử dụng hiệu quả nhất!

 

_______________________________________________________________________________________________________

P.A Việt Nam cung cấp đa dạng các cấu hình Máy Chủ Ảo và Máy Chủ Riêng
Cloud Server
Cloud Server Pro
Máy Chủ Riêng

Tham khảo các ưu đãi: https://www.pavietnam.vn/vn/tin-khuyen-mai/

Rate this post