कैसे एक टाइम मशीन गहरी traversal मजबूर करने के लिए?


12

कुछ कर्नेल पैनिक और मेरे फायरवायर टाइम मशीन ड्राइव के आकस्मिक हॉट-अनलगिंग के बाद, मैं यह सुनिश्चित करना चाहूंगा कि मेरी टाइम मशीन बिल्कुल मेरे मैकिनटोश से मेल खाती है, बहुत पसंद है rsync -a। क्या टाइम मशीन को मजबूर करने का एक तरीका है कि एक गहरी ट्रावेल करने के लिए जाँच करें कि बैकअप मेल खाता है?

यह जानने के लिए कि तेंदुए, हिम तेंदुए और शेर पर यह कैसे उपयोगी होगा।


एक अतिरिक्त-सुरक्षित (लेकिन समय लेने वाली और थोड़ा सा मसालेदार) विकल्प एक ताजा बैकअप डिस्क शुरू करना होगा।
थिलो

जवाबों:


7

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

सबसे खराब स्थिति में, हम एक उपयोगकर्ता मोड के बारे में एक सुरक्षित समय पर fseventsd निर्देशिका को नष्ट करने के लिए टकरा सकते हैं, जब सिस्टम इसे सही होने के लिए नहीं गिन रहा है, इसलिए आपने एक नया डेटाबेस मजबूर किया है जो मेल नहीं खाएगा। आप संभवतः इसे TM की ओर से हटा सकते हैं, लेकिन मैं बूट कॉपी को आपके सुरक्षित डेटा को नष्ट करने या आपके बैकअप को गड़बड़ करने के लिए कम सुरक्षित और कम प्रवण के रूप में हटा दूंगा।

यदि आप कमांड लाइन / टर्मिनल का उपयोग करने के लिए इच्छुक हैं, tmutil compareतो इससे पहले कि मैं आपको एक गहरी ट्रैवर्सल मजबूर करने के बारे में बात करना शुरू कर दूं। यह स्पष्ट रूप से चीजों की तुलना करता है क्योंकि वे अब अंतिम स्नैपशॉट में मौजूद हैं और आप किसी विशिष्ट बाहरी स्नैपशॉट को निर्दिष्ट करके चीजों को बाध्य कर सकते हैं यदि आप एक स्थानीय स्नैपशॉट की तुलना में चिंतित हैं।


आप कुछ भी नहीं करने के लिए टाइम मशीन गंतव्य कैसे सेट करते हैं? tmutil setdestinationएक तर्क के रूप में एक मार्ग की आवश्यकता है, है ना? (या मुझे लगता है कि बस बैकअप डिस्क का चयन करें, फिर इसे हटाने के लिए "डिस्क निकालें" पर हिट करें?) मैं एक भयानक स्थिति में फंस गया हूं। टाइम मशीन एक नया बैकअप बना रही है जब भी मैं बैकअप की कोशिश करता हूं (अपने पुराने बैकअप को हटाने से पहले मैं इसे रद्द कर देता हूं), इसलिए मैं इसे एक गहरी ट्रावेल करने के लिए मजबूर करना चाहता हूं ताकि यह देखे कि वास्तव में अधिकांश फाइलें पिछले के बाद से नहीं बदली हैं बैकअप।
गैरी

ठीक है इसलिए मैंने अभी टाइम मशीन इंटरफ़ेस का उपयोग किया और "डिस्क हटाएं" को हिट किया, फिर इसे फिर से जोड़ा। मुझे अभी भी एक गहरी चोट नहीं मिली है। मुझे यह पता है क्योंकि "बैकअप तैयार करना" चरण में 12 मिनट लगे, जब कल मैंने वास्तव में एक गहरी ट्रावेल किया था जब इसे पूरा करने में 120 मिनट लग गए थे, जो कि मैं अभी चाहता हूं, लेकिन यह पता लगाने में असमर्थ हूं कि ऐसा कैसे करें।
गैरी

1

एकल-उपयोगकर्ता मोड में बूट करने से एक गहरी ट्रैवर्सल हो सकती है। यह मेरे लिए एक बार हुआ, लेकिन बाद में नहीं। हटाने / निश्चित रूप से। एकल-उपयोगकर्ता मोड में ऐसा करना सुरक्षित होना चाहिए। बैकअप वॉल्यूम पर हटाने / हटाने से मेरे लिए गहरा ट्रैवर्सल ट्रिगर नहीं हुआ। (मेरी प्रणाली सामान्य रूप से जारी रही और कभी भी इसे दोबारा नहीं बनाया गया।)

