Rsync 執行參數說明

由 Derek 發表於 十月 6, 2011 / 尚無評論

 

參數說明 :


 -h  --help                  show this help (-h works with no other options)

 -v, --verbose               列出rsync過程 詳細內容

 -q, --quiet                 不列出rsync過程 詳細內容

 -c, --checksum              skip based on checksum, not mod-time & size

 -a, --archive               archive mode 權限保存模式,相當於-rlptgoD 參數(no -H)

     --no-OPTION             turn off an implied OPTION (e.g. --no-D)

 -r, --recursive             複製所有下層的資料(遞迴)

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

     --no-implied-dirs       don't send implied dirs with --relative

 

 -b, --backup                目的端已經存在的檔案在傳輸或刪除前會被備份 

                             (see --suffix & --backup-dir)

     --backup-dir=DIR        DIR設定為備份的資料夾路徑

     --suffix=SUFFIX         suffix設定備份檔案名稱字尾,預設為 ~

 

 -u, --update                skip files that are newer on the receiver

     --inplace               update destination files in-place (SEE MAN PAGE)

     --append                append data onto shorter files

 -d, --dirs                  transfer directories without recursing

 -l, --links                 複製所有的連結

 -L, --copy-links            transform symlink into referent file/dir

     --copy-unsafe-links     only "unsafe" symlinks are transformed

     --safe-links            ignore symlinks that point outside the source tree

 -k, --copy-dirlinks         transform symlink to a dir into referent dir

 -K, --keep-dirlinks         把連結到資料夾的檔案當成資料夾處理

 -H, --hard-links            保留硬式連結

 -p, --perms                 保留檔案權限

 -E, --executability         保留文件的可執行性

 -A, --acls                  保留 ACLs (implies --perms)

 -X, --xattrs                preserve extended attributes (implies --perms)

     --chmod=CHMOD           改變目的地的權限

 -o, --owner                 保留檔按擁有者 (super-user only)

 -g, --group                 保留檔按群組

     --devices               preserve device files (super-user only)

     --specials              preserve special files

 -D                          保留device資訊

 -t, --times                 保留時間點

 -O, --omit-dir-times        保留時間點 省略目錄

     --super                 receiver attempts super-user activities

 -S, --sparse                嘗試處理零星檔案,讓這些檔案在目的端佔去較少磁碟空間

 -n, --dry-run               不實際執行傳送,只顯示將會有的傳輸動作

 -W, --whole-file            複製整個文件 (without rsync algorithm)

 -x, --one-file-system       不要跨越檔案系統分界(只在一個檔案系統處理)

 -B, --block-size=SIZE       強制透過rsync程式去比對修復block-sizeforce

 -e, --rsh=COMMAND           使用指定的 shell

     --rsync-path=PROGRAM    定義rsync在遠端機器存放資料的路徑

     --existing              只比對更新目的端已經存在的檔案

     --ignore-existing       忽略目的端已經存在的檔案(也就是不更新)

     --remove-sent-files     sent files/symlinks are removed from sending side

     --del                   an alias for --delete-during

 

     #rsync預設會在檔案傳送前進行相關刪除動作確保接收端有足夠的檔案空間

     但可透過以下方式設定。

     --delete                刪除傳送端已經不存在,而目的端存在的檔案

     --delete-before         在傳輸之前先刪除。 (default)

     --delete-during         在傳輸過程中刪除,而不是接收後再刪除

     --delete-after          在傳輸完成後刪除,而不是傳輸之前刪除

     --delete-excluded       除了把傳送端已經不存在,而目的端存在的檔案刪除之外,

                             也刪除--exclude 參數所包含的檔案

 

     --ignore-errors         忽略任何錯誤即使I/O error也進行--delete 刪除動作

     --force                 當目的端資料夾被傳送端非資料夾名稱覆蓋時,強制rsync

                                                   刪除資料夾,即使該資料夾不是空的    

--max-delete=NUM        定義rsync不要刪除超過 NUM 個檔案.

     --max-size=SIZE         限制檔案傳輸的最大上限

     --min-size=SIZE         限制檔案傳輸的最小限制

     --partial               rsync遇到傳輸過程中斷時,會把已經傳輸的檔案刪除

     --partial-dir=DIR        --partial 參數啟動時,還可以定義rsync把那些部分傳

                             送的檔案寫入定義的資料夾,而非直接寫入目的端.需要注

                             意的是,此資料夾不應該被其他使用者可以寫入.(:/tmp)

 

     --delay-updates         在檔案傳輸結束後,把所有文件都更新

 -m, --prune-empty-dirs      prune empty directory chains from the file-list

     --numeric-ids           不將傳送端檔案的uidgid,與目的端的使用者/群組進行

                             配對.若傳送端並沒有uidgid的對應名稱(:原帳號群組

                             被刪除的遺留檔案),或目的端沒有相對應的帳號/群組,

                             留數字型態的uid/gid

 

     --timeout=TIME          設定 I/O 逾時的時間(). 超過這個秒數而沒有資料傳  

                             送,rsync將會結束.預設為0,也就是沒有定義逾時時間-I,

 

