国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > 管理維護 > 正文

rsync客戶端命令詳解

2024-09-10 14:19:03
字體:
供稿:網(wǎng)友

在對rsync服務器配置結束以后,下一步就需要在客戶端發(fā)出rsync命令來實現(xiàn)將服務器端的文件備份到客戶端來。rsync是一個功能非常強大的工具,其命令也有很多功能特色選項,我們下面就對它的選項一一進行分析說明。

 

首先,rsync的命令格式可以為:

 

rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST

 

rsync [OPTION]... [USER@]HOST:SRC DEST

 

rsync [OPTION]... SRC [SRC]... DEST

 

rsync [OPTION]... [USER@]HOST::SRC [DEST]

 

rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST

 

rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]

rsync有六種不同的工作模式:

 

拷貝本地文件;當SRC和DES路徑信息都不包含有單個冒號":"分隔符時就啟動這種工作模式。

 

使用一個遠程shell程序(如rsh、ssh)來實現(xiàn)將本地機器的內(nèi)容拷貝到遠程機器。當DST路徑地址包含單個冒號":"分隔符時啟動該模式。

 

使用一個遠程shell程序(如rsh、ssh)來實現(xiàn)將遠程機器的內(nèi)容拷貝到本地機器。當SRC地址路徑包含單個冒號":"分隔符時啟動該模式。

 

從遠程rsync服務器中拷貝文件到本地機。當SRC路徑信息包含"::"分隔符時啟動該模式。

 

從本地機器拷貝文件到遠程rsync服務器中。當DST路徑信息包含"::"分隔符時啟動該模式。

 

列遠程機的文件列表。這類似于rsync傳輸,不過只要在命令中省略掉本地機信息即可。

1、用法

 

在使用rsync傳輸文件時,需要指定一個源和一個目的,其中一個可能是遠程機器的資源信息。例如:

 

rsync *.c foo:src/

 

表示將傳輸當前目錄下所有以.c結尾的文件到機器foo的src目錄下。如果任何文件已經(jīng)存在于遠程系統(tǒng),則會調(diào)用遠程更新協(xié)議來實現(xiàn)僅僅傳輸那些更新過的文件。

 

rsync -avz foo:src/bar /data/tmp

 

該命令則遞歸地傳輸機器foo上的src/bar目錄下的所有內(nèi)容到本地/data/tmp/bar目錄中。文件以歸檔模式進行傳輸,以確保符號鏈結、屬性、權限、屬主等信息在傳輸中都被保存。此外,可以使用壓縮技術來加快數(shù)據(jù)傳輸:

 

rsync -avz foo:src/bar/ /data/tmp

 

路徑信息以"/"結尾時表示拷貝該目錄,而不以"/"結尾表示拷貝該目錄。當配合使用--delete選項時這兩種情況的區(qū)別將會表現(xiàn)出來。

 

也可以以本地模式來使用rsync,如果SRC和DST路徑中都沒有任何":"符號則表示該命令運行在本地模式,等同于cp命令。

 

rsync somehost.mydomain.com::

 

這種模式則將會列出somehost.mydomain.com.可以訪問的所有模塊信息。

 

選項說明

 

-v, --verbose 詳細模式輸出

-q, --quiet 精簡輸出模式

-c, --checksum 打開校驗開關,強制對文件傳輸進行校驗

-a, --archive 歸檔模式,表示以遞歸方式傳輸文件,并保持所有文件屬性,等于-rlptgoD

-r, --recursive 對子目錄以遞歸模式處理

-R, --relative 使用相對路徑信息

 

rsync foo/bar/foo.c remote:/tmp/

 

則在/tmp目錄下創(chuàng)建foo.c文件,而如果使用-R參數(shù):

 

rsync -R foo/bar/foo.c remote:/tmp/

 

則會創(chuàng)建文件/tmp/foo/bar/foo.c,也就是會保持完全路徑信息。

 

-b, --backup 創(chuàng)建備份,也就是對于目的已經(jīng)存在有同樣的文件名時,將老的文件重新命名為~filename。可以使用--suffix選項來指定不同的備份文件前綴。

--backup-dir 將備份文件(如~filename)存放在在目錄下。

