คำสั่ง rsync พื้นฐานสำหรับสำเนาที่เหมือนกันบิต


17

เท่าที่ฉันไม่ได้ปลดคำสั่งต่อไปนี้:

sudo rsync --delete -azvr /home/oshiro/Desktop/source/ /home/oshiro/Desktop/destination

นี่คือทั้งหมดที่ฉันต้องการในการสร้างการซิงโครไนซ์ไฟล์จากที่หนึ่งไปอีกที่หนึ่งหรือไม่? หรือคำสั่งข้างต้นทำอะไรเพิ่มเติมในพื้นหลังที่ฉันไม่รู้เกี่ยวกับ? ตัวอย่างเช่นมันสร้างการกำหนดเวอร์ชันบางประเภทหรือไม่ซึ่งฉันสามารถระบุเวลาที่ผ่านมาเพื่อรับไฟล์ว่ามีการส่งผ่านอย่างไร

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

คำตอบ:


17

rsync ไม่ได้ทำชนิดของเวอร์ชันใด ๆ หรือเก็บประวัติใด ๆ --backupเว้นแต่มีคำสั่งกับตัวเลือกเช่น มีเครื่องมือสำรองข้อมูลที่ใช้ rsync แต่ rsync เองไม่ใช่เครื่องมือสำรองข้อมูลมากกว่าสี่ล้อสร้างรถยนต์ Rsync จัดการกับการซิงโครไนซ์เท่านั้น

เกี่ยวกับตัวเลือกที่คุณใช้หรืออาจต้องการใช้:

  • -aหมายถึง "คัดลอกเกือบทุกอย่าง" (คัดลอกไดเรกทอรีซ้ำคัดลอกลิงก์สัญลักษณ์เช่นเก็บข้อมูลเมตาทั้งหมดเป็นต้น) ใช้ตัวเลือกนี้หากคุณไม่ทำสิ่งผิดปกติ
  • นอกจากนี้-aคุณอาจต้องการใช้-Hเพื่อรักษาฮาร์ดลิงก์, -Aรักษา ACLs ( -aสงวนสิทธิ์ unix แบบดั้งเดิมเท่านั้น) หรือ-Xเพื่อรักษาแอตทริบิวต์เพิ่มเติม
  • -rรวมอยู่ใน-aแล้ว
  • -v หมายถึง verbose
  • -z ไม่มีประโยชน์สำหรับสำเนาในเครื่อง
  • --delete ลบไฟล์ในปลายทางที่ไม่มีอยู่ในแหล่งที่มา

ดังนั้นนี่คือคำสั่งพื้นฐานที่จะทำให้ปลายทางเหมือนกับแหล่งที่มา (ไม่มีฮาร์ดลิงก์, ACLs และแอตทริบิวต์เพิ่มเติม):

rsync -a --delete SOURCE/ DESTINATION/

5

ฉันมักจะใช้คำสั่งจากคำตอบนี้ ข้อดีคือมันยังคงคุณสมบัติและ ACLs เพิ่มเติม

rsync -avxHAX --progress / /new-disk/

ตัวเลือกคือ:

-a  : all files, with permissions, etc..
-v  : verbose, mention files
-x  : stay on one file system
-H  : preserve hard links (not included with -a)
-A  : preserve ACLs/permissions (not included with -a)
-X  : preserve extended attributes (not included with -a)

3

คำสั่งนี้ควรเป็นสิ่งที่คุณต้องการ rsyncโดยค่าเริ่มต้นใช้สิ่งที่เรียกว่าอัลกอริทึมตรวจสอบอย่างรวดเร็ว:

Rsync ค้นหาไฟล์ที่ต้องถ่ายโอนโดยใช้อัลกอริทึม "ตรวจสอบอย่างรวดเร็ว" (โดยค่าเริ่มต้น) ที่ค้นหาไฟล์ที่มีการเปลี่ยนแปลงขนาดหรือในเวลาที่แก้ไขล่าสุด การเปลี่ยนแปลงใด ๆ ในคุณลักษณะที่เก็บรักษาไว้อื่น ๆ (ตามที่ร้องขอโดยตัวเลือก) จะทำในไฟล์ปลายทางโดยตรงเมื่อการตรวจสอบอย่างรวดเร็วบ่งชี้ว่าข้อมูลของไฟล์ไม่จำเป็นต้องได้รับการปรับปรุง

นี่มักจะใช้ได้ในแอปพลิเคชันส่วนใหญ่ มันเร็วกว่าวิธีทางเลือกซึ่งคำนวณการตรวจสอบสำหรับแต่ละไฟล์ วิธีที่สองนี้จะรับประกันความแตกต่างในการติดตามที่อาจเกิดจากวิธีแรก

ไม่ว่าในกรณีใด ๆrsyncจะไม่เก็บสำเนาหลาย ๆ ไฟล์เป็นเครื่องถ่ายเอกสาร / ซิงโครไนซ์ไฟล์โดยรวมซึ่งทำให้ไดเรกทอรีหนึ่งทำข้อมูลให้ตรงกันกับอีกไดเรกทอรีหนึ่งตามตัวเลือกที่คุณให้ไว้

วิธีการตรวจสอบ

หากคุณสงสัยว่านี่คือการสลับฉันใช้rsyncเพื่อทำการซิงค์ประเภทนี้:

