rsync詳細參數
1、-v,--verbose 詳細模式輸出,傳輸是的進度信息
2、-z,--compress 傳輸是進行壓縮以提高傳輸效率,--comperess -level = NUM可以按級別壓縮
3、-a,--archive 歸檔模式,表示以遞歸方式傳輸文件,並保持所有文件屬性(等於-rtopgDl)
4、-r,--recursive 對子目錄以遞歸模式,即目錄下的所有目錄都同樣輸出
5、-t,--times 保持文件時間信息
6、-o,--owner 保持文件屬性信息
7、-p,--perms 保持文件權限
8、-g,--group 保持文件屬組信息
9、-P,--progress 顯示同步的過程及傳輸時的進度等信息
10、-D,--devices 保持設備文件信息
11、-l,--links 保留軟連接
--version #查看版本信息
--bwlimit #設置限速【rsync、scp、ftp都有限速設置】
--delete #比較兩目錄保留相同的刪除不同的!(盡量少用)
***服務端***
一、配置好雙網卡,一塊負責外網通信,一塊負責內網維護
第二張網卡不需要dns等
二、檢查軟件是否安裝(rpm -aq rsync),沒有就安裝(yum install rsync),檢查版本(cat /etc/redhat - release),檢查是否安裝服務器(rpm -aq telnet)
三、創建/etc/rsyncd.conf文本,用於配置rsync屬性信息,在文本下寫入一下內容
uid = rsync #用戶主(遠端的命令要使用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 #日志文件(出錯)
[backup] #模塊名稱
path = /backup #服務器提供訪問的目錄
ignore errors #忽略錯誤
read only = false #可寫
list = false #不能列表(不能使用ls類似的功能)
hosts allow = 192.168.11.0/24 #允許那些機器鏈接
hosts deny = 0.0.0.0/32 #禁用那些機器鏈接
auth users = rsync_backup #虛擬用戶
secrets file = /etc/rsync.password #虛擬用戶對應的賬號及密碼
四、創建rsync虛擬用戶及啟動虛擬用戶
useradd rsync -s /sbin/nologin -M #創建虛擬用戶
rsync --daemon #啟用虛擬用戶
五、創建rsync的/backup/即改變它的屬主、屬組關系
mkdir /backup/ #創建目錄
chown rsync.rsync /backup/ #改變其的數主、屬組關系
六、創建rsync的密碼文件,並設置成只有root用戶才有權限
touch /etc/rsync.password #創建
echo 'rsync_backup:oldboy' >>/etc/rsync.password #寫入
chmod 600 /etc/rsync.password #修改其權限只有root能訪問
***客戶端***
一、安裝telnet服務(yum install telnet -y),及檢查服務端客戶端防火牆是否關閉(/etc/init.d/iptables stop)
二、創建密碼文本
echo 'oldboy' >/etc/rsync.password
三、進行推送服務端
1、創建/backup目錄
mkdir /backup
touch {1..10} /backup
chmod 600 /etc/rsync.password #不設置只有root用戶才能訪問的話,每次傳輸都將輸入密碼
2、推送
方法一:rsync -az /backup/ rsync_backup@192.168.11.11::backup/ --password-file=/etc/rsync.password
方法二:rsync -az /backup/ rsync://rsync_backup@192.168.11.11/backup/ --password-file=/etc/rsync.password
注:外網ip負責提供用戶訪問,內網的ip負責推送
小結:
1、提示這個表示要么是服務端/etc/rsyncd.conf文件拒絕接入該ip地址或是文件配置有誤
2、用戶端的ip地址輸入錯誤,或者是服務點未啟用rsync服務
3、用戶端的權限不夠
3、服務端/backup或用戶端/backup的文件權限配置有誤,限制為文件傳輸
4、提示:rsync: chgrp "data" (in backup) failed: Operation not permitted (1),出現這個語句是因為rsyncd.conf沒有配置fake super = yes
備注:查看進程
方法一:lsof -i :873
方法二:netstat -lntup|grep 873/rsync
關閉進程:pkill rsync
啟動虛擬用戶:rsync --daemon