tmutil compareकेवल कुछ हद तक सही है। यह उन फाइलों की सही पहचान करने में लगता था जो पहले बैकअप नहीं लेती थीं। मैंने इसे ठीक करने के लिए एक गहरी ट्रावेल शुरू की, लेकिन टाइम मशीन अभी भी कई फाइलों का बैकअप नहीं ले रही है। फिर भी tmutil compareअब दावा करता है कि कोई समस्या नहीं है। मुझे भरोसा होगा:

rsync --dry-run --itemize-changes --checksum --protect-args -aNHAXx --protect-decmpfs --fileflags --force-change --delete path/to/source_dir/ path/to/destination_dir/

/Volumes/<your time machine volume>/Backups.backupdb/<your machine name>/Latest/स्रोत या गंतव्य पथ के रूप में उपयोग करें । --itemize-changesआइए हम देखें कि क्या अलग है; '- जाँच' rsyncवास्तव में फ़ाइल सामग्री की तुलना करने के लिए कहता है, न कि केवल संशोधन समय और फ़ाइल आकार के बजाय; और --dry-runवास्तव में बैकअप के लिए नहीं rsync बताता है (तो यह सिर्फ हमें बताता है कि यह क्या करेगा)। बाकी तर्कों में rsync को हर तरह से गंतव्य के समान बनाने के लिए rsync को बताने वाले झंडे हैं, जिसमें मेटाडेटा और एचआरआई संपीड़न स्थिति शामिल है। मेरा मानना ​​है कि टाइम मशीन बहीखाता मेटाडेटा जोड़ता है जिसे यह बहाल करते समय हटा देता है, इसलिए rsyncइसमें गंभीर मेटाडेटा परिवर्तन मिल सकता है।


1

कम से कम macOS 10.13.6 के लिए लघु उत्तर:

  1. बैकअप वॉल्यूम से कोई भी .inProgress बैकअप निकालें। इसे सावधानी के/bin/rm -rf साथ आगे बढ़ने के रूट उपयोग की आवश्यकता हो सकती है ।

  2. tmutil associatediskमुख्य वॉल्यूम में बैकअप वॉल्यूम को रिबंड करने के लिए कमांड का उपयोग करें । उदाहरण के लिए:

sudo tmutil संबद्ध -a / "/ वॉल्यूम / टाइम मशीन बैकअप / बैकअपस्पेसबैक / Macintosh HD / नवीनतम / Macintosh HD"

फिर टाइम मशीन मेनू आइटम से बैकअप शुरू करें। मेरे मामले में, स्कैन को 10 मिनट में समाप्त करने के बजाय (स्पष्ट रूप से पूर्ण स्कैन नहीं) और बैकअप के लिए टेराबाइट दिखाने के बजाय, स्कैन ने 30 से अधिक लिया और बैकअप आकार का मिलान हुआ जो tmutil compareकि कह रहा था।

पृष्ठभूमि:

मुझे रगड इंस्टॉलर (अहसास) के बाद "/ यूजर्स / शेयर्ड" (लगभग 1 टेराबाइट की अन्यथा टेमबाइट) में सब कुछ पर अनुमतियों को बदलने के बाद एक गहरी ट्रैवर्सल / फुल स्कैन के लिए मजबूर करने की आवश्यकता थी। मैंने उन सभी को वापस बदल दिया, और tmutilपुष्टि की कि टाइम मशीन को अब उन फ़ाइलों को वापस करने की आवश्यकता नहीं है, लेकिन दो बैकअप में से एक ने कुछ कैश्ड स्कैन का उपयोग करने पर जोर दिया, जो उसने कहा था।

जो चीजें काम नहीं करती थीं:

  • सिस्टम प्राथमिकताओं से बैकअप वॉल्यूम को निकालना और फिर से जोड़ना

  • क्लीयरिंग आउट / एफसेवेंट्सड

  • सिस्टम अपडेट इंस्टॉल करना

  • बिना चलने के .inProgress बैकअप निकालना tmutil associated disk

  • tmutil associated diskहटाने के बिना चल रहा है

  • एकल उपयोगकर्ता मोड में बूट करना, पढ़ना / लिखना और फ़ाइल को छूना

ज्यादातर मामलों में, बैकअप लॉग एक गहरी ट्रैवर्सल होने का दावा करता है, लेकिन इसमें केवल कुछ मिनट लगेंगे और फिर सब कुछ बैकअप करने का प्रयास करेंगे। यहां backupd10.13 पर बाद में लाइव निगरानी करने का आदेश दिया गया है:

लॉग स्ट्रीम --style syslog --predicate 'भेजने वालेImagePath में [cd] "TimeMachine" --info शामिल है

यह केवल नई घटनाओं को दिखाएगा । पिछले तीन दिनों से लॉग करने के लिए:

लॉग शो - स्टाईल syslog --predicate 'भेजने वाले का नामपैथ में है [cd] "टाइममेकिन" --info - रिज़ॉर्ट 3 डी

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