--ignore-times          不略過大小和MOD-Time相同的文件

     --size-only             略過文件大小相同的檔案

     --modify-window=NUM     compare mod-times with reduced accuracy

 -T, --temp-dir=DIR          定義rsync在接收端產生暫時性的複製檔案時使用資料夾

                             暫存.預設是直接在接收端資料夾直接產生暫存檔案

 -y, --fuzzy                 find similar file for basis if no dest file

     --compare-dest=DIR      定義rsync在目的端建立資料夾來比對傳送過來的檔案

     --copy-dest=DIR         … and include copies of unchanged files

     --link-dest=DIR          --compare-dest 相同,但同時會針對無法改變的檔案

                             建立硬式連結

 -z, --compress              壓縮模式,當資料在傳送到目的端進行檔案壓縮

     --compress-level=NUM    explicitly set compression level

 -C, --cvs-exclude           排除那些通常不希望傳送的檔案.定義的方式與CVS傳送相

                             同: RCS SCCS CVS  CVS.adm  RCSLOG  cvslog.*  tags

                             TAGS  .make.state.nse_depinfo  *~ #* .#* ,* _$* *$

                             *.old *.bak*.BAK *.orig *.rej.del-* *.a *.olb *.o

                             *.obj *.so *.exe *.Z*.elc *.ln core .svn/ 符合以上

                             條件的都會被忽略而不傳送

 

 -f, --filter=RULE           add a file-filtering RULE

 -F                          same as --filter='dir-merge /.rsync-filter'

                             repeated: --filter='- .rsync-filter'

     --exclude=PATTERN       符合PATTERN(規則表示式)樣式的檔案不進行傳送

     --exclude-from=FILE     --exclude參數相同,不過是把不進行傳送的檔案事先寫

                             入某一檔 .執行時,透過此參數讓rsync讀取.(; #開頭的

                             行列或空白行會被rsync忽略)

     --include=PATTERN       定義rsync不要排除符合pattern樣式的檔案

     --include-from=FILE     --include參數相同,只不過把要包含的檔案寫到某一檔案

     --files-from=FILE       把要傳送的檔案名稱都精確的寫入某一檔案,rsync讀取.

                             : rsync -a --files-from=/tmp/foo /usr remote:

                             /backup

 -0, --from0                 定義檔案所要讀取的檔案是null字元結尾

     --address=ADDRESS       定義所要連結(bind)ip位址或是host名稱(daemon限定)

     --port=PORT             定義rsyncd(daemon)要執行的port(預設為tcp 873)

     --sockopts=OPTIONS      specify custom TCP options

     --blocking-io           使用blocking I/O連結遠端的shell,rsh , remsh

     --stats                 顯示檔案傳送時的資訊狀態

 -8, --8-bit-output          leave high-bit chars unescaped in output

 -h, --human-readable        output numbers in a human-readable format

     --progress              顯示傳送的進度

 -P                          --partial --progress 相同.只是為了把參數簡單化

 -i, --itemize-changes       output a change-summary for all updates

     --daemon                定義rsyncdaemon型態執行.

     --log-format=FORMAT     定義log的格式(rsyncd.conf設定)

     --password-file=FILE    從檔案讀取與遠端rsync伺服器連結的密碼

     --no-detach             當以daemon型態執行時,不要進行分裂且變成背景程序.

     --config=FILE           定義所要讀取的設定檔rsyncd.conf位置(daemon限定)

                             預設值為 /usr/local/etc/rsyncd.conf

     --no-blocking-io        使用non-blocking連結遠端的shell,ssh (預設值)

     --checksum-seed=NUM     定義檔案 checksum-seed 的大小(byte)

     --list-only             list the files instead of copying them

     --bwlimit=KBPS          定義傳輸頻寬的大小(KBytes/)

     --write-batch=FILE      把紀錄資料寫入一個檔案(給其他相同環境且相同需求的

                             機器使用)

     --only-write-batch=FILE like --write-batch but w/o updating destination

     --read-batch=FILE       透過讀取紀錄檔案來進行傳輸.(檔案由 --write-batch

                                                    參數產生)

     --protocol=NUM          force an older protocol version to be used

 -4, --ipv4                  使用IPv4協定

 -6, --ipv6                  使用IPv6協定

     --version               顯示版本訊息

 

 

 

關於作者

一個半路殺出來的傻小子,憑著一股傻勁努力的學習、嘗試、分享。希望能用自己微薄之力,替IT界和資訊界盡一點心力。單憑一己之力始終還是有限,歡迎和我有相同理念的夥伴一同加入一同努力。

評論

此文章尚無評論。

發表評論

*