1. Trang chủ
  2. » Công Nghệ Thông Tin

Rsync server backup

3 571 2

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Cấu trúc

  • Backup dữ liệu với RSYNC

Nội dung

Lợi ích 123doc mang lại cho người bánTiếp xúc với gần 1 triệu người mua tiềm năng.Tự đặt giá cho tài liệu bán từ 2.000₫ đến 50.000₫.Hưởng 70% doanh thu 1 tài liệu bán.Tài liệu của bạn sẽ được lên top 5 Google.Hơn 10.000 giao dịch mỗi ngày.Người bán rút tiền thông qua cổng thanh toán Baokim.vn.

Nguyễn Trường Giang - Học viện Quản trị mạng PNH Backup dữ liệu với RSYNC Tiên ích rsync thường được dùng để tạo backup trong môi trường UNIX/Linux. Nó sẽ đồng bộ hóa dữ liệu từ thư mục này đến thư mục khác trên cùng một server, hoặc backup dữ liệu từ server này đến server khác Tốc độ: Rsync sẽ thực hiện đồng bộ hóa giữa hai nơi bằng cách copy theo block (theo khối trên ổ cứng) chứ không phải copy theo từng file (Rsync cũng hỗ trợ copy theo từng file). Tuy nhiên khi thực hiện trên block sẽ cho tốc độ nhanh hơn nhiều các phương thức khác. Bảo mật: Trong quá trình truyền dữ liệu, Rsync cho phép sử dụng mã hóa dữ liệu sử dụng qua ssh nên data khi truyền sẽ được bảo mật tốt hơn. Bandwidth: Khi rsync bằng các option cơ bản, nó cho phép nén dữ liệu và khi sang bên đích nó sẽ giải nén. Quá trình nén cũng theo block do vậy băng thông sẽ giảm tối đa. Tuy nhiên quá trình nén và giải nén gây ra tốn thời gian. Do vậy nếu băng thông của mạng lớn, rsync sẽ có tùy chọn không nén khi truyền, tăng tốc thời gian đồng bộ hóa. Khi cài đặt và thực thi rsync, nó không cần cấp bất cứ quyền nào đặc biệt. Chỉ như một công cụ bình thường, rất dễ dàng sử dụng và tiện lợi. Cú pháp: rsync -options source destination 1. Đông bộ 2 thư mục trên cùng một server # mkdir /tmp/ssh # rsync -zvr /etc/ssh/ /tmp/ssh -z : Bật tính năng nén -v : verbose -r : Áp dụng với các thư mục con (đệ qui) Với các option trên thì các thuộc tính của các file (thời gian…) sẽ không được giữ nguyên khi nó copy đến thư mục đích. # ls -l /etc/ssh /tmp/ssh 2. Giữ các thuộc tính bằng cách sử dụng option -a # mkdir /tmp/ssh2 # rsync -avz /etc/ssh/ /tmp/ssh2 # ls -l /etc/ssh /tmp/ssh2 3. Đồng bộ các file từ Local server sang Remote server # rsync -avz /etc/ssh giangnt@192.168.24.100:/tmp/ssh 4. Đồng bộ các file từ Remote server về Local server # rsync -avz giangnt@192.168.24.100:/etc/ssh /tmp/ssh 5. Remote shell for Synchronization Sử dụng options -e ssh để sử dụng ssh khi sync # rsync -avz -e ssh giangnt@192.168.24.100:/etc/ssh /tmp/ssh 6. Không ghi đè dữ liệu ở đích Nguyễn Trường Giang - Học viện Quản trị mạng PNH Sử dụng option -u trong trường hợp chỉ muốn đồng bộ những file, folder chưa tồn tại ở server đích. Những file đã tồn tại (đã được đồng bộ rồi) thì không đồng bộ nữa. 7. Chỉ đồng bộ cây thư mục (không đồng bộ file) Sử dụng option -d # rsync -v -d giangnt@192.168.24.100:/etc/ssh /tmp/ssh 8. Xóa các file, folder ở đích. Sử dụng option delete nếu muốn đồng bộ hoàn toàn giữa 2 nơi, các file, folder ở đích mà không tồn tại ở server nguồn sẽ bị xóa bỏ để đảm bảo server đích là bản sao hoàn chỉnh của server nguồn. # rsync -avz delete giangnt@192.168.24.100:/etc/ssh /tmp/ssh 9. Giới hạn kích cỡ files khi đồng bộ Sử dụng option -max-size Ví dụ: Chỉ transfer các file có size nhỏ hơn hoặc bằng100K # rsync -avz -max-size=’100K’ giangnt@192.168.24.100:/etc/ssh /tmp/ssh 10. Transfer files thay vì transfer block Quá trình copy data giữa hai server thực hiện bằng copy block. Nếu mạng có băng thông rộng, CPU mạnh, có thể sử dụng option -W để copy theo file. # rsync -avzW giangnt@192.168.24.100:/etc/ssh /tmp/ssh 11. Đồng bộ dữ liệu cho 2 server sử dụng rsync qua SSH SERVER1: /data → SERVER2: /backup Backup dữ liệu trong thư mục /data của SERVER1 sang thư mục /backup trên SERVER2 11.1 Chứng thực Basic SERVER2 Thực thi lệnh # rsync -avz delete -e ssh root@SERVER1:/data /backup Nhập password của máy SERVER1. Tùy chọn -a: (nghĩa là archive) Các file được backup có thể được giữ nguyên sự phân quyền, chủ sở hữu, nhóm sở hữu, thời gian, recursive mode và các symbolic links -r: backup áp dụng với các thư mục con (đệ qui) -l: backup symbolic link -t: backup thời gian file -p: backup các phân quyền trên file -o: backup user sở hữu file -g: backup group sở hữu file Tùy chọn -v : hiển thị dạng chi tiết (dùng -vv để hiển thị chi tiết hơn) Tùy chọn -z : nén dữ liệu để tiết kiệm băng thông Tùy chọn delete : xóa các file trên server backup khi file trên server nguồn không tồn tại Tùy chọn -e ssh: chỉ định sử dụng ssh với các tùy chọn Nguyễn Trường Giang - Học viện Quản trị mạng PNH Bằng cách kết hợp rsync với ssh để mã hóa dữ liệu → Dữ liệu được backup qua mạng được bảo mật (Mặc định rsync không mã hóa dữ liệu khi backup qua mạng ) 11.2 Chứng thực mã hóa RSA SERVER2 # ssh-keygen -t rsa Copy file public key id_rsa.pub lên SERVER1 # ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.100 Lệnh ssh-copy-id copy public key và đổi tên thành authorized_keys SERVER1 Cấu hình sshd_config # vim /etc/ssh/sshd_config RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys Restart dịch vụ SSH: # service sshd restart SERVER2 Tạo file script rync.sh với nội dung sau # vim /rsync.sh #! /bin/sh rsync -avz delete -e ssh root@SERVER1:/data /backup Thêm quyền execute cho file rsync.sh # chmod u+x /rsync.sh Đặt crontab thực thi file rsync.sh sau mỗi phút # crontab -e */1 * * * * sh /rsync.sh >/rsync.log 2>&1 # service crond restart # crontab -l */1 * * * * sh /rsync.sh >/rsync.log 2>&1 # tail -f /var/log/cron Apr 24 00:23:01 linux crond[3885]: (root) CMD (sh /rsync.sh >/rsync.log 2>&1) Apr 24 00:24:01 linux crond[3896]: (root) CMD (sh /rsync.sh >/rsync.log 2>&1) Apr 24 00:25:01 linux crond[3906]: (root) CMD (sh /rsync.sh >/rsync.log 2>&1) Apr 24 00:26:01 linux crond[3914]: (root) CMD (sh /rsync.sh >/rsync.log 2>&1) Apr 24 00:27:01 linux crond[3921]: (root) CMD (sh /rsync.sh >/rsync.log 2>&1) Cứ sau mỗi phút thư mục SERVER2: /backup sẽ tự động rsync với thư mục SERVER1: /data . /rsync. sh > /rsync. log 2>&1) Apr 24 00:24:01 linux crond[3896]: (root) CMD (sh /rsync. sh > /rsync. log 2>&1) Apr 24 00:25:01 linux crond[3906]: (root) CMD (sh /rsync. sh > /rsync. log. nội dung sau # vim /rsync. sh #! /bin/sh rsync -avz delete -e ssh root@SERVER1:/data /backup Thêm quyền execute cho file rsync. sh # chmod u+x /rsync. sh Đặt crontab thực thi file rsync. sh sau mỗi. CMD (sh /rsync. sh > /rsync. log 2>&1) Apr 24 00:27:01 linux crond[3921]: (root) CMD (sh /rsync. sh > /rsync. log 2>&1) Cứ sau mỗi phút thư mục SERVER2: /backup sẽ tự động rsync với

Ngày đăng: 28/08/2014, 12:41

TỪ KHÓA LIÊN QUAN

w