क्या rsync बाधित होने के बाद फिर से शुरू हो सकता है?


188

मैं rsyncबड़ी संख्या में फ़ाइलों की प्रतिलिपि बनाता था, लेकिन मेरे ओएस (उबंटू) अप्रत्याशित रूप से फिर से शुरू हो गए।

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


हां, rsync फिर से उन फ़ाइलों को कॉपी नहीं करेगा, जो पहले से ही कॉपी की गई हैं। कुछ किनारे मामले हैं जहां इसकी पहचान विफल हो सकती है। क्या यह सभी पहले से ही कॉपी की गई फ़ाइलों की प्रतिलिपि बनाता है? आपने किन विकल्पों का उपयोग किया? स्रोत और लक्ष्य फाइलसिस्टम क्या थे? यदि आप सब कुछ कॉपी करने के बाद फिर से rsync चलाते हैं, तो क्या यह फिर से कॉपी करता है?
गाइल्स

@ गिल्स: धन्यवाद! (1) मुझे लगता है कि मैंने देखा कि rsync ने टर्मिनल पर अपने आउटपुट से फिर से वही फाइलें कॉपी की हैं। (२) विकल्प मेरी दूसरी पोस्ट के समान ही हैं sudo rsync -azvv /home/path/folder1/ /home/path/folder2। (3) स्रोत और लक्ष्य दोनों NTFS हैं, खरीदें स्रोत एक बाहरी HDD है, और लक्ष्य एक आंतरिक HDD है। (३) यह अब चल रहा है और अभी तक समाप्त नहीं हुआ है।
टिम

आंशिक रूप से हस्तांतरित फ़ाइलों (बड़ी फ़ाइलों के लिए उपयोगी) को फिर से शुरू करने के लिए -सामाजिक ध्वज भी है
jwbensley

3
@ मेरे सिर के शीर्ष से दूर, कम से कम घड़ी तिरछा है, और समय रिज़ॉल्यूशन में अंतर (एफएटी फाइल सिस्टम के साथ एक सामान्य मुद्दा जो 2-सेकंड वेतन वृद्धि में समय स्टोर --modify-windowकरता है , विकल्प इसके साथ मदद करता है)।
गिल्स

1
यदि आपके पास / या / नहीं था। फ़ाइल स्रोत पथ तर्क के टेल एंड पर तब यह एक उपनिर्देशिका में एक अतिरिक्त प्रतिलिपि बना रहा होगा, जिसका स्रोत निर्देशिका के समान नाम है
Skaperen

जवाबों:


285

सबसे पहले, आपके प्रश्न के "फिर से शुरू" भाग के बारे में, --partialबस आंशिक रूप से स्थानांतरित फ़ाइलों को रखने के लिए प्राप्त करने के अंत को बताता है कि अगर भेजने का अंत गायब हो जाता है जैसे कि वे पूरी तरह से स्थानांतरित हो गए थे।

फ़ाइलों को स्थानांतरित करते समय, वे अस्थायी रूप से अपने लक्ष्य फ़ोल्डर (उदाहरण .TheFileYouAreSending.lRWzDC), या विशेष रूप से चुने हुए फ़ोल्डर में छिपी हुई फ़ाइलों के रूप में सहेजे जाते हैं यदि आप --partial-dirस्विच सेट करते हैं । जब कोई हस्तांतरण विफल हो जाता है और --partialसेट नहीं किया जाता है, तो यह छिपी हुई फ़ाइल इस गुप्त नाम के तहत लक्ष्य फ़ोल्डर में रहेगी, लेकिन यदि --partialसेट की गई है, तो फ़ाइल को वास्तविक लक्ष्य फ़ाइल नाम (इस मामले में TheFileYouAreSending) का नाम दिया जाएगा , भले ही फ़ाइल पूरा नहीं हुआ है। मुद्दा यह है कि आप बाद में --appendया तो फिर से rsync चलाकर हस्तांतरण को पूरा कर सकते हैं --append-verify

