हमेशा rsync का उपयोग क्यों नहीं किया जाता है?


17

मैं पूछना चाहता था कि क्या कोई ऐसा कारण है rsyncजो हर चीज के लिए उपयोग नहीं करता और त्याग करता है cp?
मुझे इसकी जानकारी नहीं थी rsyncऔर अब मुझे नहीं पता कि cpइसकी आवश्यकता क्यों है।


9
rsyncहर जगह उपलब्ध नहीं है, cpहै।
Mat

3
कौन सी स्थापना? लिनक्स? कौनसा? यूनिक्स? डिट्टो। बीएसडी? आप कभी नहीं जानते कि डिफ़ॉल्ट रूप से क्या आता है।
terdon

5
लिनक्स के लिए वास्तव में "डिफ़ॉल्ट स्थापना" नहीं है। हर डिस्ट्रो के पास इसके मुख्य पैकेज और उन में विविधताओं का एक मेजबान है। इसके अलावा जब आपको बहुत सारे सिस्टम पर काम करने की आवश्यकता होती है, तो हर जगह उपलब्ध टूल का उपयोग करने से चीजें सरल हो जाती हैं।
Mat

4
@Mat: बेस GNU उपयोगकर्ता के माध्यम से, POSIX के साथ, जहां तक ​​(और कामकाज को परिभाषित करता है) की आवश्यकता है, cpलेकिन डिफ़ॉल्ट रूप से एक डिफ़ॉल्ट (या कोर) इंस्टॉलेशन है, बेस GNU उपयोगकर्ता के माध्यम से, लेकिन नहीं rsync: pubs.opengroup.org/slinepubs/007904875 / उपयोगिताएँ
गोल्डीलॉक्स

1
मुझे पूरा यकीन है कि डेबियन जीएनयू / लिनक्स डिफ़ॉल्ट रूप से rsync स्थापित करता है। हालाँकि, यह इंस्टॉलेशन और बचाव वातावरण में उपलब्ध नहीं है। (मैंने अपने रूट विभाजन की सामग्री को एक डिस्क से दूसरे में ट्रांसफर करने के लिए आज जल्दी इस्तेमाल किया। डीवीडी का उपयोग 7.1.0 amd64 स्थापित करें।)
एक CVn

जवाबों:


24

कड़ाई से हाँ, आप हमेशा उपयोग कर सकते हैं rsync। से man rsync(जोर मेरा):

Rsync एक तेज़ और असाधारण रूप से बहुमुखी फ़ाइल कॉपी टूल है। यह किसी भी दूरस्थ शेल पर, या एक दूरस्थ rsync डेमॉन से / दूसरे होस्ट को स्थानीय रूप से / से कॉपी कर सकता है। यह बड़ी संख्या में विकल्प प्रदान करता है जो इसके व्यवहार के हर पहलू को नियंत्रित करते हैं और
कॉपी किए जाने वाली फ़ाइलों के सेट के बहुत लचीले विनिर्देशन की अनुमति देते हैं । यह अपने डेल्टा-ट्रांसफर एल्गो रिथ्म के लिए प्रसिद्ध है, जो कि नेटवर्क फाइल पर भेजे गए डेटा की मात्रा को कम करता है, जो कि केवल स्रोत फाइलों और डेस्टिनेशन tion में मौजूद फाइलों के बीच अंतर भेजकर होता है। रुपीक्स का व्यापक रूप से बैकअप और मिररिंग के लिए और रोजमर्रा के उपयोग के लिए एक बेहतर कॉपी कमांड के रूप में उपयोग किया जाता है।

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


आप डिफ़ॉल्ट स्थापना के हिस्से के रूप में उपलब्ध नहीं हैं, लेकिन एक अलग डाउनलोड?
जिम

1
@Jim हाँ, कभी-कभी आपको rsyncअपने आप को उस सिस्टम के आधार पर स्थापित करने की आवश्यकता होती है जिसे आप स्वयं पाते हैं। यदि आपके पास rootपहुंच नहीं है जो कठिन हो सकता है। cpPOSIX है और हमेशा रहेगी।
terdon

9
cpGNU कोरुटिल्स का हिस्सा है इसलिए यह हमेशा हर लिनक्स सिस्टम पर स्थापित होता है जबकि rsyncऐसा नहीं है।
मार्टिन वॉन विटिच

1
sometimes it is just not worth typing those few extra characters- मैंने उसके pcpलिए ("प्रगति प्रति" के लिए)
अलियास

19

cpकुछ स्थितियों की तुलना में Rsync धीमा हो सकता है। उदाहरण के लिए जब गंतव्य मौजूद है और rsync प्रत्येक ब्लॉक के लिए कुछ महंगी तुलनाएं करता है, तो समान ब्लॉक नहीं पाता है और पूर्ण स्रोत फ़ाइल वैसे भी कॉपी करता है।

गंतव्य फ़ाइलें मौजूद नहीं होने पर भी, rsync cp के ऊपर कोई लाभ नहीं देता है।


1
नीचे, rsync की कार्यप्रणाली काफी धीमी है। Unix.stackexchange.com/questions/374071/… देखें । सीपी शो की एक धारा (इस लेखन के रूप में), एक साधारण 32KB पढ़ने / 32 KB संचालन के अनुक्रम लिखते हैं। रुंटिक, इस बीच, एक पढ़ने / 4092-बाइट + 4-बाइट को सॉकेट में लिखते हैं / सॉकेट से पढ़ते हैं / 250 केबी फाइल करने के लिए लिखते हैं। मैं 130 एमबी / एस थ्रूपुट पर मिश्रित आकार की फाइलों के 36T का rsync कर रहा हूं। मैं इसे cp -a के साथ ट्रिपल कर सकता हूं। rsync जीतता है, जैसा कि आप कहते हैं कि जब आप निर्देशिकाओं को "बनाना" चाहते हैं, तो पहले से ही समान निर्देशिकाओं पर 'यह' जैसा दिखता है।
माइक एस

7

मुझे लगता rsyncहै कि एक सरल तरीके से विरल फ़ाइल की नकल करने से निपटना नहीं है। cpडिफ़ॉल्ट रूप से बहुत अच्छी तरह से संभालती है।


6
यह -Sध्वज के साथ करता है ।
terdon

2
@terdon, ओह अच्छा, कृपया इस लेख को देखें: barricane.com/rsync-vm-sparse-inplace-kvm-vmware
wcang

आह, धन्यवाद, आपको अपने उत्तर में जोड़ना चाहिए। मैंने बस जल्दी से उस आदमी के पेज को खोजा sparse
terdon

4

क्योंकि इस cpझंडे में rsync की कमी है:

-i, --interactive
       prompt before overwrite (overrides a previous -n option)

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