久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

CentOS/使用rsync同步

來自站長百科
Jiaomh討論 | 貢獻2011年2月1日 (二) 16:44的版本
(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉至: 導航、? 搜索

CentOS | CentOS安裝 | CentOS使用手冊

rsync簡介[ ]

rsync(rem ote synchronize)是一個遠程數(shù)據(jù)同步工具,可通過 LAN/WAN 快速同步多臺主機之間的文件。也可以使用 rsync 同步本地硬盤中的不同目錄。

rsync是用于替代rcp的一個工具,rsync 使用所謂的 rsync算法進行數(shù)據(jù)同步,這種算法只傳送兩個文件的不同部分,而不是每次都整份傳送,因此速度非??臁?

rsync支持大多數(shù)的類 Unix 系統(tǒng),無論是 LinuxSolaris 還是 BSD上 都經(jīng)過了良好的測試。 CentOS系統(tǒng)默認就安裝了rsync軟件包。 此外,在windows平臺下也有相應的版本,如cwrsync

rsync特點[ ]

rsync 具有如下的基本特性:

  • 可以鏡像保存整個目錄樹和文件系統(tǒng)
  • 可以很容易做到保持原來文件的權限、時間、軟硬鏈接
  • 無須特殊權限即可安裝
  • 優(yōu)化的流程,文件傳輸效率高
  • 可以使用 rsh、ssh 方式來傳輸文件,當然也可以通過直接的 socket 連接
  • 支持匿名傳輸,以方便進行網(wǎng)站鏡象

在使用 rsync 進行遠程同步時,可以使用兩種方式:遠程Shell方式(建議使用 ssh,用戶驗證由 ssh 負責)和C/S方式(即客戶連接遠程 rsync 服務器,用戶驗證由 rsync 服務器負責)。

無論本地同步目錄還是遠程同步數(shù)據(jù),首次運行時將會把全部文件拷貝一次,以后再運行時將只拷貝有變化的文件(對于新文件)或文件的變化部分(對于原有文件)。rsync 在首次復制時沒有速度優(yōu)勢,速度不如 tar,因此當數(shù)據(jù)量很大時您可以考慮先使用 tar 進行首次復制,然后再使用 rsync 進行數(shù)據(jù)同步。

鏡像、備份和歸檔[ ]

實施備份的兩種情況:

  • 需保留備份歷史歸檔:在備份時保留歷史的備份歸檔,是為了在系統(tǒng)出現(xiàn)錯誤后能恢復到從前正確的狀態(tài)。這可以使用完全備份增量備份來完成。
    • 可以使用 tar 命令保存歸檔文件。
    • 為了提高備份效率,也可以使用 rsync 結合 tar 來完成。
  • 無需保留備份歷史歸檔:若無需從歷史備份恢復到正確狀態(tài),則只備份系統(tǒng)最“新鮮”的狀態(tài)即可。這可以簡單地使用 rsync 同步來完成。此時通常稱為鏡像。鏡像可以分為兩種:
    • 被鏡像的目錄在各個主機上保持相同的位置。此時一般是為了實施負載均衡而對多個主機進行同步鏡像。例如:將主機A的/srv/www 目錄同步到主機B的/srv/www目錄等。
    • 被鏡像的目錄在各個主機上不保持相同的位置。例如:主機 A 和主機 B 都運行著各自的業(yè)務,同時又互為鏡像備份。此時主機A的/srv/www目錄同步到主機B的/back ups/hosta/www 目錄;主機B的/srv/www目錄同步到主機A的/back ups/hostb/www 目錄等。

rsync命令[ ]

rsync是一個功能非常強大的工具,其命令也有很多功能選項。rsync的命令格式為:

1)本地使用:
rsync [OPTION...] SRC... [DEST]
2)通過遠程 Shell 使用:
拉: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
推: rsync [OPTION...] SRC... [USER@]HOST:DEST
3)訪問 rsync 服務器:
拉: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
推: rsync [OPTION...] SRC... [USER@]HOST::DEST
拉: rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
推: rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

