ทำให้ rsync ใช้แบนด์วิดท์น้อยลงหรือไม่


46

ฉันใช้ rsync เพื่อสำรองและซิงโครไนซ์แชร์เครือข่ายและคอมพิวเตอร์ของฉัน ฉันคิดออกแล้ว

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

โดยเฉพาะตอนนี้ฉันกำลังฟัง Last.FM แต่มันตัดออกไปเนื่องจาก rsync กำลังเชื่อมต่อกับท้องถิ่น

ฟังดูไม่น่า แต่ในกรณีนี้ LAN ของฉันเร็วเท่ากับอินเทอร์เน็ตของฉัน (10 เมกะบิตสำหรับทั้งสองมหาวิทยาลัยเย้!) ทั้งสองวิธีฉันไม่มีแบนด์วิดท์พิเศษขณะที่ rsync กำลังทำงาน ความคิดใด ๆ

โอ้ btw โดยเฉพาะฉันใช้ Ubuntu 9.04

คำตอบ:


67

ใช้--bwlimit=KBPS ตัวเลือกเพื่อ จำกัด แบนด์วิดท์ของ I / O เป็น KBytes ต่อวินาที

นอกจากนี้ยังหมายถึงหน้าคน


สมบูรณ์ ฉันไม่รู้ว่าทำไมฉันถึงพลาดในmanหน้านี้เป็นครั้งแรก
Mike Cooper

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

1
@ Joshtronic ฉันสงสัยว่าคุณสังเกตเห็นคำตอบของ supervacuo หรือไม่? ตอนนี้ฉันได้ทำการทดสอบและสามารถรับรองได้ว่า "ไฟล์แรกถูกส่งแบบเต็มแรงระเบิด" ไม่เป็นความจริงยกเว้นไฟล์ที่เล็กที่สุด

20

(นี่จะเป็นการตอบกลับความคิดเห็นของ joshtronic )

--bwlimit=XXในความเป็นจริงมีปัญหาตรงข้าม; การถ่ายโอนเป็นค่าเฉลี่ยเคลื่อนที่ - ตามที่ Rsync Basics อธิบายไว้อย่างเป็นประโยชน์:

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

ไม่ชัดเจนว่าค่าเฉลี่ยถูกถ่ายข้ามไฟล์หรือไม่ แต่ไม่ว่าในกรณีใด

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

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

คุณพูดถูกที่หยดนั้นจะเป็นทางออกที่ดีกว่า แต่สิ่งที่ฉันเข้าใจจากกระดาษอธิบาย (" Trickle: Userland Bandwidth Shaper Shaper สำหรับ Unix-like Systems ") trickle ก็ใช้งานได้โดยการหน่วงเวลา I / O ตามค่าเฉลี่ยการเคลื่อนย้าย . ฉันเดาว่าความหวังในการแนะนำก็คือมันใช้การวัดความถี่สูงกว่าเพื่อใช้ค่าเฉลี่ย ฉันไม่สามารถค้นหาข้อมูลออนไลน์ที่ยืนยันได้ว่าเป็นกรณีนี้ (แม้ว่าบทความข้างต้นจะอ้างถึงrsyncรหัสของ "ง่าย" แต่แนะนำให้ผู้เขียนtrickleคิดว่าพวกเขาทำได้ดีกว่า)

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