खराब क्षेत्रों या हार्डवेयर विफलता के साथ हार्ड ड्राइव से डेटा रिकवरी के लिए dsresoscope की तरह त्रुटि से निपटने के लिए rsync जैसी फाइल कॉपी उपयोगिता


12

मेरे पास या तो खराब ब्लॉकों या क्षेत्रों के साथ एक हार्ड ड्राइव है जो संभावित यांत्रिक मुद्दों के कारण पढ़ने में विफल हो रहे हैं, जैसे कि खराब डिस्क सिर, खराब मोटर, या कुछ अन्य मुद्दे जो हार्ड ड्राइव को धीरे-धीरे और बहुत सारे के साथ डेटा पढ़ने में कठिनाई का कारण बन रहे हैं। पढ़ने में त्रुटि। मैं 50 केबी / सेकंड का औसत देख रहा हूं, जिसमें 10 केबी / सेक से नीचे कुछ पढ़ता है, और अक्सर यह एक फ़ाइल या सेक्टर पर पूरी तरह से अटक जाता है, आमतौर पर काफी लंबे समय के लिए - 2-10 मिनट या अधिक से (जब rsync का उपयोग करना, इससे पहले कि यह समय समाप्त हो जाए)।

गति बेतहाशा भिन्न होती है, और यह फ़ाइलों पर बहुत अधिक अटक जाती है, और जब यह अंततः "अनस्टक" हो जाती है, तो यह केवल एक छोटी फट के लिए पिछले लगती है इससे पहले कि यह फिर से अटक जाए। ड्राइव केवल नकल की फ़ाइलों की एक सामयिक ध्वनि के साथ बहुत शांत है (आमतौर पर जब यह अटक जाता है / थोड़े समय के लिए स्थिर हो जाता है, फिर से अटकने से पहले)। इस प्रकार, उन बुरी ध्वनियों में से कोई भी नहीं है जो सामान्य रूप से एचडीडी की मृत्यु के साथ जुड़ी हुई हैं। किसी ने सुझाव दिया कि समस्याओं की तरह लग रहा था जैसे वे एक गलत डिस्क सिर के कारण हो सकते हैं, जिसे अंततः सफलता के साथ डेटा पढ़ने से पहले बहुत अधिक री-रीड की आवश्यकता होती है। प्रशंसनीय लगता है, लेकिन मुझे लगता है ...

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

स्वाभाविक रूप से, यह वह जगह है जहां आप शायद कहेंगे "आपको ddresoscope का उपयोग करना चाहिए!" ठीक है, यह सब ठीक है और बांका है, लेकिन मैं पहले से ही अधिकांश डेटा का बैकअप ले चुका हूं, इसलिए मैं कुछ फाइलों को पुनर्प्राप्त करना चाहता हूं। मैं एक पूर्ण विभाजन ब्लॉक-बाय-ब्लॉक को पुनर्प्राप्त करने की कोशिश करने से चिंतित नहीं हूं जैसा कि ddrescue करता है। मुझे केवल विशिष्ट फ़ाइलों और निर्देशिकाओं को सहेजने में दिलचस्पी है।

आदर्श रूप से, मैं चाहूंगा कि rsync और ddrescue के बीच किसी प्रकार का क्रॉस हो: कुछ ऐसा है जो मुझे स्रोत और गंतव्य को rsync जैसी सामान्य फ़ाइलों की निर्देशिका के रूप में निर्दिष्ट करने देता है (बजाय दो पूर्ण विभाजन के रूप में ddresoscope की आवश्यकता होती है), फ़ाइलों को छोड़ने का एक तरीका है एक प्रारंभिक रन में त्रुटियां, और फिर मुझे बाद में चलाने में थोड़ी सी भी त्रुटि के साथ उन फ़ाइलों की पुनर्प्राप्ति का प्रयास करने की अनुमति देता है (निश्चित रूप से, थोड़ा बदला हुआ आदेश), शायद यहां तक ​​कि रिट्री प्रयासों की संख्या निर्दिष्ट करने के लिए एक विकल्प की पेशकश ... बस की तरह कैसे ddrescue ब्लॉकों के साथ काम करता है, केवल मैं एक उपयोगिता चाहता हूं जो rsync जैसी विशिष्ट फ़ाइलों / निर्देशिकाओं के साथ काम करता है।

तो क्या मैं यहाँ पर दिन-रात एक कर रहा हूँ, या कुछ ऐसा मौजूद है जो ऐसा कर सकता है? या, शायद इस तरह से rsync या ddrescue काम करने का एक तरीका भी है? मैं वास्तव में जो भी समाधान काम कर सकता हूं, उसके लिए खुला हूं, जब तक वे मुझे यह चुनने दें कि मैं "बचाव" के लिए कौन सी फाइलें चाहता हूं, और प्रारंभिक रन में त्रुटियों के साथ फाइलें छोड़ सकता हूं, और बाद में उन त्रुटियों को फिर से प्रयास कर सकता हूं।

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

