rsync備份服務配置

一.rsync概念

rsync:開源,快速,多功能,實現全量和增量的本地或遠程數據同步
全量備份:本地所有數據進行傳輸複製,無論對端是否存在此數據,效率低,速度慢
增量備份:只備份傳輸新增數據到對端,效率高,速度快

二.rsync軟件命令(scp/cp/rm/ls)

(1)rsync===scp 傳輸數據
遠程傳輸文件:
例:
[root@backup /]#scp -rp /oldboy/test01 172.16.1.31:/tmp
[root@backup /]#rsync -rp /oldboy/test02 172.16.1.31:/tmp
遠程傳輸目錄:
例:
[root@backup /]#rsync -rp /oldboy 172.16.1.31:/tmp
[root@backup /]#rsync -rp /oldboy/ 172.16.1.31:/tmp
[root@backup /]#scp -rp /oldboy/ 172.16.1.31:/tmp
注:
如果傳輸目錄時/oldboy_dir/表示將目錄下面的數據內容進行傳輸
如果傳輸目錄時/oldboy_dir表示將目錄本身及目錄下內容傳輸
(2)rsync===cp複製傳輸
例:[root@backup /]#rsync -a /oldboy/test02 172.16.1.31:/tmp 複製傳輸目錄文件
(3)rsync===rm
例:[root@backup /]#rsync -r --delete /oldboy/ 172.16.1.31:/tmp 遞歸刪除目錄
(4)rsync===ls
例:[root@backup /oldboy]#rsync /oldboys

三.rsync實現增量同步原理說明

“quick check”,實現增量複製傳輸數據
centos5 rsync爲2.X版本算法,先比對完再傳輸
centos6 rsync爲3.X版本算法,一邊比對,一邊傳輸,效率較高

四.軟件服務特點(7點)

1.實現排除同步數據
2.加密傳輸數據(藉助加密ssh協議)
3.數據傳輸認證機制
4.socket守護進程方式,傳輸數據
5.保持數據傳輸屬性信息不變
6.傳輸普通/特殊文件(連接文件,設備文件)
7.支持數據增量傳輸

五.rsync服務工作方式(3種)

(1)實現本地數據傳輸備份
[root@backup /]#rsync -a /oldboy/test02 172.16.1.31:/tmp
(2)實現ssh遠程數據傳輸備份
rsync -avz -e "ssh -p22" /home/oldboy/oldboy_test.txt 172.16.1.41:/backup
(3)實現socket守護進程數據傳輸
rsync -avz /oldgirl/5.txt [email protected]::backup

六.守護進程傳輸部署

服務端:

(1)檢查rsync軟件是否存在
rpm -qa | grep rsync 查看是否存在
yum -y install rsync 安裝軟件
(2)配置rsync軟件文件(/etc/rsyncd.conf)
配置文件:/etc/rsyncd.conf(默認不存在,自行編寫)
vim /etc/rsyncd.conf 編輯配置文件

rsync備份服務配置

文本:

#rsync_config
#created by LP at 2018
##rsyncd.conf start##

uid = rsync
gid = rsync

use chroot = no
max connections = 200
timeout = 300
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
hosts allow = 172.16.1.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password

[backup]
comment = "backup dir by oldboy"
path = /backup

(3)創建備份目錄管理用戶
useradd -s /sbin/nologin -M rsync 創建程序(虛擬)用戶
id rsync 查看用戶信息
(4)創建認證用戶密碼文件
echo “rsync:123456” > /etc/rsync.password 設置用戶密碼文件
chomd 600 /etc/rsync.password 設置配置文件權限爲只讀
(5)創建備份目錄
mkdir /backup
chown -R rsync:rsync /backup/ 將所創目錄屬組設爲認證用戶
(6)啓動rsync服務(端口:873)
rsync --daemon 啓動守護進程

客戶端配置:
(1)客戶端驗證
rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup 傳輸數據到客戶端

七.客戶端部署免密鑰傳輸數據流程(--password-file)

(1)創建密碼文件,並進行修改權限爲600
echo "123456" >>/etc/rsync.password
chmod 600 /etc/rsync.password
(2)進行免交互傳輸數據測試
rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