其中:

  • SRC: 是要復制的源位置
  • DEST: 是復制目標位置
  • 若本地登錄用戶與遠程主機上的用戶一致,可以省略 USER@
  • 使用遠程 shell 同步時,主機名與資源之間使用單個冒號“:”作為分隔符
  • 使用 rsync 服務器同步時,主機名與資源之間使用兩個冒號“::”作為分隔符
  • 當訪問 rsync 服務器時也可以使用 rsync://URL
  • “拉”復制是指從遠程主機復制文件到本地主機
  • “推”復制是指從本地主機復制文件到遠程主機
  • 當進行“拉”復制時,若指定一個 SRC 且省略 DEST,則只列出資源而不進行復制

下面列出常用選項:

選項 說明
-a,--archive 歸檔模式,表示以遞歸方式傳輸文件,并保持所有文件屬性,等價于 -rlptgoD (注意不包括 -H)
-r,--recursive 對子目錄以遞歸模式處理
-l,--links 保持符號鏈接文件
-H,--hard-links 保持硬鏈接文件
-p,--perms 保持文件權限
-t,--times 保持文件時間信息
-g,--group 保持文件屬組信息
-o,--owner 保持文件屬主信息 (super-user only)
-D 保持設備文件和特殊文件 (super-user only)
-z,--compress 在傳輸文件時進行壓縮處理
--exclude=PATTERN 指定排除一個不需要傳輸?shù)奈募ヅ淠J?
--exclude-from=FILE 從FILE中讀取排除規(guī)則
--include=PATTERN 指定需要傳輸?shù)奈募ヅ淠J?
--include-from=FILE 從FILE中讀取包含規(guī)則
--copy-unsafe-links 拷貝指向SRC路徑目錄樹以外的鏈接文件
--safe-links 忽略指向SRC路徑目錄樹以外的鏈接文件(默認)
--existing 僅僅更新那些已經(jīng)存在于接收端的文件,而不備份那些新創(chuàng)建的文件
--ignore-existing 忽略那些已經(jīng)存在于接收端的文件,僅備份那些新創(chuàng)建的文件
-b,--backup 當有變化時,對目標目錄中的舊版文件進行備份
--backup-dir=DIR 與-b結合使用,將備份的文件存到 DIR 目錄中
--link-dest=DIR 當文件未改變時基于 DIR 創(chuàng)建硬鏈接文件
--delete 刪除那些接收端還有而發(fā)送端已經(jīng)不存在的文件
--delete-before 接收者在傳輸之前進行刪除操作 (默認)
--delete-during 接收者在傳輸過程中進行刪除操作
--delete-after 接收者在傳輸之后進行刪除操作
--delete-excluded 在接收方同時刪除被排除的文件
-e,--rsh=COMMAND 指定替代 rsh 的 shell 程序
--ignore-errors 即使出現(xiàn) I/O 錯誤也進行刪除
--partial 保留那些因故沒有完全傳輸?shù)奈募?,以是加快隨后的再次傳輸
--progress 在傳輸時顯示傳輸過程
-P 等價于--partial--progress
--delay-updates 將正在更新的文件先保存到一個臨時目錄(默認為 “.~tmp~”),待傳輸完畢再更新目標文件
-v,--verbose 詳細輸出模式
-q,--quiet 精簡輸出模式
-h,--human-readable 輸出文件大小使用易讀的單位(如,K,M等)
-n,--dry-run 顯示哪些文件將被傳輸
--list-only 僅僅列出文件而不進行復制
--rsync-path=PROGRAM 指定遠程服務器上的 rsync 命令所在路徑
--password-file=FILE 從 FILE 中讀取口令,以避免在終端上輸入口令,通常在 cron 中連接 rsync 服務器時使用
-4,--ipv4 使用 IPv4
-6,--ipv6 使用 IPv6
--version 打印版本信息
--help 顯示幫助信息

若使用普通用戶身份運行rsync命令,同步后的文件的屬主將改變?yōu)檫@個普通用戶身份。

若使用超級用戶身份運行rsync命令,同步后的文件的屬主將保持原來的用戶身份。

rsync的基本使用[ ]

在本地磁盤同步數(shù)據(jù)[ ]

# rsync -a --delete /home /backups
# rsync -a --delete /home/ /backups/home.0

