मैं कुछ फ़ाइलों / निर्देशिकाओं की गाय-प्रतियां बनाने की कोशिश कर रहा हूं, लेकिन मुझे जिन कई तरीकों के बारे में पता है, वे सभी उप-इष्टतम लगते हैं।
उदाहरण के लिए, btrfs cp --reflink=auto
जल्दी से फाइलों की गाय-प्रतियों का उपयोग कर सकते हैं।
मैंने क्या कोशिश की है:
- सिम्बलिंक्स: नो गुड। नाम बदली गई फ़ाइल, टूटी लिंक।
- हार्डलिंक: बेहतर, लेकिन फिर भी अच्छा नहीं है। एक फ़ाइल में परिवर्तन दूसरे को बदल देगा, और मुझे जरूरी नहीं कि दूसरी फ़ाइल को बदलना चाहिए।
- डेटासेट का एक स्नैपशॉट बनाएं, फिर स्नैपशॉट को क्लोन करें: यह काम कर सकता है, लेकिन अच्छी तरह से नहीं। अक्सर मैं पूरे डेटासेट की कॉपी या किसी अन्य डेटासेट की तरह काम करने के लिए कॉपी की तलाश नहीं करता। तब क्लोन / स्नैपशॉट / मूल के बीच माता-पिता / बच्चे के रिश्ते होते हैं, जो कि जैसा कि मैं समझता हूं कि यह कठिन है, अगर तोड़ना असंभव नहीं है।
zfs send/receive
एक नए डेटासेट में डेटासेट का उपयोग करना , और उसे सक्षम करना : यह माता-पिता / बच्चे के संबंधों को क्लोन का उपयोग करने से बचाता है, लेकिन फिर भी अनावश्यक रूप से एक और डेटासेट बनाता है, और अभी भी 100% पढ़ने के लिए फ़ाइलों में शामिल सुस्ती से ग्रस्त है। लिखित के बजाय ब्लॉक फिर से संदर्भित।- फ़ाइलों को कॉपी करें और अपना काम करने दें: यह काम करता है, लेकिन धीमा है क्योंकि फ़ाइल (फाइलों) को 100% पढ़ा जाना है और फिर ब्लॉक को फिर से लिखने के बजाय संदर्भित किया जाता है।
ज़फ़्स की सुस्ती / प्राप्त करना और शारीरिक रूप से नकल या rsyncing को और तेज़ कर दिया जाता है क्योंकि अधिकांश चीजें संपीड़ित होती हैं, और पढ़ने के दौरान विघटित होना पड़ता है, फिर डुप्लिकेट किक से पहले डुप्लिकेट ब्लॉक को संदर्भित करने के लिए संपीड़ित किया जाता है।
मेरे सभी शोधों में, मुझे btrfs में --reflink की सादगी से मिलता-जुलता कुछ भी नहीं मिला है।
तो, क्या ZFS में गौ-प्रति बनाने का कोई तरीका है? या "शारीरिक रूप से" नकल करना और अपने काम को एकमात्र वास्तविक विकल्प देना है?