इसलिए, स्वयं विफल या रद्द किए गए स्थानांतरण को फिर से शुरू --partialनहीं करता है । इसे फिर से शुरू करने के लिए, आपको अगले रन पर पूर्वोक्त ध्वज में से एक का उपयोग करना होगा। इसलिए, यदि आपको यह सुनिश्चित करने की आवश्यकता है कि लक्ष्य में कभी ऐसी फ़ाइलें नहीं होंगी जो ठीक प्रतीत होती हैं, लेकिन वास्तव में अपूर्ण हैं, तो आपको उपयोग नहीं करना चाहिए । इसके विपरीत, यदि आप यह सुनिश्चित करना चाहते हैं कि आप लक्ष्य निर्देशिका में छिपी आवारा विफल फ़ाइलों को कभी पीछे न छोड़ें, और आप जानते हैं कि आप बाद में स्थानांतरण को पूरा करने में सक्षम होंगे, तो आपकी मदद करने के लिए है।--partial--partial

--appendऊपर उल्लिखित स्विच के संबंध में , यह वास्तविक "फिर से शुरू" स्विच है, और आप इसका उपयोग कर सकते हैं या नहीं, आप भी उपयोग कर रहे हैं --partial। दरअसल, जब आप उपयोग कर रहे होते हैं --append, तो कोई भी अस्थायी फ़ाइलें कभी नहीं बनाई जाती हैं। फाइलें सीधे उनके निशाने पर लिखी जाती हैं। इस संबंध में, एक असफल हस्तांतरण पर एक --appendही परिणाम देता है --partial, लेकिन उन छिपी अस्थायी फ़ाइलों को बनाए बिना।

इसलिए, यदि आप बड़ी फ़ाइलों को स्थानांतरित कर रहे हैं, तो योग करने के लिए, और आप विकल्प को रद्द किए गए या असफल rsync ऑपरेशन को फिर से शुरू करने वाले सटीक बिंदु से फिर से शुरू करना चाहते हैं rsync, आपको अगले प्रयास में उपयोग --appendया --append-verifyस्विच करने की आवश्यकता है।

जैसा कि @Alex नीचे इंगित करता है, क्योंकि संस्करण 3.0.0 में rsyncअब एक नया विकल्प है --append-verify, जो --appendउस स्विच के अस्तित्व में आने से पहले जैसा व्यवहार करता है । आप शायद हमेशा का व्यवहार चाहते हैं --append-verify, इसलिए अपने संस्करण की जांच करें rsync --version। यदि आप मैक पर हैं और rsyncसे प्रयोग नहीं कर रहे हैं homebrew, तो आप (कम से कम और एल कैपिटन को शामिल करके) एक पुराना संस्करण है और --appendइसके बजाय उपयोग करने की आवश्यकता है --append-verify। उन्होंने व्यवहार को क्यों नहीं --appendरखा और इसके बजाय नवागंतुक --append-no-verifyका नाम थोड़ा हैरान करने वाला है। किसी भी तरह से, --appendपर rsync3 संस्करण पहले की तरह ही है --append-verifyनए संस्करणों पर।

--append-verifyखतरनाक नहीं है: यह हमेशा पढ़ेगा और दोनों सिरों पर डेटा की तुलना करेगा और यह नहीं मान लेगा कि वे समान हैं। यह चेकसम का उपयोग करता है, इसलिए यह नेटवर्क पर आसान है, लेकिन इससे पहले कि यह वास्तव में लक्ष्य को जोड़कर हस्तांतरण को फिर से शुरू कर सकता है, तार के दोनों सिरों पर डेटा की साझा मात्रा को पढ़ने की आवश्यकता होती है।

दूसरी बात, आपने कहा कि आपने सुना है कि rsync स्रोत और गंतव्य के बीच अंतर खोजने में सक्षम है, और इसलिए मतभेदों को कॉपी करने के लिए।

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

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

