स्रोत सुरक्षित होने के दौरान rsync का उपयोग कर रहा है?


19

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


1
क्या आप बदलाव की स्थिति में निरंतरता (फ़ाइलों के बीच, जैसे डेटा फ़ाइल और कुछ संबद्ध मेटाडेटा फ़ाइल, लॉग या कुछ इस तरह) या भ्रष्टाचार (एकल फ़ाइल के भीतर ) के बारे में चिंतित हैं ?
सीवीएन

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

जवाबों:


20

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

इसका मतलब यह है कि जब फ़ाइल बदलने के बाद rsync फ़ाइल सूची बनाई जाती है, तो वह नई सामग्री की प्रतिलिपि बनाएगी। हालाँकि, जब एक नई फ़ाइल को जोड़ने के बाद rsyncउसकी फ़ाइल सूची बनाई जाती है, तो यह नई फ़ाइल कॉपी नहीं की जाती है। यदि फ़ाइलों की सूची बनाने के बाद कोई फ़ाइल हटा दी जाती हैrsync , तो rsync यह चेतावनी देगा कि वह उस फ़ाइल की प्रतिलिपि नहीं बना सका। ध्यान रखें कि rsyncस्नैपशॉट नहीं है, इसका मतलब यह है कि यह बताना मुश्किल है कि किस समय rsyncडेटा कॉपी किया गया।

फ़ाइल सिस्टम या वॉल्यूम प्रबंधक स्नैपशॉट (उदाहरण के लिए, ZFS या LVM का उपयोग करके), तुरंत बनाए जाते हैं और एक अच्छी तरह से परिभाषित बिंदु पर फ़ाइल सिस्टम का एक सुसंगत स्नैपशॉट होते हैं, जिसे तब किसी अन्य होस्ट में कॉपी किया जा सकता है। rsyncइस तरह की स्थिरता प्रदान नहीं करता है।

संपादित करें: जैसा कि दूसरों ने टिप्पणियों में बताया है, एक मौका है जो rsyncवास्तव में आपकी फ़ाइल को दूषित कर सकता है। जब rsync किसी फ़ाइल को पढ़ना शुरू करता है और एक एप्लिकेशन उसी समय उस फ़ाइल को लिख रहा होता है, तो आप एक भ्रष्ट फाइल के साथ समाप्त हो सकते हैं।


2
हटाए गए फ़ाइलों पर एक नोट जोड़ा गया। अगर मैं वॉल्यूम प्रबंधक स्नैपशॉट + rsync सुझाव के लिए ऐसा कर सकता हूं, तो शायद यह एक और संकेत देगा। केवल एक चीज जो मुझे लगता है कि यह जवाब गायब है, rsync का व्यवहार है जब स्रोत पर फाइलें कॉपी होने के बीच में बदल जाती हैं। मुझे शक है कि यह अच्छी तरह से संभालती है, हालांकि।
बजे एक CVn

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

1
यह उत्तर लागू होता है बशर्ते कि स्रोत की तरफ का आवेदन पहले एक अस्थायी फ़ाइल को लिखता है, फिर इसे जगह में स्थानांतरित करता है। यदि एप्लिकेशन लेखन के लिए एक मौजूदा फ़ाइल खोलता है जबकि rsync उस फ़ाइल को पढ़ता है, तो rsync पुराने और नए संस्करणों के दूषित मिश्रण की प्रतिलिपि बना सकता है।
गाइल्स का SO- बुराई पर रोक '

@ गिल्स इस ओर इशारा करने के लिए धन्यवाद। मैंने अपना उत्तर अपडेट कर दिया। क्या यह rsync से संबंधित है या क्या यह किसी भी एप्लिकेशन के लिए होता है जो पढ़ता है जबकि दूसरा एप्लिकेशन उसी फाइल पर लिखता है?
मार्को

1
@ मर्को किसी भी एप्लिकेशन के साथ होता है, जब तक कि दोनों कुछ लॉकिंग प्रोटोकॉल का उपयोग नहीं करते हैं (यूनिक्स में अनिवार्य ताले नहीं होते हैं, केवल सलाहकार ताले होते हैं, यानी केवल हर कोई उनका उपयोग कर रहा है तो ताले काम करते हैं)। इसीलिए किसी फाइल को संशोधित करने के लिए सामान्य प्रोटोकॉल यदि समवर्ती संशोधन एक चिंता का विषय है, एक अस्थायी फाइल लिखना है तो उसे स्थान पर स्थानांतरित करें।
गिल्स एसओ- बुराई को रोकना '
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.