Rsync文件同步服務

Rsync簡介

Rsync是一款開源的、快速的、多功能的、可實現全量及增量的本地或遠程數據同步備份的優秀工具,適用於Unix/Linux/Windows等多種操做系統。shell

Rsync的特性

  1. 支持拷貝特殊文件如連接、設備文件
  2. 支持增量同步,傳輸效率較高
  3. 支持使用rcp,rsh,ssh做爲隧道進行傳輸
  4. 支持使用守護進程的方式進行傳輸
  5. 支持匿名或認證的方式進行傳輸
  6. 支持保留文件屬性不改變,支持排除指定文件

Rsync數據備份架構

 Rsync經常使用參數

-v  顯示過程
-z  壓縮方式傳輸
-a  歸檔模式,等於-rtopgDL
-r  目錄遞歸
-t  保持時間信息
-o  保持全部者
-p  保持權限
-g  保持所屬組
-P 顯示過程以及斷點續傳 -D 保持設備文件信息 -L 保持軟鏈接 -e 使用的信道協議 --exclude 指定排除文件 --bwlimit 限速 --delete 無差異同步

 本地傳輸

rsync -avz /etc/hosts /tmp/

#區別:/tmp 和 /tmp/ ,前者傳目錄自己和文件,後者只傳目錄下的文件
[root@backup ~]# rsync -avz /tmp /mnt/
[root@backup ~]# ls /mnt
Tmp
[root@backup ~]# rsync -avz /tmp/ /mnt/
[root@backup ~]# ls /mnt
hosts

 經過遠程shell通道傳輸

rsync -avz /etc/hosts -e "ssh -p 22" root@172.16.1.31:/mnt

 經過守護進程進行傳輸

rpm -qa | grep rsync

vim /etc/rsyncd.conf

uid = rsync                         #客戶端進行數據傳輸時所使用的用戶
gid = rsync                         #客戶端進行數據傳輸時所使用的用戶組
user chroot = no                    #安全相關
max connections = 200               #最大鏈接數
timeout = 300                       #超時時間,客戶端鏈接後300s不傳輸自動斷開
pid file = /var/run/rsyncd.pid      #進程號文件
lock file = /var/run/rsync.lock     #鎖文件
log file = /var/log/rsyncd.log      #日誌文件  
ignore errors                       #忽略錯誤
read only = false                   #可寫
list = false                        #客戶端不能ls等進行列表
hosts allow = 172.16.1.0/24         #容許鏈接的主機
#hosts deny = 0.0.0.0/32            #拒絕的主機
auth users = rsync_backup           #客戶端登陸帳號名
secrets file = /etc/rsync.password  #密碼文件,用於驗證
[backup]                            #模塊名稱
path = /backup/                     #提供訪問的目錄

useradd rsync -s /sbin/nologin –M
mkdir /backup
chown rsync.rsync /backup
vim /etc/rsync.password

rsync_backup:peterwang

chmod 600 /etc/rsync.password
rsync --daemon
ps -ef | grep rsync | grep -v grep
lsof -i :873
echo "/usr/bin/rsync --daemon" >> /etc/rc.local 

 客戶端配置

mkdir /backup
vim /etc/rsync.password

peterwang

chmod 600 /etc/rsync.password

 傳輸測試

cd /backup/
touch stu{001..100}
rsync -avz /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
rsync -avz rsync_backup@172.16.1.41::backup/ /backup/ --password-file=/etc/rsync.password
相關文章
相關標籤/搜索