यह उल्लेखनीय है कि यदि आप --checksumउन फ़ाइलों के बैच को स्थानांतरित करने के लिए उपयोग करते हैं जो लक्ष्य प्रणाली में पूरी तरह से नए हैं, तो rsync उन्हें स्थानांतरित करने से पहले स्रोत प्रणाली पर उनके चेकसम की गणना करेगा। क्यूँ मुझे पता नहीं :)

तो, संक्षेप में:

आप अक्सर rsync का उपयोग कर रहे हैं तो सिर्फ और चाहते हैं कि कार्रवाई को रद्द करने के लिए और बाद में इसे फिर से शुरू, विकल्प "बी को एक से सामान ले जाने के लिए" नहीं है का उपयोग करें --checksum, लेकिन है का उपयोग --append-verify

यदि आप अक्सर सामान का बैकअप लेने के लिए rsync का उपयोग कर रहे हैं, तो --append-verifyसंभवतः इसका उपयोग आपके लिए बहुत कुछ नहीं करेगा, जब तक कि आप बड़ी फ़ाइलों को भेजने की आदत नहीं रखते हैं जो लगातार आकार में बढ़ते हैं लेकिन एक बार लिखे जाने के बाद शायद ही कभी संशोधित होते हैं। बोनस टिप के रूप में, यदि आप स्टोरेज का समर्थन कर रहे हैं जो कि स्नैपशॉट का समर्थन करता है जैसे कि , btrfsया zfs, --inplaceस्विच को जोड़ने से आपको स्नैपशॉट के आकार को कम करने में मदद मिलेगी क्योंकि परिवर्तित फाइलें फिर से नहीं बनाई जाती हैं, बल्कि बदले हुए ब्लॉक सीधे पुराने पर लिखे जाते हैं। यह स्विच उपयोगी भी है यदि आप लक्ष्य पर फ़ाइलों की प्रतियाँ बनाने से बचना चाहते हैं जब केवल मामूली परिवर्तन हुए हों।

उपयोग करते समय --append-verify, rsync ऐसा व्यवहार करेगा जैसे यह हमेशा सभी फ़ाइलों पर करता है जो समान आकार के होते हैं। यदि वे संशोधन या अन्य टाइमस्टैम्प में भिन्न होते हैं, तो यह उन फ़ाइलों की जांच किए बिना स्रोत के साथ लक्ष्य को ओवरराइट कर देगा। --checksumसमान नाम और आकार की हर फ़ाइल जोड़ी की सामग्री (चेकसम) की तुलना करेगा।

अद्यतन 2015-09-01 @ एलेक्स द्वारा किए गए बिंदुओं को प्रतिबिंबित करने के लिए बदल गया (धन्यवाद!)

अद्यतन 2017-07-14 @ जोनाथन द्वारा किए गए बिंदुओं को प्रतिबिंबित करने के लिए परिवर्तित (धन्यवाद!)


4
यह कहना --partialकाफी है।
सेस टिम्मरमैन


2
@CMCDragonkai वास्तव में, सिकंदर के जवाब के बारे में नीचे देखें --partial-dir- ऐसा लगता है कि यह इसके लिए एकदम सही बुलेट है। मुझे पूरी तरह से कुछ याद हो सकता है;)
डैनियलस्मेडगार्डबस

2
@DanielSmedegaardBuus मैंने इसे धीमे कनेक्शन पर स्वयं परीक्षण किया, और यह वही है जो मैं केवल इसके साथ देखता हूं --partial: rsync फ़ाइल को अस्थायी नाम में कॉपी करता है, कनेक्शन बाधित होता है, दूरस्थ rsync अंततः उस फ़ाइल को नियमित नाम और क्विट्स पर ले जाता है, फिर के साथ --partialऔर बिना फिर से चल रहा है --append, नई अस्थायी फ़ाइल को आंशिक रूप से स्थानांतरित रिमोट फ़ाइल की एक प्रति के साथ आरंभीकृत किया जाता है, फिर वह प्रतिलिपि जारी रहती है जहां से कनेक्शन की मृत्यु हो गई। (उबंटू 14.04 / rsync 3.1)
इजाका

