मैं सिंक दो डिस्क में रखने के लिए rsync 3.1.1 का उपयोग करता हूं, जिनमें से एक नेटवर्क पर है और एक सांबा शेयर के रूप में घुड़सवार है /mnt/ROUTER_WD_2TB/
। यह नेटवर्क सीमाओं के कारण 30-40MB / s की गति के साथ स्रोत है। अन्य, गंतव्य, स्थानीय रूप से माउंट किया गया है (चोटी 110 एमबी / एस) और है /mnt/BACKUP_HITACHI_2TB/
।
मैं निम्नलिखित rsync कमांड का उपयोग करता हूं:
rsync -haAXi --quiet --append-verify --delete /mnt/ROUTER_WD_2TB/* /mnt/BACKUP_HITACHI_2TB/.
डिस्क में कई फाइलें होती हैं, जिनमें से अधिकांश छोटी होती हैं।
समस्या यह है कि rsync किसी भी फ़ाइलों को स्थानांतरित करने के लिए शुरू करने से पहले काफी लंबा समय (10-20 मीटर) लेता है , मुझे लगता है क्योंकि इसमें बहुत बड़ी संख्या में छोटी फ़ाइलों के लिए फ़ाइल सूचियों की गणना करना है। इस अवधि के दौरान, newtwork का उपयोग कम 200-500KB / s पर बैठता है, जबकि फ़ाइलों को स्थानांतरित करते समय गति लगभग 40MB / s है।
यह आमतौर पर ऐसा होता है कि rsync को लगभग 15 मीटर लगते हैं, आखिरकार इसे कॉपी करने के लिए कुछ ढूंढना पड़ता है, फिर इसे कॉपी करने में 5 सेकंड लगते हैं, फिर कुछ अन्य फाइलों की प्रतिलिपि बनाने के लिए 5 मिनट तक चेक करना जारी रखता है। सभी में, एक 5 सेकंड की फाइल कॉपी 20 मिनट तक चलती है!
क्या फ़ाइलों को कॉपी करने से पहले इस लंबी अवधि से बचने के लिए कोई उपाय किया जा सकता है, फ़ोल्डर को छोड़कर अन्य? किसी भी तरह का "कैश" मैं लागू कर सकता हूं ताकि rsync को खरोंच से सभी फ़ाइल सूची का पुनर्निर्माण न करना पड़े?