-suffix=SUFFIX 定義備份文件前綴

-u, --update 僅僅進行更新,也就是跳過所有已經(jīng)存在于DST,并且文件時間晚于要備份的文件。(不覆蓋更新的文件)

-l, --links 保留軟鏈結

-L, --copy-links 想對待常規(guī)文件一樣處理軟鏈結

--copy-unsafe-links 僅僅拷貝指向SRC路徑目錄樹以外的鏈結

--safe-links 忽略指向SRC路徑目錄樹以外的鏈結

-H, --hard-links 保留硬鏈結

-p, --perms 保持文件權限

-o, --owner 保持文件屬主信息

-g, --group 保持文件屬組信息

-D, --devices 保持設備文件信息

-t, --times 保持文件時間信息

-S, --sparse 對稀疏文件進行特殊處理以節(jié)省DST的空間

-n, --dry-run現(xiàn)實哪些文件將被傳輸

-W, --whole-file 拷貝文件,不進行增量檢測

-x, --one-file-system 不要跨越文件系統(tǒng)邊界

-B, --block-size=SIZE 檢驗算法使用的塊尺寸,默認是700字節(jié)

-e, --rsh=COMMAND 指定替代rsh的shell程序

--rsync-path=PATH 指定遠程服務器上的rsync命令所在路徑信息

-C, --cvs-exclude 使用和CVS一樣的方法自動忽略文件,用來排除那些不希望傳輸?shù)奈募?/p>

--existing 僅僅更新那些已經(jīng)存在于DST的文件,而不備份那些新創(chuàng)建的文件

--delete 刪除那些DST中SRC沒有的文件

--delete-excluded 同樣刪除接收端那些被該選項指定排除的文件

--delete-after 傳輸結束以后再刪除

--ignore-errors 及時出現(xiàn)IO錯誤也進行刪除

--max-delete=NUM 最多刪除NUM個文件

--partial 保留那些因故沒有完全傳輸?shù)奈募允羌涌祀S后的再次傳輸

--force 強制刪除目錄,即使不為空

--numeric-ids 不將數(shù)字的用戶和組ID匹配為用戶名和組名

--timeout=TIME IP超時時間,單位為秒

-I, --ignore-times 不跳過那些有同樣的時間和長度的文件

--size-only 當決定是否要備份文件時,僅僅察看文件大小而不考慮文件時間

--modify-window=NUM 決定文件是否時間相同時使用的時間戳窗口,默認為0

-T --temp-dir=DIR 在DIR中創(chuàng)建臨時文件

--compare-dest=DIR 同樣比較DIR中的文件來決定是否需要備份

-P 等同于 --partial

--progress 顯示備份過程

-z, --compress 對備份的文件在傳輸時進行壓縮處理

--exclude=PATTERN 指定排除不需要傳輸?shù)奈募J?/p>

--include=PATTERN 指定不排除而需要傳輸?shù)奈募J?/p>

--exclude-from=FILE 排除FILE中指定模式的文件

--include-from=FILE 不排除FILE指定模式匹配的文件

--version 打印版本信息

--address 綁定到特定的地址

--config=FILE 指定其他的配置文件,不使用默認的rsyncd.conf文件

--port=PORT 指定其他的rsync服務端口

--blocking-io 對遠程shell使用阻塞IO

-stats 給出某些文件的傳輸狀態(tài)

--progress 在傳輸時現(xiàn)實傳輸過程

--log-format=formAT 指定日志文件格式

--password-file=FILE 從FILE中得到密碼

--bwlimit=KBPS 限制I/O帶寬,KBytes per second

-h, --help 顯示幫助信息

實例分析

這里假設有兩臺服務器:A和B。其中A是主web服務器,具有域名www.linuxaid.com.cn(202.99.11.120),B服務器是備份機,其域名為backup.linuxaid.com.cn(202.99.11.121)。其中A的web內(nèi)容存放在以下幾個地方:/www/和/home/web_user1/和/home/web_user2/。我們需要在備份機B上建立對這幾個目錄內(nèi)容的備份。

 

服務器配置實例

 

那么在www.linuxaid.com.cn上創(chuàng)建rsyncd的配置文件/etc/rsyncd.conf,內(nèi)容如下:

 