4
वर्णित व्यवहार में आपके आत्मविश्वास का स्तर क्या है --checksum? इसके अनुसार manयह तय करने के लिए अधिक है कि डेल्टा-ट्रांसफर की तुलना में ट्रांसफ़र के लिए कौन सी फ़ाइलों को फ़्लैग किया जाए (जो, संभवतः, rsyncडिफ़ॉल्ट व्यवहार है)।
जोनाथन वाई।

56

टी एल; डॉ:

बस एक आंशिक निर्देशिका निर्दिष्ट करें क्योंकि rsync मैन पेज अनुशंसा करता है:

--partial-dir=.rsync-partial

लंबी व्याख्या:

--partial-dirविकल्प का उपयोग करने के लिए वास्तव में एक अंतर्निहित सुविधा है , जिसमें / --partialऔर विकल्प पर कई फायदे हैं ।--append-verify--append

Rsync मैन पेज से अंश:

--partial-dir=DIR
      A  better way to keep partial files than the --partial option is
      to specify a DIR that will be used  to  hold  the  partial  data
      (instead  of  writing  it  out to the destination file).  On the
      next transfer, rsync will use a file found in this dir  as  data
      to  speed  up  the resumption of the transfer and then delete it
      after it has served its purpose.

      Note that if --whole-file is specified (or  implied),  any  par-
      tial-dir  file  that  is  found for a file that is being updated
      will simply be removed (since rsync  is  sending  files  without
      using rsync's delta-transfer algorithm).

      Rsync will create the DIR if it is missing (just the last dir --
      not the whole path).  This makes it easy to use a relative  path
      (such  as  "--partial-dir=.rsync-partial")  to have rsync create
      the partial-directory in the destination file's  directory  when
      needed,  and  then  remove  it  again  when  the partial file is
      deleted.

      If the partial-dir value is not an absolute path, rsync will add
      an  exclude rule at the end of all your existing excludes.  This
      will prevent the sending of any partial-dir files that may exist
      on the sending side, and will also prevent the untimely deletion
      of partial-dir items on the receiving  side.   An  example:  the
      above  --partial-dir  option would add the equivalent of "-f '-p
      .rsync-partial/'" at the end of any other filter rules.

डिफ़ॉल्ट रूप से, rsync एक यादृच्छिक अस्थायी फ़ाइल नाम का उपयोग करता है जो हस्तांतरण विफल होने पर हटा दिया जाता है। जैसा कि उल्लेख किया गया है, का उपयोग करके --partialआप rsync को अपूर्ण फ़ाइल रख सकते हैं जैसे कि इसे सफलतापूर्वक स्थानांतरित किया गया था , ताकि बाद में --append-verify/ --appendविकल्पों का उपयोग करके इसे जोड़ना संभव हो सके । हालांकि कई कारण हैं जो उप-इष्टतम हैं।

  1. आपकी बैकअप फाइलें पूरी नहीं हो सकती हैं, और रिमोट फाइल की जांच किए बिना, जो अभी भी अनलक्ड होनी चाहिए, पता करने का कोई तरीका नहीं है।

  2. यदि आप उपयोग करने का प्रयास कर रहे हैं --backupऔर --backup-dir, आपने अभी-अभी इस फ़ाइल का एक नया संस्करण जोड़ा है जो आपके संस्करण इतिहास से पहले कभी भी बाहर नहीं निकला है।

हालाँकि अगर हम उपयोग करते हैं --partial-dir, तो rsync अस्थायी आंशिक फ़ाइल को संरक्षित करेगा, और अगली बार जब आप इसे चलाते हैं, तो उस आंशिक फ़ाइल का उपयोग करके डाउनलोड करना फिर से शुरू करें, और हम उपरोक्त मुद्दों से ग्रस्त नहीं हैं।


38

आप -Pअपने आदेश में विकल्प जोड़ना चाह सकते हैं ।

से manपेज:

--partial By default, rsync will delete any partially transferred file if the transfer
         is interrupted. In some circumstances it is more desirable to keep partially
         transferred files. Using the --partial option tells rsync to keep the partial
         file which should make a subsequent transfer of the rest of the file much faster.

  -P     The -P option is equivalent to --partial --progress.   Its  pur-
         pose  is to make it much easier to specify these two options for
         a long transfer that may be interrupted.

इसलिए इसके बजाय:

sudo rsync -azvv /home/path/folder1/ /home/path/folder2

करना:

sudo rsync -azvvP /home/path/folder1/ /home/path/folder2

बेशक, यदि आप प्रगति अपडेट नहीं चाहते हैं, तो आप इसका उपयोग कर सकते हैं --partial, अर्थात:

sudo rsync --partial -azvv /home/path/folder1/ /home/path/folder2

@ बहुत सही नहीं है। यदि कोई रुकावट (नेटवर्क या प्राप्त करने वाला पक्ष) है, तो उपयोग करते समय - आंशिक फ़ाइल रखी जाती है और इसका उपयोग तब किया जाता है जब rsync को फिर से शुरू किया जाता है। मैनपेज से: "- thepartial ऑप्शन का उपयोग करके आंशिक फ़ाइल को रखने के लिए rsync को बताता है, जिसे <b> बाकी फ़ाइल के बाद के हस्तांतरण को बहुत तेज़ी से </ b> करना चाहिए।"
गॉथे

2
@ फ्लीम और @gaoithe, मेरा जवाब बिल्कुल सटीक नहीं था, और निश्चित रूप से अप-टू-डेट नहीं था। मैंने इसे अपडेट किया है संस्करण 3 + को प्रतिबिंबित करने के लिए rsync। यह तनाव के लिए महत्वपूर्ण है, हालांकि, कि --partialहै नहीं अपने आप में एक विफल रहा है हस्तांतरण को फिर से शुरू। विवरण के लिए मेरा उत्तर देखें :)
DanielSmedegaardBuus

