Linux日常運維--rsync同步工具小總結(jié)
作者:波波說運維
在對rsync服務器配置結(jié)束以后,下一步就需要在客戶端發(fā)出rsync命令來實現(xiàn)將服務器端的文件備份到客戶端來。rsync是一個功能非常強大的工具,其命令也有很多功能特色選項。
在對rsync服務器配置結(jié)束以后,下一步就需要在客戶端發(fā)出rsync命令來實現(xiàn)將服務器端的文件備份到客戶端來。rsync是一個功能非常強大的工具,其命令也有很多功能特色選項。
1. rsync特性
- 支持拷貝特殊文件如鏈接文件、設備等
- 可以有排除指定文件或目錄同步的功能,相當于tar的排除功能
- 可以做到保持原文件或目錄的權(quán)限、時間、軟硬鏈接、屬主、組等所有屬性均不改變-p
- 可以實現(xiàn)增量同步,即指同步發(fā)生變化的數(shù)據(jù),因此數(shù)據(jù)傳輸效率很高,tar -N
- 可以使用rcp,rsh,ssh等方式來配合傳輸文件(rsync本身不對數(shù)據(jù)加密)
- 可以通過socket(進程方式)傳輸文件和數(shù)據(jù)(服務端和客戶端)*****。
- 支持匿名的或認證(無須系統(tǒng)用戶)的進程模式傳輸,可實現(xiàn)方便安全的進行數(shù)據(jù)備份及鏡像
2. Rsync的命令格式可以為以下六種:
- rsync [OPTION]... SRC DEST
- rsync [OPTION]... SRC [USER@]HOST:DEST
- rsync [OPTION]... [USER@]HOST:SRC DEST
- rsync [OPTION]... [USER@]HOST::SRC DEST
- rsync [OPTION]... SRC [USER@]HOST::DEST
- rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
對應于以上六種命令格式,rsync有六種不同的工作模式:
- 拷貝本地文件。當SRC和DES路徑信息都不包含有單個冒號”:”分隔符時就啟動這種工作模式。如:rsync -a /data /backup
- 使用一個遠程shell程序(如rsh、ssh)來實現(xiàn)將本地機器的內(nèi)容拷貝到遠程機器。當DST路徑地址包含單個冒號”:”分隔符時啟動該模式。如:rsync -avz *.c foo:src
- 使用一個遠程shell程序(如rsh、ssh)來實現(xiàn)將遠程機器的內(nèi)容拷貝到本地機器。當SRC地址路徑包含單個冒號”:”分隔符時啟動該模式。如:rsync -avz foo:src/bar /data
- 從遠程rsync服務器中拷貝文件到本地機。當SRC路徑信息包含”::”分隔符時啟動該模式。如:rsync -av root@172.16.78.192::www /databack
- 從本地機器拷貝文件到遠程rsync服務器中。當DST路徑信息包含”::”分隔符時啟動該模式。如:rsync -av /databack root@172.16.78.192::www
- 列遠程機的文件列表。這類似于rsync傳輸,不過只要在命令中省略掉本地機信息即可。如:rsync -v rsync://172.16.78.192/www
3. rsync三種模式
- 1、Local: rsync [OPTION...] SRC... [DEST]
- 2、Access via remote shell:
- Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
- Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
- 3、Access via rsync daemon:
- Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
- rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
- Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
- rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
4. rsync 常用參數(shù)選項
5. 服務端配置文件
- [root@localhost /]# cat /usr/local/rsync/rsyncd.conf
- uid = root
- gid = root
- use chroot = no
- max connections = 5
- strict modes = yes
- port = 8888
- pid file = /var/run/rsyncd.pid
- lock file = /var/run/rsync.lock
- log file = /var/log/rsyncd.log
- [backup]
- path = /tmp/test/
- comment = This is a test
- ignore errors
- read only = false
- list = no
- #hosts allow = 0.0.0.0
- auth users = rsync
- secrets file =/etc/rsyncd/rsyncd.secrets
- [root@localhost /]# cat /etc/rsyncd/rsyncd.secrets
- rsync:fswl1234
6. 從linux備份到win本地
從linux的/rsyncbak目錄到windows的D:\rsyncbak
- cd C:\Program Files\cwRsync\bin\
- rsync --port=8888 -vzrtopg --progress --timeout 600 --delete rsync@172.16.5.215::backup /cygdrive/d/rsyncbak
記得授權(quán)
7. 從win本地傳輸?shù)絣inux
從windows的D:\rsyncbak傳linux的/rsyncbak
- cd C:\Program Files\cwRsync\bin\
- rsync --port=8888 -vzrtopg --progress --timeout 600 --delete /cygdrive/d/rsyncbak rsync@172.16.5.215::backup
責任編輯:趙寧寧
來源:
今日頭條