सबसे पहले, डिस्क पर कुछ भी अधिक न करें (कम से कम इसे कभी नहीं लिखें )। डिस्क को पहचाना नहीं जा रहा है (जैसा कि "पहचाने जाने और खाली या अप्राप्य डेटा के साथ पाया जा रहा है" के विपरीत) या तो पूरी तरह से नष्ट डिस्क को इंगित करता है, जो chkdsk
करने के लिए अभ्यस्त नहीं है, या डिस्क के विभाजन तालिका या ज्यामिति के साथ कुछ गलत है। , या जिस तरह से USB संलग्नक इसे संभालता है। एक हार्डवेयर विफलता भी संभव है।
यह तब हो सकता है और जब यूएसबी एनक्लोजर डिस्क और उस कंप्यूटर के बीच बातचीत करने की कोशिश करते हैं जो वे जुड़े हुए हैं। तो पहली बात यह है कि dd
लिनक्स के तहत उपयोग करके, भौतिक रूप से निकटतम-से-भौतिक स्तर पर डिस्क (स्पष्ट रूप से बड़ी) डिस्क पर डिस्क की एक छवि लेना होगा । तब आप वास्तविक डिस्क को और अधिक नुकसान के जोखिम के बिना, अपने दिल की सामग्री के लिए एक छवि की नकल कर सकते हैं।
अद्यतन: लिनक्स में डिवाइस की पहचान
हमारी "बाहरी डिस्क" में तीन से कम इकाइयाँ नहीं हैं । एक ब्लॉक डिवाइस के रूप में उजागर करने वाला USB एनक्लोजर हार्डवेयर। बाड़े के अंदर भौतिक डिस्क। भौतिक डिवाइस, यानी, पहली से आखिरी तक एलबीए क्षेत्रों का क्रम। और अंत में शून्य या अधिक डेटा विभाजन, फ़ाइल सिस्टम को होस्ट करना। "मान्यता प्राप्त" और एक डेस्कटॉप में प्रदर्शित होने के लिए, श्रृंखला के सभी लिंक को काम करने की आवश्यकता है। लेकिन भौतिक उपकरण की एक छवि लेने के लिए आपको केवल पहले दो की आवश्यकता है। यदि आप डिवाइस में प्लग करते हैं और कमांड-लाइन dmesg
(रूट के रूप में) चलाते हैं , तो आपको कुछ इस तरह से देखना चाहिए:
[4984939.028491] usb 8-6: new high speed USB device using ehci_hcd and address 3
[4984939.166658] usb 8-6: configuration #1 chosen from 1 choice
[4984939.170660] scsi7 : SCSI emulation for USB Mass Storage devices
[4984939.172003] usb-storage: device found at 3
[4984939.172005] usb-storage: waiting for device to settle before scanning
... कौन सा संलग्नक पहचाना जा रहा है, और फिर खुद की और उसकी सामग्री की पहचान:
[4984939.170660] usb 8-6: New USB device found, idVendor=1058, idProduct=1021
[4984939.170660] usb 8-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[4984939.170660] usb 8-6: Product: Ext HDD 1021
[4984939.170660] usb 8-6: Manufacturer: Western Digital
[4984939.170660] usb 8-6: SerialNumber: 574D43305431303831303734
[4984944.400970] usb-storage: device scan complete
इसके बाद आप ड्राइवर अपने ज्यामिति, प्रकृति के बारे में सूचित, और परोक्ष अपनी डिवाइस नोड, यहां देखेंगे sdd
(SCSI डिस्क चार के लिए, के बाद से sda
, sdb
और sdc
पहले से ही ले जाया गया):
[4984944.404739] scsi 7:0:0:0: Direct-Access WD Ext HDD 1021 2021 PQ: 0 ANSI: 4
[4984944.404739] sd 7:0:0:0: [sdd] 1953519616 512-byte hardware sectors (1000202 MB)
[4984944.407367] sd 7:0:0:0: [sdd] Write Protect is off
[4984944.407369] sd 7:0:0:0: [sdd] Mode Sense: 17 00 10 08
[4984944.407371] sd 7:0:0:0: [sdd] Assuming drive cache: write through
[4984944.408741] sd 7:0:0:0: [sdd] 1953519616 512-byte hardware sectors (1000202 MB)
फिर कर्नेल पहचानता है कि एक विभाजन है (यदि आप इसे नहीं देखते हैं, तो विभाजन नहीं है या अमान्य है):
[4984944.411497] sdd: sdd1
अब लिनक्स के पास वह सब कुछ है जिसकी उसे आवश्यकता है और सफल लगाव की रिपोर्ट करता है:
[4984944.416739] sd 7:0:0:0: [sdd] Attached SCSI disk
[4984944.416739] sd 7:0:0:0: Attached scsi generic sg4 type 0
और इसलिए डेटा विभाजन की खोज शुरू होती है, यानी, ठीक है, हमारे पास है sdd1
, लेकिन वहां क्या है? , और उत्तर है:
[4984997.498613] NTFS driver 2.1.29 [Flags: R/W MODULE].
[4984997.554613] NTFS volume version 3.1.
[4984997.568859] NTFS-fs error (device sdd1): load_system_files(): $LogFile is not clean. Mounting read-only. Mount in Windows.
[4985390.027808] NTFS-fs error (device sdd1): ntfs_remount(): Volume has errors and is read-only. Cannot remount read-write.
[4985442.423299] NTFS volume version 3.1.
[4985442.425032] NTFS-fs error (device sdd1): load_system_files(): $LogFile is not clean. Mounting read-only. Mount in Windows.
यह ऊपर "अच्छा" माउंट था। लेकिन सिर्फ यह जानते हुए कि उपकरण है sdd
, या sdc
या sdb
, मुझे एक द्विआधारी प्रतिलिपि बनाने की अनुमति देता है (यह मानते हुए कि मेरे पास पर्याप्त खाली स्थान है /mnt/backupdisk
): इनपुट फ़ाइल /dev/sdd
, आउटपुट फ़ाइल DiskImage.raw
, ब्लॉक आकार 1 एमबी :
# dd if=/dev/sdd of=/mnt/backupdisk/DiskImage.raw bs=1M
ध्यान दें कि इनपुट फ़ाइल है /dev/sdd
और नहीं /dev/sdd1
(या किसी अन्य नंबर)। अब यदि मैं चाहता, तो मैं डेटा विभाजन की भरपाई का पता लगा सकता था DiskImage.raw
, और इसे लूप डिवाइस की मदद से माउंट कर सकता था। यहां आपको गंदे विवरण मिलेंगे।
पहले वसूली का प्रयास
दूसरी बात यह होगी कि भौतिक डिस्क को किसी अन्य बाड़े में रखा जाए, जिससे बाड़े का निर्माण अच्छा हो और नए बाड़े का मौका सही ढंग से डिस्क की व्याख्या करने में हो। यदि डिस्क फिर से दिखाई देती है, तो यह पिछले संलग्नक हो सकता है जो टूट गया है। बस मामले में, सभी न्यूफ़ाउंड ड्राइव सामग्री का बैकअप लें , बैकअप को सत्यापित करें, डिस्क को एक डिस्क-ओवरराइट उपयोगिता के साथ शून्य करें ताकि यह पूरी तरह से गूंगा हो जाए (आपके पास डिवाइस श्रृंखला में अलग-अलग राय वाले दो डिवाइस नहीं हो सकते), इसे पुन: स्वरूपित करें मूल रूप से विंडोज से और डेटा को पुनर्स्थापित करें। यह एक भाग्यशाली शॉट है, लेकिन मैंने देखा कि ऐसा होता है; और प्रयास बहुत महंगा नहीं है, अच्छे बाड़ों के बारे में $ 19,99 नए हैं।
मूल संलग्नक खराब होने की स्थिति में, आप डिस्क को पुन: स्वरूपित करने में सक्षम नहीं होंगे, या डिस्क सुलभ नहीं होगी। आप नए संलग्नक को पुनः प्राप्त कर सकते हैं, और यदि यह काम करता है, तो या तो पुराने बाड़े को बदल दें, या नए का उपयोग करते रहें (लेकिन यह सार्थक है यदि नया संलग्नक US $ 19.99 El Cheapo से काफी बेहतर है)।
पेशेवर वसूली
व्यावसायिक पुनर्प्राप्ति सेवाएँ, जिन्हें आप Google के साथ पा सकते हैं। इसके बारे में जाने का एक बहुत ही ईमानदार तरीका भौतिक डिस्क पर भेजना होगा, और - यदि आपको "हाँ मिला है, तो कोई हार्डवेयर क्षति नहीं है और हम आपके सभी डेटा को केवल US $ $ $ $, के लिए पुनर्प्राप्त कर सकते हैं $$! " उत्तर - अच्छी तरह से तब आपको पता चल जाएगा कि डेटा अभी भी सुरक्षित था। तो आप अपने द्वारा लिए गए छवि बैकअप पर इसे स्वयं करने का प्रयास कर सकते हैं, और केवल निदान और डिस्क एस एंड एच के लिए भुगतान कर सकते हैं। यदि आप विफल रहे, तो अनुरोधित आटा खाँसने का विकल्प अभी भी मौजूद है। अगर वहाँ है हार्डवेयर क्षति, पेशेवर सेवा मूल रूप से अपने है केवल विकल्प। कई वूडू ट्रिक्स हैं जो (अस्थायी रूप से) एक "मृत" डिस्क को पुनर्जीवित करेंगे, अक्सर लंबे समय तक पर्याप्त रूप से सबसे महत्वपूर्ण उपकरण को पुनर्प्राप्त करने के लिए,हर बार काम करने की गारंटी नहीं है (डिस्क को गर्म करना, इसे ठंडा करना, इसे "घुमा देना" - मैंने यहां तक कि इसे एक कठिन सतह के खिलाफ चालाकी से रैप करने का सुझाव दिया है)। वे सभी अधिक नुकसान करेंगे, अर्थात, आपको पहली बार काम करने वाली एक चाल का उपयोग करना सुनिश्चित करना होगा, या आपने डिस्क को हमेशा के लिए मार दिया होगा। मैं सिर्फ यह जोड़ा व्याख्या करने के लिए कारण है कि आप को पुनर्जीवित किया डिस्क के बारे में सफलता की कहानी देखेंगे: वहाँ रहे हैं ऐसी कहानियों। लेकिन अगर आप होना चाहते हैं (अधिकतर) यकीन है कि यह क्या होगा आप , अच्छी तरह से - एक पेशेवर किराया।
यदि आप सुनिश्चित हैं कि हार्डवेयर ठीक है - डिस्क घूमता है, कोई झुनझुना नहीं, कोई अजीब आवाज़ या भनभनाहट नहीं, कोई क्लिक-क्लैक्विटी रिकैलिब्रेशन नहीं है - तब "सभी" जो हुआ वह chkdsk
कुछ डेटा गड़बड़ कर दिया है।
DIY वसूली
"होम" रिकवरी आमतौर पर इस तरह से जाती है (मूल रूप से एक ही चीज समर्थक लोग एक बार हार्डवेयर क्षति की छूट दे चुके होते हैं), डिस्क छवि कॉपी पर काम कर रहे हैं:
जांचें कि क्या डिस्क छवि का पहला क्षेत्र एक वैध विभाजन तालिका है। यदि नहीं, तो एक वैध विभाजन तालिका या एक पहचानने योग्य NTFS या FAT32 बूट सेक्टर की तलाश में डिस्क छवि को स्कैन करें, जो कि एफएस इकाई पर (1 टीबी इकाई के लिए, NTFS एकमात्र तार्किक संभावना लगता है) पर निर्भर करता है। किसी भी तरह से आप पहले कुछ मेगाबाइट के भीतर कुछ खोजने के लिए चाहिए।
यदि विभाजन तालिका पाई जाती है, तो सत्यापित करें कि डेटा विभाजन वह है जहाँ विभाजन तालिका कहती है कि यह होना चाहिए। यदि ऐसा नहीं है, तो यह बहुत अच्छी खबर है: शायद विभाजन तालिका गलत है। इसे ठीक करना आसान है (कई लिनक्स विभाजन संपादक ऐसा करेंगे), और डिस्क से 100% वसूली की उम्मीद की जा सकती है। बस सुरक्षित पक्ष पर होने के लिए, केवल पढ़ने योग्य मोड में लूप डिवाइस के साथ लिनक्स में डेटा विभाजन को माउंट करने का प्रयास करें, यह देखने के लिए कि क्या यह पठनीय है। यदि यह है, तो विभाजन बोर्किंग की पुष्टि की जाती है, और डिस्क को निश्चित और पूर्ण पुनर्प्राप्ति के लिए इसके तरीके पर स्पष्ट किया जा सकता है। यदि यह नहीं है, तो संभवतः विभाजन सही है और डेटा विभाजन को (एक हिस्सा) फिर से लिखा गया है। ये गलत है; नीचे देखें 'चीज़ें खट्टी हैं'।
यदि यह पाया और वैध है, तो इसे ड्राइव ज्यामिति के खिलाफ जांचें और यदि वे मेल नहीं खाते हैं, तो यह वास्तव में एक अच्छी बात है, क्योंकि आपको समस्या का मूल कारण मिल सकता है। आप भौतिक ज्यामिति को कर्नेल के लिए बाध्य कर सकते हैं (और इसे लिनक्स बूट पर प्राप्त कर सकते हैं )। देखें कि क्या नया ज्यामिति लिनक्स में पहचाने जाने वाले डिस्क की ओर जाता है। यदि यह करता है, तो डेटा का बैकअप लें, बैकअप को सत्यापित करें और डिस्क को शून्य करें dd
(उपयुक्त sd
डिवाइस के लिए शून्य मेगाबाइट्स ऑफ जीरो) के साथ डिस्क को शून्य करें । कंप्यूटर को पावर दें (बस रिबूट न करें; ठीक है, यह पागल है, लेकिन इसकी कीमत बहुत कम है और यह कुछ पूरा कर सकता है), फिर विंडोज को बूट करें और यह अब क्लूलेस डिस्क को प्रारूपित करें जो उसे लगता है कि यह सबसे अच्छा प्रारूप है। यह विंडोज के साथ कोई संघर्ष नहीं सुनिश्चित करता है। डिस्क पर डेटा पुनर्स्थापित करें। का आनंद लें।
अगर ज्यामिति चाल काम नहीं करती है, या विभाजन नहीं मिल सकता है, या एक बार मिल जाने के बाद यह खाली दिखाई देता है, तो चीजें खट्टी हो जाती हैं। आपको कुछ पुनर्प्राप्ति उपकरण की आवश्यकता है जो खोए हुए डेटा के डेटा क्षेत्रों (एमएफटी, आदि) की खोज में डिस्क छवि को स्कैन करने में सक्षम है । और एक बार मिल जाने के बाद, डेटा पर प्राप्त करने के लिए उनकी व्याख्या करें। यह एक मुश्किल काम है और हमेशा पूरी तरह से स्वचालित नहीं किया जा सकता है। निचले और अधिक हताश स्तर पर, इसमें व्यक्तिगत फ़ाइलों के हस्ताक्षरों की स्कैनिंग शामिल है , उम्मीद है कि वे डिस्क में सन्निहित ब्लॉक में झूठ बोलेंगे। इस तरह का ऑपरेशन मैं ख़ुशी से पेशेवरों पर छोड़ूँगा, हालाँकि। मैंने इसे कई बार किया, हमेशा सफलतापूर्वक, पुराने एफएटी डिस्क के साथ। मैंने इसे फिर से किया, लगभग 50% सफलतापूर्वक, नए और बड़े और अधिक खंडित FAT32 डिस्क के साथ। मैंने प्रयास किया बहुत अधिक जटिल NTFS और ext4 फाइल सिस्टम पर, खराब परिणामों के साथ (लेकिन मेरे पास पूर्ण बैकअप था और वास्तव में यह सब मेरे लिए नहीं दे रहा था)।
लिनक्स से मैनुअल रिकवरी
ठीक है, इसलिए आप लिनक्स में विभाजन को माउंट करने की कोशिश करते हैं और त्रुटियों को प्राप्त करते हैं ( ध्यान दें कि /dev/sdc
और विभिन्न चीजें हैं - छवि को संदर्भित करता है )।/dev/sdcN
/dev/sdc
# mount -t ntfs /dev/sdc1 /mnt/recovery
ntfs_mst_post_read_fixup_warn: magic: 0x00000000 size: 1024 usa_ofs: 0 usa_count: 65535: Invalid argument
Record 1 has no FILE magic (0x0)
Failed to open inode $MFTMirr: Input/output error
... यह इंगित करने के लिए लगता है कि विभाजन, जैसा कि सिस्टम यह मानता है , गलत है या बुरी तरह से क्षतिग्रस्त है। चलिए पहले पहला विकल्प देखें:
# fdisk /dev/sdc
आपको ऐसा कुछ मिलता है:
Disk /dev/sdc: 1000.2 GB, 1000204885504 bytes
1 heads, 63 sectors/track, 31008335 cylinders, total 1953525167 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x9d2b7596
Device Boot Start End Blocks Id System
/dev/sdc1 63 1953520127 976760032+ 7 HPFS/NTFS/exFAT
अगला कदम वास्तविक विभाजन की शुरुआत की जांच करना होगा। छवि फ़ाइल (या /dev/sdc
) में खोज करके हम NTFS हस्ताक्षर की खोज करेंगे:
00000000:EB 52 90 4E 54 46 53 20 -20 20 20 00 02 08 00 00 .R.NTFS ........
00000010:00 00 00 00 00 F8 00 00 -3F 00 FF 00 3F 00 00 00 ........?...?...
00000020:00 00 00 00 80 00 80 00 -4A F5 7F 00 00 00 00 00 ........J.......
# dd if=/dev/sdc bs=512 count=1 skip=63 2>/dev/null | hexdump -C | head -n 1
... उपरोक्त डेटा के साथ हम उम्मीद करते हैं कि NTFS बूट सेक्टर 63 में है, इसीलिए हम सेट करते हैं skip
। इसके अलावा, हम पहली बार (कहते हैं) मेगाबाइट में हर क्षेत्र के साथ प्रयास करेंगे ...
# dd if=/dev/sdc bs=512 count=2000000 2>/dev/null | hexdump -C | grep "00:EB 52 90 4E 54 46 53"
... बस यह सुनिश्चित करने के लिए कि केवल एक बूट सेक्टर है (मेरे साथ ऐसा हुआ था। एक FAT32 डिस्क पर, लेकिन फिर भी ) और यह कि कहीं भी कोई पढ़ने की त्रुटियां नहीं हैं।
आपका परिणाम
00007e00 eb 52 90 4e 54 46 53 20 20 20 20 00 02 08 00 00 |.R.NTFS .....|
वास्तव में हम क्या उम्मीद करेंगे: सेक्टर 63 63 × 512 = 32256 = 7e00 हेक्साडेसिमल की भरपाई करता है। NTFS बूट सेक्टर है और विभाजन तालिका सही प्रतीत होती है ।
तो हम अब लिनक्स पर इसे ठीक करने का एक बड़ा हिस्सा /dev/sdc1
कह सकते हैं , कह सकते हैं /tmp/mydisk.img
और इसे ठीक करने का प्रयास कर सकते हैं । यह भौतिक डिस्क को नुकसान नहीं पहुंचाएगा, जो अन्य प्रयासों के लिए अभी भी अपरिवर्तित रहेगा। और चूंकि अब हम जानते हैं कि पीटी सही होना है, हम /dev/sdc1
कॉपी और मनोरंजन की उम्मीद के लिए उपयोग कर सकते हैं जो हम पहले नहीं कर सकते थे:
# dd if=/dev/sdc1 of=/tmp/mydisk.img bs=1G count=10
...after copying 10 gigabytes...
# ntfsfix /tmp/mydisk.img
यदि NTFSfix काम नहीं करता है, ठीक है, हम मुसीबत में हैं। कर रहे हैं और अधिक सटीक उपयोगिताओं कि कोशिश की जा सकती है, हालांकि। और अगर आपको JPEG चित्र फ़ाइलों को पुनर्प्राप्त करने की आवश्यकता है और फ़ाइल सिस्टम खंडित नहीं था, तो यह JPEG हेडर की मांग करके स्वचालित रूप से किया जा सकता है। समान, लगभग, पीडीएफ, टीआईएफएफ और कार्यालय दस्तावेजों के लिए जाता है, सिवाय इसके कि मुझे नहीं पता कि उन्हें कैसे पहचाना जाए (जेपीईजी, आईएएनएस :-) के लिए)। एक अंतिम विकल्प के रूप में मैंने इन लोगों को पाया है - मैं उन्हें नहीं जानता, उनसे संबंधित नहीं हूं और किसी भी दोष को स्वीकार नहीं करूंगा। हालांकि, इन चीजों के जाने के साथ, कीमत बहुत ही उचित है।