八.rsync參數選項

1.-avz
-v 表示:顯示詳細信息
-z 表示:傳輸是進行壓縮提高傳輸效率
-a(rtpP) 表示:遞歸傳輸數據,保持文件屬性
2.-rp
-r 表示:表遞歸傳輸
-p 表示:保持權限不變
3.-t
-t 表示:保持時間信息
4.-P
-P 表示:顯示同步過程及傳輸進度信息
5.-e
-e 表示:信道協議-----ssh
例:
rsync -avz -e "ssh -p22" /home/oldboy/oldboy_test.txt 172.16.1.41:/backup
ssh遠程登錄傳輸數據
6.--delete
--delete 表示:無差異同步數據(本地和rsync服務端數據同步)
例:rsync --delete -avz /home/oldboy/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
7.--exclude
--exclude 參數指定排除的文件或目錄信息
例:rsync -avz /oldboy_dir/ --exclude=a --exclude=b --exclude=d/2 rsync_backup@172.16.1.41::backup--password-file=/etc/rsync.password
8.--exclude-from
--exclude-from 參數指定排除多個數據信息文件
例:rsync -avz /oldboy_dir/ --exclude-from=/oldboy_dir/exclude.txt [email protected]::backup--password-file=/etc/rsync.password

九. rsync服務擴展

1.rsync服務特殊啓動方法--------------xinetd”大管家,超級守護進程”

方式一:利用xinetd啓動rsync服務
步驟:
(1)確認是否安裝了xinetd (rpm -qa | grep xinetd)
(2)yum -y install xinetd 安裝xinetd軟件
(3)配置xinetd文件,讓rsync服務允許被超級守護管理
vim /etc/xinetd.d/rsync

rsync備份服務配置

(4)確保rsync服務是關閉的 killall rsync
(5)啓動xinetd服務 /etc/init.d/xinetd start
(6)查看rsync服務是否存在即可

方式二:讓rsync守護進程開機自啓動
echo "rsync --daemon" >>/etc/rc.local

2. rsync多模塊配置
方式一(單用戶多模塊):
(1)編輯配置文件
vim /etc/rsyncd.conf
[backup]
comment = "backup dir by oldboy"
path = /backup
[devbackup]
comment = "backup dir by oldboy"
path = /devbackup
[sabackup]
comment = "backup dir by oldboy"
path = /sabackup
(2)設置目錄屬主/屬組
mkdir /{backup,devbackup,sabackup}/ -p
chown -R rsync.rsync /{backup,devbackup,sabackup}/
(3)重啓rsync服務
killall rsync && rsync --daemon
/etc/init.d/xinetd restart
(4)客戶端測試

方式二(多用戶多模塊):
(1)生成3個備份目錄管理用戶
useradd -s /sbin/nologin -M rsync
useradd -s /sbin/nologin -M sa
useradd -s /sbin/nologin -M dev
(2)編寫修改rsync配置文件
[backup]
uid = rsync
gid = rsync
comment = "backup dir by oldboy"
path = /backup
[devbackup]
uid = dev
gid = dev
comment = "backup dir by oldboy"
path = /devbackup
[sabackup]
uid = sa
gid = sa
comment = "backup dir by oldboy"
path = /sabackup
(3)對備份目錄進行分別授權
chown -R rsync.rsync /backup/
chown -R sa.sa /sabackup/
chown -R dev.dev /devbackup/
(4)重啓服務
killall rsync && rsync --daemon

3.黑白名單訪問策略
(1)只有白名單,沒有黑名單,只按白名單執行,默認規則是阻止
(2)沒有白名單,只有黑名單,按黑名單執行,默認規則是允許
(3)默認規則允許,白名單優於黑名單
4.守護進程無差異同步配置
--delete 實現無差異同步數據傳輸
5.守護進程列表功能配置(list= )
list=true(可以讓rsync客戶查看到rsync服務端所有的模塊信息)
list=false(不可以讓rsync客戶查看到rsync服務端所有的模塊信息)
查看命令:rsync [email protected]::
建議爲false,安全

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章