Rsync कम बैंडविड्थ का उपयोग करें?


46

मैं बैकअप और नेटवर्क शेयरों और मेरे कंप्यूटर को सिंक्रनाइज़ करने के लिए rsync का उपयोग करता हूं। मुझे इसका पता चल गया है।

समस्या यह है कि फ़ाइलों को स्थानांतरित करने के लिए rsync का उपयोग करते समय, यह सभी बैंडविड्थ का उपयोग कर सकता है। मैं इसे गति देना चाहता हूं, ताकि मैं अन्य चीजों के लिए अपने कनेक्शन का उपयोग कर सकूं।

विशेष रूप से, अभी मैं Last.FM को सुन रहा हूं, लेकिन यह काटता रहता है, क्योंकि rsync स्थानीय कनेक्शन को संतृप्त कर रहा है।

यह असंभव लगता है, लेकिन इस मामले में मेरा लैन वास्तव में मेरे इंटरनेट के समान तेज़ है (दोनों के लिए 10 मेगाबिट, याय विश्वविद्यालय)। किसी भी तरह से, मेरे पास कोई अतिरिक्त बैंडविड्थ नहीं है, जबकि rsync चल रहा है। कोई विचार?

ओह, btw, विशेष रूप से मैं Ubuntu 9.04 चला रहा हूं।

जवाबों:


67

--bwlimit=KBPS I / O बैंडविड्थ को सीमित करने के लिए विकल्प का उपयोग करें , केबीटीज़ प्रति सेकंड

मैन पेज को भी देखें ।


उत्तम। मुझे नहीं पता कि मैंने उस manपृष्ठ को पहली बार क्यों याद किया ।
माइक कूपर

8
तथ्य के बाद, लेकिन यह बताना चाहता था कि यह विकल्प औसत बैंडविड्थ को सीमित करता है। पहली फ़ाइल पूर्ण विस्फ़ोट के बाद भेजी जाती है और बाद की फाइलें निर्दिष्ट बैंडविड्थ मान में नीचे जाने के प्रयास के लिए थ्रॉटल की जाती हैं। वास्तव में बैंडविड्थ को सीमित करने के लिए, आप कुछ इस तरह देखना चाहेंगेtrickle
जॉशट्रॉनिक

1
@joshtronic मुझे आश्चर्य हुआ कि क्या आपने पर्यवेक्षक के उत्तर को देखा? मैंने अब इसका परीक्षण किया है और इस तथ्य के लिए वाउच कर सकता हूं कि "सबसे पहली फ़ाइल को पूर्ण विस्फोट भेजा जाता है" सबसे छोटी फ़ाइलों को छोड़कर सच नहीं है।

20

(यह आदर्श रूप से joshtronic की टिप्पणी का उत्तर होगा )

--bwlimit=XXवास्तव में विपरीत समस्या है; स्थानांतरण वास्तव में एक चलती औसत है - रुपये के रूप में मूल बातें मददगार बताते हैं :

Rsync स्थानांतरण की प्रकृति के कारण, डेटा के ब्लॉक भेजे जाते हैं, फिर यदि rsync निर्धारित करता है कि स्थानांतरण बहुत तेज़ था, तो यह अगले डेटा ब्लॉक को भेजने से पहले प्रतीक्षा करेगा। परिणाम एक औसत अंतरण दर है जो निर्दिष्ट सीमा के बराबर है।

यह स्पष्ट नहीं है कि क्या औसत फ़ाइलों के पार ले जाया गया है, लेकिन किसी भी मामले में यह सच नहीं है

पहली फ़ाइल पूर्ण विस्फ़ोट के बाद भेजी जाती है और बाद की फाइलें निर्दिष्ट बैंडविड्थ मान में नीचे जाने के प्रयास के लिए थ्रॉटल की जाती हैं

वास्तव में पहली फ़ाइल को तब तक फेंका जाएगा जब तक कि यह औसत के लिए पर्याप्त न हो जाए, जिसमें किक करने का औसत (जिसका अर्थ है सभी छोटी फाइलें हैं)।

आप रहे हों तो सही है कि मिलने एक बेहतर समाधान हो जाएगा, लेकिन मैं क्या व्याख्यात्मक पत्र ( "से समझ में मिलने: के लिए यूनिक्स की तरह सिस्टम एक userland बैंडविड्थ शेपर ") जो है trickle भी देरी से काम करता है मैं / हे एक चलती हस्तांतरण औसत के आधार पर । मुझे लगता है कि यह सिफारिश करने में आशा है कि यह औसत लागू करने के लिए उच्च आवृत्ति माप का उपयोग करता है। मैं ऐसा कोई भी डेटा ऑनलाइन नहीं पा सका हूँ जो इस बात की पुष्टि करता हो (हालाँकि ऊपर का पेपर rsync"सरल" के रूप में कोड को संदर्भित करता है , यह trickleसोचते हुए कि उनके बेहतर काम करते हैं, लेखकों को सुझाव देते हैं )।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.