$ rsync -avvz -O --stats --checksum --human-readable --acls \
    --itemize-changes --progress \
    --out-format='[%t] [%i] (Last Modified: %M) (bytes: %-10l) %-100n' \
    "SRC" "DEST"

สิ่งนี้สร้างผลลัพธ์ประเภทนี้:

2014/02/20 09:51:49 INFO sending incremental file list 
2014/02/20 09:51:49 INFO delta-transmission disabled for local transfer or --whole-file 
2014/02/20 09:51:49 INFO [2014/02/20 09:51:48] [.d..t......] (Last Modified: 2014/02/19-15:51:34) (bytes: 0         ) ./
2014/02/20 09:51:49 INFO [2014/02/20 09:51:48] [>f+++++++++] (Last Modified: 2014/02/19-15:51:33) (bytes: 27981892  ) somefile.zip
      27.98M 100%   82.27MB/s    0:00:00 (xfer#1, to-check=0/2) 0
2014/02/20 09:51:49 INFO total: matches=0  hash_hits=0  false_alarms=0 data=27981892 
2014/02/20 09:51:49 INFO  
2014/02/20 09:51:49 INFO rsync[25205] (sender) heap statistics: 
2014/02/20 09:51:49 INFO   arena:        1060864   (bytes from sbrk) 
2014/02/20 09:51:49 INFO   ordblks:            1   (chunks not in use) 
2014/02/20 09:51:49 INFO   smblks:             4 
2014/02/20 09:51:49 INFO   hblks:              1   (chunks from mmap) 
2014/02/20 09:51:49 INFO   hblkhd:        135168   (bytes from mmap) 
2014/02/20 09:51:49 INFO   allmem:       1196032   (bytes from sbrk + mmap) 
2014/02/20 09:51:49 INFO   usmblks:            0 
2014/02/20 09:51:49 INFO   fsmblks:          304 
2014/02/20 09:51:49 INFO   uordblks:      667008   (bytes used) 
2014/02/20 09:51:49 INFO   fordblks:      393856   (bytes free) 
2014/02/20 09:51:49 INFO   keepcost:      393552   (bytes in releasable chunk) 
2014/02/20 09:51:49 INFO  
2014/02/20 09:51:49 INFO rsync[25207] (server receiver) heap statistics: 
2014/02/20 09:51:49 INFO   arena:         286720   (bytes from sbrk) 
2014/02/20 09:51:49 INFO   ordblks:            2   (chunks not in use) 
2014/02/20 09:51:49 INFO   smblks:             3 
2014/02/20 09:51:49 INFO   hblks:              3   (chunks from mmap) 
2014/02/20 09:51:49 INFO   hblkhd:        667648   (bytes from mmap) 
2014/02/20 09:51:49 INFO   allmem:        954368   (bytes from sbrk + mmap) 
2014/02/20 09:51:49 INFO   usmblks:            0 
2014/02/20 09:51:49 INFO   fsmblks:          224 
2014/02/20 09:51:49 INFO   uordblks:      174480   (bytes used) 
2014/02/20 09:51:49 INFO   fordblks:      112240   (bytes free) 
2014/02/20 09:51:49 INFO   keepcost:      102352   (bytes in releasable chunk) 
2014/02/20 09:51:49 INFO  
2014/02/20 09:51:49 INFO rsync[25206] (server generator) heap statistics: 
2014/02/20 09:51:49 INFO   arena:         135168   (bytes from sbrk) 
2014/02/20 09:51:49 INFO   ordblks:            2   (chunks not in use) 
2014/02/20 09:51:49 INFO   smblks:             6 
2014/02/20 09:51:49 INFO   hblks:              2   (chunks from mmap) 
2014/02/20 09:51:49 INFO   hblkhd:        401408   (bytes from mmap) 
2014/02/20 09:51:49 INFO   allmem:        536576   (bytes from sbrk + mmap) 
2014/02/20 09:51:49 INFO   usmblks:            0 
2014/02/20 09:51:49 INFO   fsmblks:          400 
2014/02/20 09:51:49 INFO   uordblks:       82960   (bytes used) 
2014/02/20 09:51:49 INFO   fordblks:       52208   (bytes free) 
2014/02/20 09:51:49 INFO   keepcost:       32816   (bytes in releasable chunk) 
2014/02/20 09:51:49 INFO  
2014/02/20 09:51:49 INFO Number of files: 2 
2014/02/20 09:51:49 INFO Number of files transferred: 1 
2014/02/20 09:51:49 INFO Total file size: 27.98M bytes 
2014/02/20 09:51:49 INFO Total transferred file size: 27.98M bytes 
2014/02/20 09:51:49 INFO Literal data: 27.98M bytes 
2014/02/20 09:51:49 INFO Matched data: 0 bytes 
2014/02/20 09:51:49 INFO File list size: 93 
2014/02/20 09:51:49 INFO File list generation time: 1.277 seconds 
2014/02/20 09:51:49 INFO File list transfer time: 0.000 seconds 
2014/02/20 09:51:49 INFO Total bytes sent: 27.99M 
2014/02/20 09:51:49 INFO Total bytes received: 34 
2014/02/20 09:51:49 INFO  
2014/02/20 09:51:49 INFO sent 27.99M bytes  received 34 bytes  11.20M bytes/sec 
2014/02/20 09:51:49 INFO total size is 27.98M  speedup is 1.00 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.