Backup
僅在有傳輸時才使 cron log rsync
我讓這個 crontab 每 5 分鐘執行一次:
date >> ~/18/rsync.log rsync -vaz user@r18:~/assets ~/18 >> ~/18/rsync.log 2>&1
它每 5 分鐘將其添加到日誌文件中:
Thu Aug 16 13:00:01 MSK 2012 receiving incremental file list sent 506 bytes received 541488 bytes 361329.33 bytes/sec total size is 12954651209 speedup is 23901.84
有時它會添加實際的傳輸日誌:
Thu Aug 16 13:10:01 MSK 2012 receiving incremental file list assets/response/20120816/ assets/response/20120816/1017161.doc assets/response/20120816/1017162.doc assets/response/20120816/1017163.doc sent 568 bytes received 561686 bytes 1124508.00 bytes/sec total size is 12954864201 speedup is 23040.95
我想省略空的傳輸記錄並保留實際的傳輸列表。有沒有辦法將 rsync 配置為僅在非空傳輸時產生詳細輸出?
不要使用 rsync 的 -v 選項,而是使用 –out-format:
rsync --out-format="%n%L" -az user@r18:~/assets ~/18 >> ~/18/rsync.log 2>&1
只有傳輸文件時才會有輸出,不傳輸時沒有輸出。要獲得更多精美的輸出,請查看 rsync.conf 手冊頁的“日誌格式”部分。
請檢查 rsync –log-file-format 和 –log-file 開關。預設日誌文件格式即使不傳輸任何內容,也會在日誌文件中添加 2 行,但請查看手冊。如果您更改日誌格式,可能只會添加帶有傳輸文件的條目。