द्वैधता: फ़ाइल के संस्करणों को कैसे सूचीबद्ध करें?


12

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

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

किसी भी तरह से नकल करने के लिए?

संपादित करें: मुझे स्पष्ट करना चाहिए कि मैं उस फ़ाइल में हर परिवर्तन / संस्करण देखना चाहता हूं और न केवल अंतिम, उदाहरण के लिए जब इसे पहली बार पेश किया गया था, जब यह परिवर्तन था। यह कई बैकअप वृद्धिशील बैकअप में हो सकता है।


मैंने ऐसी सुविधा के लिए लॉन्चपैड के लिए इच्छा सूची दायर की है, FWIW: bugs.launchpad.net/duplicity/+bug/1044715

जवाबों:


6

डुप्लिकेट के संस्करण 0.7.03 के बाद से उन संशोधनों को सूचीबद्ध करना संभव है जो एक फ़ाइल में बदल गई हैं:

duplicity collection-status --file-changed 'filename' 'remote-url'

1
"विकल्प हटा दिया गया": * ( bugs.launchpad.net/duplicity/+bug/1526557/comments/4
lickdragon

5

एडगर सोल्लिन द्वारा मेलिंग सूची पर एक जवाब था :

नहीं, आप वर्तमान में सभी समर्थित संस्करणों को सूचीबद्ध कर सकते हैं। दोहराव आपको नहीं बताएगा कि उन्हें कब बदला गया। हालाँकि इसे कार्यान्वित किया जा सकता है क्योंकि द्वैधता आंतरिक रूप से उस पर नज़र रखती है।

Ede / duply.net

तो संक्षेप में: यह अब वैनिला दोहराव के साथ संभव नहीं है, लेकिन डेटा डुप्लिकेटता मेटाडेटा में है।


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

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

4

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

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

मैंने ऐसा करने के लिए एक शेल स्क्रिप्ट लिखी।


3
ज्योफ, यह दिलचस्प लगता है! क्या आपने स्क्रिप्ट प्रकाशित की? यह मानक वितरण में शामिल करने के लिए एक स्पष्ट उम्मीदवारी लगती है।
पॉल

3

आप फ़ाइलों की पूरी सूची को डंप करने का प्रयास कर सकते हैं, फिर उस सूची को फ़ाइल के लिए खोज रहे हैं:

duplicity list-current-files url > /path/to/file-list.txt
grep filename /path/to/file-list.txt

यह आदेश खराब रूप से प्रलेखित है, लेकिन फ़ाइल में प्रत्येक पंक्ति में एक तारीख है जो अंतिम संशोधित समय प्रतीत होती है।


मैंने जो मांगा नहीं, लेकिन प्रयास के लिए धन्यवाद!
पॉल

यह इनकोड में टाइम स्टैम्प दिखाने के लिए प्रतीत होता है। पिछली बार डुप्लिकेट ने इसका समर्थन नहीं किया था। इसलिए यदि कोई फ़ाइल बदलता है और पुराने संशोधन-टाइमस्टैम्प को पुनर्स्थापित करता है, तो यह परिवर्तन इस विधि के लिए अदृश्य होगा।
पीटर वी। मॉर्क

0
duplicity list-current-files --time now "${DEST}" > /tmp/today
duplicity list-current-files --time 1D "${DEST}" > /tmp/yesterday
grep -Fxvf /tmp/{today,yesterday}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.