linux營運、架構之路-rsync,linux-rsync

來源:互聯網
上載者:User

linux營運、架構之路-rsync,linux-rsync

1 、rsync介紹

rsync是實現全量及增量的本地或遠端資料鏡像同步備份的工具

 

rsync常用命令參數
命令參數                    參數說明-a (--archive)            歸檔模式,表示以遞迴方式傳輸檔案,並保持所有檔案屬性,等於rtopgDl-v (--verbose)            顯示輸出過程,傳輸時的進度等資訊-z (--compress)            傳輸時進行壓縮以提高傳輸效率--exclude=/etc/hosts    指定排除不需要傳輸的檔案資訊(和tar參數一樣)--exclude-from=file    檔案名稱所在的目錄檔案,可以實現排除多個檔案(和                                tar參數一樣)--bwlimit=PATE            limit I/O bandwidth;KBytes per second                                limit socket I/O bandwidth限速功能--delete                    讓目標目錄和來源目錄資料一致,無差異同步資料

 

2、rsync特性

①支援拷貝特殊檔案如軟連結,裝置等

②排除指定檔案或目錄同步的功能,相當於打包命令tar排除功能

③ 保持原檔案或目錄的許可權、時間、永久連結、屬主、組等屬性不改變

④實現增量同步處理,只同步發生變化的資料,傳輸效率高

⑤可以使用rcp,rsh,ssh等方式來配合傳輸檔案

⑥可以通過socket(進程方式)傳輸檔案和資料

⑦支援匿名的認證進程模式傳輸,實現方便安全資料備份

3、rsync應用工作情境

①利用定時任務+rsync實現定時同步資料,主要同步的資料資訊是網站內部人員使用的

②利用即時同步軟體+rsync實現即時同步資料,主要同步的資料資訊是網站使用者上傳的資料資訊

4、rsync資料轉送方式

①主機本地之間的資料轉送(此時類似於cp命令的功能)

② 藉助rcp,ssh等通道來傳輸資料(此時類似於scp命令的功能)

③以守護進程(socket)的方式傳輸資料(這個是rsync自身的重要的功能),重點掌握

5、rsync守護進程——服務端配置

1、查看系統是否安裝rsync軟體

rpm -qa rsyncrsync-3.0.6-12.el6.x86_64

2、rsync多模組主設定檔

cat >/etc/rsyncd.conf<<EOF#rsync server##created by yanxinjiang 2017-8-1##rsyncd.conf start##uid = rsyncgid = rsyncuse chroot = nomax connections = 200timeout = 300pid file = /var/run/rsyncd.pidlock file = /var/run/rsync.locklog file = /var/log/rsyncd.logignore errorsread only = falselist = falsehosts allow = 172.16.1.0/24hosts deny = 0.0.0.0/32auth users = rsync_backupsecrets file = /etc/rsync.password[backup]path = /backup[nfsbackup]path = /nfsbackupEOF

3、建立備份目錄及授權系統管理使用者

mkdir /backup -pchown -R rsync.rsync /backup/useradd rsync -s /sbin/nologin -M

4、建立rsync服務端與用戶端身份認證檔案

echo "rsync_backup:123456" >/etc/rsync.passwordchmod 600 /etc/rsync.password

5、啟動rsync服務

[root@backup ~]# rsync --daemon[root@backup ~]# lsof -i:873COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAMErsync   31209 root    3u  IPv4 7505812      0t0  TCP *:rsync (LISTEN)rsync   31209 root    5u  IPv6 7505813      0t0  TCP *:rsync (LISTEN)
6、rsync 守護進程——用戶端配置

1、建立用戶端身份認證檔案並授權

[root@nfs01 ~]# echo "123456" >/etc/rsync.password[root@nfs01 ~]# chmod 600 /etc/rsync.password

2、用戶端測試rsync服務

[root@nfs01 ~]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.passwordsending incremental file listsent 26 bytes  received 8 bytes  3.24 bytes/sectotal size is 314  speedup is 9.24

3、rsync無差異資料同步

用戶端推送
[root@nfs01 data]# ls /data/a b c d e f g pull.txt[root@nfs01 data]# rsync -avz /data --delete rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.passwordsending incremental file listdata/data/adata/bdata/c

  服務端檢查

[root@backup backup]# ls /backup/data/

a  b  c  d  e  f  g  pull.txt

3、用戶端推送遇到的問題

錯誤1[root@nfs01 ~]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backupPassword: @ERROR: auth failed on module backuprsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]錯誤2[root@nfs01 tmp]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::/backupERROR: The remote path must start with a module name not a /rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]錯誤3[root@nfs01 tmp]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup@ERROR: Unknown module 'backup'rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]錯誤4[root@nfs01 tmp]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backupPassword: sending incremental file listhostsrsync: mkstemp ".hosts.5z3AOA" (in backup) failed: Permission denied (13)

4、錯誤總結

①密碼輸入錯誤,虛擬使用者名稱錯誤

②secrets file = /etc/rsync.password指定的密碼檔案和實際密碼檔案名稱不一致

③/etc/rsync.password檔案許可權不是600

④rsync_backup:123456密碼設定檔後面注意不要有空格

⑤rsync用戶端密碼檔案中只輸入密碼資訊即可,不要輸入虛擬認證使用者名稱稱

⑥推送時雙冒號後面為模組名backup,而不是路徑/backup

⑦telnet串連rsync服務ip地址873連接埠,查看服務是否啟動 telnet 172.16.1.41 873

⑧共用目錄的屬主和屬組不正確,不是rsync;共用目錄的許可權不正確,不是755

7、rsync用戶端訪問服務端原理

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.