在指定復制源時,路徑是否有最后的 “/” 有不同的含義,例如:

  • /home: 表示將整個 /home 目錄復制到目標目錄
  • /home/:表示將 /home 目錄中的所有內(nèi)容復制到目標目錄

使用基于ssh的rsync遠程同步數(shù)據(jù)[ ]

1、同步靜態(tài)主機表文件

# 執(zhí)行“推”復制同步(centos5 是可解析的遠程主機名)
[root@soho ~]# rsync /etc/hosts centos5:/etc/hosts
# 執(zhí)行“拉”復制同步(soho 是可解析的遠程主機名)
[root@centos5 ~]# rsync soho:/etc/hosts /etc/hosts

2、同步用戶的環(huán)境文件

# 執(zhí)行“推”復制同步
[osmond@soho ~]$ rsync ~/.bash* centos5:
# 執(zhí)行“拉”復制同步
[osmond@cnetos5 ~]$ rsync soho:~/.bash* .

3、同步站點根目錄

# 執(zhí)行“推”復制同步
[osmond@soho ~]$ rsync -avz --delete /var/www root@192.168.0.101:/var/www
# 執(zhí)行“拉”復制同步
[osmond@cnetos5 ~]$ rsync -avz --delete root@192.168.0.55:/var/www /var/www
  • 使用基于 ssh 的 rsync 同步數(shù)據(jù)可以使用 -essh 參數(shù),當前的 CentOS 默認指定使用 ssh 作為遠程 Shell。若您在其他系統(tǒng)上執(zhí)行 rsync 命令,為確保使用 ssh 作為遠程 Shell,請?zhí)砑?-essh 參數(shù)。
  • 通常 rsync 命令在后臺以 cron 任務形式執(zhí)行,為了避免從終端上輸入口令需要設置 ssh。ssh 的設置方法請參考安全登錄守護進程。

使用--exclude/--include選項[ ]

可以使用--exclude 選項排除源目錄中要傳輸?shù)奈募?;同樣地,也可以使?-include 選項指定要傳輸?shù)奈募?

例如:下面的 rsync 命令將 192.168.0.101 主機上的 /www 目錄(不包含 /www/logs 和 /www/conf 子目錄)復制到本地的/back up/www/ 。

# rsync -vzrtopg --delete --exclude "logs/" --exclude "conf/" --progress \
backup@192.168.0.101:/www/ /backup/www/

又如:下面的rsync命令僅復制目錄結構而忽略掉目錄中的文件。

# rsync -av --include '*/' --exclude '*' \
backup@192.168.0.101:/www/ /backup/www-tree/

選項--include 和--exclude 都不能使用間隔符。例如:

--exclude "logs/" --exclude "conf/"

不能寫成

--exclude "logs/ conf/"

參考來源[ ]

http://www.centospub.com/bbs/forumdisplay.php?fid=10

CentOS使用手冊導航

CentOS安裝

CentOS安裝 | 系統(tǒng)安裝后的初始環(huán)境設置 | 服務器方式安裝CentOS 5

CentOS使用手冊

使用RPM管理包 | 使用YUM工具更新系統(tǒng) | 使用rsync服務 | 使用rsync同步 | 使用tar備份 | 使用tar恢復文件 | Samba 服務器的構建 | 用SWAT讓Samba服務器的管理溫和化 | SMTP服務器的構建 | POP/IMAP服務器的構建 | 病毒查殺系統(tǒng)的構建 | 入侵監(jiān)測系統(tǒng)的構建 | 用OpenSSH構建SSH服務器 | 用SSH客戶端軟件登錄到服務器 | 讓服務器支持安全HTTP協(xié)議 | 開放一般用戶的網(wǎng)頁發(fā)布權限 | 虛擬主機的構建 | Servlet/JSP服務器的構建 | 基于日志的站點統(tǒng)計系統(tǒng)的構建 | 構建MySQL數(shù)據(jù)庫服務器 | 用phpMyAdmin讓MySQL數(shù)據(jù)庫管理溫和化 | 數(shù)據(jù)庫的自動備份與恢復 | 用ProFTPD構建FTP服務器 | 用FTP客戶端軟件連接到服務器