किसी डेटा को btrfs के साथ कॉपी किए बिना डुप्लिकेट कैसे करें?


14

मुझे btrfs का कोई अनुभव नहीं है, लेकिन यह डी-डुप्लिकेट फ़ाइलों में सक्षम होने के लिए विज्ञापित है।

मेरे आवेदन में, मुझे पूरी निर्देशिका पेड़ों की नक़ल करनी होगी।

मैंने जो कुछ भी सीखा, उससे btrfs ने कुछ पोस्ट स्कैन में केवल डी-डुप्लिकेट किया, तुरंत नहीं। यहां तक ​​कि सिर्फ उपयोग cpकरने से कोई भी डी-डुप्लीकेशन ट्रिगर नहीं होता है (कम से कम, dfकॉपी की गई फ़ाइलों के आकार में वृद्धि हुई डिस्क का उपयोग दिखाता है)।

क्या मैं पूरी तरह से डेटा ले जाने से बच सकता हूं और btrfsसीधे किसी अन्य स्थान पर किसी फ़ाइल को डुप्लिकेट करने के लिए कह सकता हूं , अनिवार्य रूप से सिर्फ अपने मेटाडाटा को क्लोन कर रहा हूं ?

संक्षेप में, हार्डलिंक के समान, लेकिन स्वतंत्र मेटाडेटा (अनुमतियों, मॉड समय, ...) के साथ।


7
cp --reflink=always
15

3
ध्यान दें कि यह हार्डलिंक की तरह कुछ भी नहीं है। जब आप cp --reflink=always, उपयोगकर्ता के दृष्टिकोण से परिणाम हर तरह से दो पूरी तरह से स्वतंत्र फाइलें होगी। यह तथ्य कि अंतर्निहित फाइल सिस्टम अमूर्त है कि कॉपी-ऑन-राइट के माध्यम से केवल एक कार्यान्वयन विवरण है। आपको "हार्डलिंक नहीं मिलता है, लेकिन स्वतंत्र मेटाडाटा के साथ"। मेरी जानकारी के लिए, btrfs अभी तक कोई भी स्वचालित कटौती नहीं करता है। मुझे लगता है कि यह भविष्य की योजना है लेकिन मैं उस पर सकारात्मक नहीं हूं।
ormaaj

@ormaaj - एक हार्डलिंक में स्वतंत्र मेटाडाटा नहीं होगा । और उडो ने कार्यान्वयन विस्तार के लिए कहा । जब आप किसी फाइल को रिफिल करते हैं तो आप अनिवार्य रूप से उसका मेटाडेटा क्लोन करते हैं । इसके केवल तभी जब संदर्भ स्वतंत्र रूप से बदलते हैं कि फाइलें विचलन करती हैं - और यही सब समर्पण है!
15

1
@mikeserv Er, मुझे पूरा यकीन है कि समर्पण का एक अलग अर्थ है। Deduplication पहले से मौजूद डेटा की निरर्थक प्रतियों को ले रहा है और इसे फिर से एकजुट कर रहा है। गाय दोहराव को कम करने का एक साधन है, यह समर्पण नहीं है।
ओरमज

@ormaaj - मुझे लगता है कि कहने के लिए एक अजीब बात है: डुप्लीकेशन दोहराव को कम करने के बारे में नहीं है।
mikeserv

जवाबों:


12

दो विकल्प हैं:

  1. cp --reflink=always
  2. cp --reflink=auto

दूसरा लगभग हमेशा पहले से बेहतर होता है। उपयोग करने का autoमतलब यह है कि यह एक सच्ची कॉपी करने के लिए वापस आ जाएगा यदि फाइल सिस्टम रीफ्लिंकिंग (उदाहरण के लिए, ext4 या NFS शेयर की नकल) का समर्थन नहीं करता है। पहले विकल्प के साथ, मुझे पूरा यकीन है कि यह एकमुश्त विफल होगा और नकल रोक देगा।

यदि आप इसे एक ऐसी स्क्रिप्ट के हिस्से के रूप में उपयोग कर रहे हैं जो गैर-आदर्श परिस्थितियों के सामने मजबूत होने की आवश्यकता है, autoतो आपकी बेहतर सेवा करेगी।


क्या आप एरिक एस्ट्राडा हैं?
मोकेसर

2
@ माइकर्स लोल, नहीं। मेरा पहला नाम एथन है। हालांकि यह मजाकिया होगा; एरिक एस्ट्राडा: अभिनेता दिन के द्वारा, रात में साइडाडमिन। मानो या न मानो, यह ऑनलाइन हैंडल से जाने के एक दशक से अधिक समय में पहली बार है eestradaकि किसी ने मुझसे कभी पूछा है।
eestrada

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