2
@DanielSmedegaardBuus मैंने इसे आज़माया और -Pमेरे मामले में पर्याप्त है। संस्करण: क्लाइंट में 3.1.0 और सर्वर में 3.1.1 है। मैंने ctrl-c के साथ एक बड़ी फ़ाइल के हस्तांतरण को बाधित किया। मुझे लगता है मुझे कुछ याद आ रहा है।
गुएतली

क्यों vv? यानी v2 बार इस्तेमाल किया?
मृग्लोम

जहाँ rsync फ़ाइल के भाग को सहेजता है -azvvP?
मर्ग्लूम

1

मुझे लगता है कि आप जबरन कॉल कर रहे हैं rsyncऔर इसलिए जब आप इसे फिर से याद करते हैं तो सभी डेटा डाउनलोड हो रहे हैं। --progressकेवल उन फ़ाइलों को कॉपी करने के लिए विकल्प का उपयोग करें जो कॉपी नहीं की गई हैं और --deleteकिसी भी फाइल को हटाने का विकल्प है यदि पहले से ही कॉपी किया गया है और अब यह स्रोत फ़ोल्डर में मौजूद नहीं है ...

rsync -avz --progress --delete -e  /home/path/folder1/ /home/path/folder2

यदि आप ssh का उपयोग अन्य सिस्टम में लॉगिन करने और फाइलों को कॉपी करने के लिए कर रहे हैं,

rsync -avz --progress --delete -e "ssh -o UserKnownHostsFile=/dev/null -o \
StrictHostKeyChecking=no" /home/path/folder1/ /home/path/folder2

मुझे पता है कि इस अवधारणा की मेरी समझ में कोई गलती है ...


1
क्या आप अपना उत्तर संपादित कर सकते हैं और समझा सकते हैं कि आपकी विशेष ssh कॉल क्या करती है, और आप इसे करने की सलाह क्यों देते हैं?
फेबियन