rsync -avP --stats --block-size=512 --timeout=600 /path/to/source/* /path/to/destination/

जवाबों:


3

मेरे पास एक 3TB Hitachi है जो दर्दनाक रूप से धीमी गति से पढ़ता है, ddrescue फ़ाइल स्तर पर काम करेगा। लेकिन निर्देशिकाओं पर नहीं। हालाँकि मुझे काम करने के लिए ddrescue-time या --min-read-rate दर विकल्प नहीं मिल सके।

आप एक बार में एक फ़ाइल को ddrescue करने के लिए एक स्क्रिप्ट में ऐसा करना चाहेंगे।

cat listoffiles | while read file
pipe while> do
pipe while> ls -l "$file"
pipe while> ddrescue -n -e1  "$file" /cc/RecoveredFiles/"$file" /cc/RecoveredFiles/"$file".llog
pipe while> date
done | tee -a  /cc/RecoveredFiles/ddrescue.log

3

शायद यह प्रश्न पूछे जाने के बाद के वर्षों में rsync बदल गया है।

मेरा अनुभव यह था कि rsyncवर्तमान में एक मरणासन्न हार्ड ड्राइव से सामान की प्रतिलिपि बनाने वाला एक महान काम करता है

rsync -a <src> <dest>

यदि यह त्रुटियों का सामना करता है, तो यह जल्दी से आगे बढ़ जाएगा, और जब पुन: पुन: उन फ़ाइलों को आज़माने के लिए वापस चला जाएगा।

rsync --version रिपोर्ट rsync version 2.6.9 protocol version 29

अन्य उत्तरों के बारे में:

2011 के उत्तर उन उपकरणों को बढ़ावा देने वाले प्रतीत होते हैं जो केवल ddrescue के लिए वाणिज्यिक समकक्ष हैं - कोई संकेत नहीं है कि वे फ़ाइल-जागरूक हैं। मछली। 2013 का जवाब दिलचस्प है।


2

महान सवाल, विस्तार के स्तर से प्यार है। इस परिदृश्य में अच्छी तरह से काम करने वाली एक उपयोगिता के लिए, मैं क्वेटेक से Filescavenger की कोशिश करने की सिफारिश करूंगा । यह 100+ गिनती में अत्यधिक पुन: पढ़ता है, लेकिन इससे भी महत्वपूर्ण बात यह है कि इसमें एक डिस्क इमेजिंग सुविधा है जो आपको फ़ाइलों का आकलन करने के लिए समय बर्बाद करने के लिए एक छवि के बिना पूरी सामग्री को डंप करने की अनुमति देगा फिर छवि लोड करें और इसके माध्यम से स्कैन करें फ़ाइलों के लिए। उपयोगिता एक घर उपयोगकर्ताओं के लिए $ 50 चलती है, लेकिन आप इसे डाउनलोड कर सकते हैं और इसे देखने के बिंदु पर परीक्षण कर सकते हैं कि पैसे खर्च करने से पहले छवि से क्या पुनर्प्राप्त किया जा सकता है।

यदि यह पेशेवर उपयोग है तो यह आपको एक बहुत पैसा खर्च करेगा, लेकिन तार्किक और हार्डवेयर छापे सरणियों के लिए समर्थन सहित महत्वपूर्ण विशेषताएं प्राप्त करता है।

यदि यह भी विफल रहता है, तो आप सॉफ़्टवेयर रिकवरी टूल के बिंदु से पिछले हो सकते हैं। यदि आप हैं और आप प्रयोगशाला वसूली की लागत को उचित ठहरा सकते हैं तो मुझे बताएं कि आप किस देश, राज्य और शहर में हैं। मैं आपके पास हमारे या प्रतिस्पर्धी प्रयोगशालाओं में से एक की सिफारिश कर सकता हूं।

क्रिस


1

आप प्रोग्रेसिव कॉपियर चाहते हैं । यह संपूर्ण ड्राइव करने के लिए लक्षित है, लेकिन चूंकि यह एक पैरामीटर के रूप में एक फ़ाइल पथ लेता है, इसलिए इसे अलग-अलग फ़ाइलों के लिए भी काम करना चाहिए। मुझे नहीं लगता कि यह निर्देशिकाओं के लिए काम करेगा - आपको प्रत्येक फ़ाइल को निर्दिष्ट करना होगा।

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