วิธีเพิ่มการประทับเวลาและรายการไฟล์ในบันทึก rsync ได้อย่างไร


10

ฉันต้องการเพิ่มทั้งเวลาและรายการไฟล์ลงในบันทึก ปัจจุบันฉันสามารถรับได้ คำสั่งต่อไปนี้เพื่อสามารถติดตามรายการไฟล์ที่อัพเดต แต่ไม่เพิ่มการประทับเวลา

rsync -avz --progress - ลบ / เว็บ / เส้นทาง / public_html / $ newhost: / เว็บ / เส้นทาง / public_html >> /var/log/rsync.log

sent 2345743 bytes  received 43205 bytes  530877.33 bytes/sec
total size is 14828110173  speedup is 6206.96
sending incremental file list
error_log  5740980 100%   36.98MB/s    0:00:00 (xfer#1, to-check=1405/1524)

sent 2344322 bytes  received 51694 bytes  684576.00 bytes/sec
total size is 14828115593  speedup is 6188.65

คำสั่งต่อไปนี้สามารถเพิ่มการประทับเวลาลงในบันทึก แต่ไม่ได้บอกว่าไฟล์ใดถูกอัพเดต

rsync -avz --progress - ลบ / เว็บ / เส้นทาง / public_html / $ newhost: / เว็บ / เส้นทาง / public_html --log-file = / var / log / rsync1.log --log-file-format = "% t \ n"

2012/01/03 17:30:05 [10505] Total transferred file size: 6170062 bytes
2012/01/03 17:30:05 [10505] Literal data: 5470 bytes
2012/01/03 17:30:05 [10505] Matched data: 6164592 bytes
2012/01/03 17:30:05 [10505] File list size: 2333282
2012/01/03 17:30:05 [10505] File list generation time: 0.002 seconds
2012/01/03 17:30:05 [10505] File list transfer time: 0.000 seconds
2012/01/03 17:30:05 [10505] Total bytes sent: 2345435
2012/01/03 17:30:05 [10505] Total bytes received: 28628
2012/01/03 17:30:05 [10505] sent 2345435 bytes  received 28628 bytes  527569.56 bytes/sec
2012/01/03 17:30:05 [10505] total size is 14828121798  speedup is 6245.88

คำตอบ:


8

จาก rsyncd.conf (5):
"รูปแบบบันทึกเริ่มต้นคือ"% o% h [% a]% m (% u)% f% l "และ"% t [% p] "จะถูกนำหน้าเสมอเมื่อใช้ พารามิเตอร์ "ล็อกไฟล์"

2012/01/04 03:19:12 [1461] building file list
2012/01/04 03:19:12 [1461] .d..t...... ./
2012/01/04 03:19:14 [1461] >f+++++++++ file1.pdf
2012/01/04 03:19:14 [1461] >f+++++++++ file2.pdf
2012/01/04 03:19:14 [1461] >f+++++++++ file3.pdf
2012/01/04 03:19:14 [1461] sent 40892313 bytes  received 72 bytes  16356954.00 bytes/sec
2012/01/04 03:19:14 [1461] total size is 81997177  speedup is 2.01


ฉันเชื่อว่านี่คือสิ่งที่คุณต้องการ? ลองใช้คำสั่งของคุณโดยไม่มีตัวเลือก --log-format และอ่านหน้าคู่มือสำหรับ rsyncd.conf และค้นหา "รูปแบบการบันทึก" เพื่อดูตัวเลือกที่คุณต้องปรับแต่ง logfile

ตัวเลือกอื่นที่ฉันมักใช้ในสคริปต์ rsync ของฉันคือการเพิ่มวันที่ก่อน / หลัง rsync เช่น:

date >> /var/log/rsync.log
rsync -avz --progress --delete /src /dst >> /var/log/rsync.log
date >> /var/log/rsync.log

และตัวเลือกที่สามและสุดท้ายคือการใส่คำสั่ง rsync ของคุณใน bash loop เพื่อนำหน้าแต่ละบรรทัดด้วยวันที่


10

หากคุณต้องการดูเวลาสำหรับทุกไฟล์ในไคลเอนต์ rsync คุณจะต้องใช้ --out-format:

 rsync -avz --out-format="%t %f %b" remotehost:tmp . 

ผลลัพธ์มีลักษณะดังนี้:

2013/01/11 10:57:41 tmp/foo.txt 210

สตริงรูปแบบการบันทึก:

%t: time
%f: file
%b: transfered bytes

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.