2
@ फैबियन वह rsync को दो ssh विकल्प सेट करने के लिए कहता है (rsync कनेक्ट करने के लिए ssh का उपयोग करता है)। दूसरा व्यक्ति ssh को पुष्टि के लिए संकेत नहीं देने के लिए कहता है यदि वह जिस मेजबान से जुड़ रहा है वह पहले से ही ज्ञात नहीं है ("ज्ञात होस्ट" फ़ाइल में मौजूद है)। पहला व्यक्ति ssh को डिफ़ॉल्ट ज्ञात होस्ट फ़ाइल (जो कि ~ / .ssh / ज्ञात_होस्ट होगा) का उपयोग नहीं करने के लिए कहता है। वह इसके बजाय / dev / null का उपयोग करता है, जो निश्चित रूप से हमेशा खाली होता है, और ssh के रूप में तब वहाँ मेजबान नहीं मिलेगा, यह सामान्य रूप से पुष्टि के लिए संकेत देगा, इसलिए विकल्प दो। कनेक्ट करने पर, ssh अब ज्ञात होस्ट को / dev / null को लिखता है, प्रभावी रूप से इसे तुरंत भूल जाता है :)
DanielSmedegaardBuus

1
... लेकिन आप शायद सोच रहे थे कि क्या प्रभाव है, यदि कोई है, तो यह rsync ऑपरेशन पर ही है। जवाब कोई नहीं है। यह केवल उस होस्ट को न करने के लिए कार्य करता है जिसे आप अपने SSH ज्ञात होस्ट फ़ाइल में जोड़ रहे हैं। शायद वह एक बड़ी संख्या में नए सर्वरों, अस्थायी प्रणालियों या व्हाट्सएप से जुड़ने वाला एक पापनाशक है। मुझे नहीं पता :)
डैनियलस्मेडगार्डबस

4
"केवल उन फ़ाइलों को कॉपी करने के लिए --progress विकल्प का उपयोग करें जिन्हें कॉपी नहीं किया गया है" क्या?
moi

1
यहां कुछ त्रुटियां हैं; एक बहुत गंभीर है: गंतव्य में मौजूद --deleteफ़ाइलों को नष्ट नहीं करेगा। कम गंभीर यह है कि चीजों को कॉपी कैसे किया जाता है, इसे संशोधित नहीं करता है; जैसे ही यह कॉपी करता है यह आपको प्रत्येक फ़ाइल पर प्रगति रिपोर्ट देता है। (मैंने गंभीर त्रुटि तय की; इसे साथ प्रतिस्थापित किया ।)--progress--remove-source-files
पॉल डी'अवेस्ट

1

मैं इस सरल स्क्रिप्ट का उपयोग कर रहा हूं। कुछ झंडे समायोजित करने और / या उसे पैरामेट्री करने के लिए स्वतंत्र महसूस करें।

#!/bin/bash

while [ 1 ]
do
    rsync -avz --partial [source] [dest]:
    if [ "$?" = "0" ] ; then
        echo "rsync completed normally"
        exit
    else
        echo "Rsync failure. Backing off and retrying..."
        sleep 180
    fi
done

1

इसके आने में देर हो गई, लेकिन मेरे पास एक ही सवाल था और मुझे एक अलग उत्तर मिला।

--partialझंडा ( "आंशिक रूप से स्थानांतरित कर दिया फ़ाइलों को रखना" में rsync -h) बड़ी फ़ाइलों के लिए उपयोगी है, के रूप में --append( "छोटे फ़ाइलों पर डेटा संलग्न"), लेकिन सवाल के बारे में है बड़ी संख्या में फ़ाइलों की।

उन फ़ाइलों से बचने के लिए जिन्हें पहले से ही कॉपी किया गया है -u(या --update: "उन फ़ाइलों को छोड़ दें जो रिसीवर पर नए हैं")।

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