uid = nobody

gid = nobody

use chroot = no

max connections = 4

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

 

[www]

path = /www/

ignore errors

read only = true

list = false

hosts allow = 202.99.11.121

hosts deny = 0.0.0.0/32

auth users = backup

secrets file = /etc/backserver.pas

 

[web_user1]

path = /home/web_user1/

ignore errors

read only = true

list = false

hosts allow = 202.99.11.121

hosts deny = 0.0.0.0/32

uid = web_user1

gid = web_user1

auth users = backup

secrets file = /etc/backserver.pas

 

[web_user2]

path = /home/web_user2/

ignore errors

read only = true

list = false

hosts allow = 202.99.11.121

hosts deny = 0.0.0.0/32

uid = web_user2

gid = web_user2

auth users = backup

secrets file = /etc/backserver.pas

 

這里定義有四個三個模塊,分別對應于三個需要備份的目錄樹。這里只允許202.99.11.121備份本機的數(shù)據(jù),并且需要認證。三個模塊授權的備份用戶都為backup,并且用戶信息保存在文件/etc/backserver.pas中,其內(nèi)容如下:

 

backup:bk_passwd

 

并且該文件只能是root用戶可讀寫的,否則rsyncd啟動時會出錯。這些文件配置完畢以后,就需要在A服務器上啟動rsyncd服務器:

 

rsync --daemon

 

客戶命令示例

 

/usr/local/bin/rsync -vzrtopg --delete --exclude "logs/" --exclude "conf/ssl.*/" --progress backup@202.99.11.120::www /backup/www/ --password-file=/etc/rsync.pass

 

上面這個命令行中-vzrtopg里的v是verbose,z是壓縮,r是recursive,topg都是保持文件原有屬性如屬主、時間的參數(shù)。--progress是指顯示出詳細的進度情況,--delete是指如果服務器端刪除了這一文件,那么客戶端也相應把文件刪除,保持真正的一致。--exclude "logs/" 表示不對/www/logs目錄下的文件進行備份。--exclude "conf/ssl.*/"表示不對/www/conf/ssl.*/目錄下的文件進行備份。

 

backup@202.99.11.120::www 表示對該命令是對服務器202.99.11.120中的www模塊進行備份,backup表示使用backup來對該模塊進行備份。

 

--password-file=/etc/rsync.pass來指定密碼文件,這樣就可以在腳本中使用而無需交互式地輸入驗證密碼了,這里需要注意的是這份密碼文件權限屬性要設得只有root可讀。

 

這里將備份的內(nèi)容存放在備份機的/backup/www/目錄下。

 

[root@linuxaid /]# /usr/local/bin/rsync -vzrtopg --delete --exclude "logs/" --exclude "conf/ssl.*/" --progress backup@202.99.11.120::www /backup/www/ --password-file=/etc/rsync.pass

receiving file list ... done

./

1

785 (100%)

1.py

4086 (100%)

2.py

10680 (100%)

a

0 (100%)

ip

3956 (100%)

./

wrote 2900 bytes read 145499 bytes 576.34 bytes/sec

total size is 2374927 speedup is 45.34

對其它兩個模塊操作的命令分別為:

/usr/local/bin/rsync -vzrtopg --delete --progress backup@202.99.11.120::web_user1 /backup/web_user1/ --password-file=/etc/rsync.pass

/usr/local/bin/rsync -vzrtopg --delete --progress backup@202.99.11.120::web_user2 /backup/web_user2/ --password-file=/etc/rsync.pass

可以將客戶命令通過crontab -e命令來實現(xiàn)自動備份,如crontab -e:

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 江阴市| 梁平县| 襄汾县| 双峰县| 廉江市| 育儿| 江山市| 墨脱县| 德兴市| 彭州市| 祁阳县| 揭阳市| 封开县| 土默特右旗| 宁远县| 柳河县| 赤城县| 泸水县| 万载县| 景洪市| 南开区| 红安县| 社会| 西畴县| 饶阳县| 和田市| 交城县| 海阳市| 旺苍县| 清丰县| 永福县| 溧阳市| 高台县| 中方县| 交口县| 鄢陵县| 余江县| 沾益县| 洛隆县| 鹿邑县| 枣庄市|