आवंटन ब्लॉक की HFS + अमान्य संख्या


3

ठीक है तो कुछ दिनों पहले मैं उबंटू GNOME को नियमित उबंटू में स्थापित करना चाहता था और इसने मुझे अपने उबंटू स्थापना को स्वचालित रूप से अधिलेखित करने का विकल्प दिया (जो कि मेरे ओएस एक्स योसेमाइट से अलग विभाजन पर था)। हालांकि मैंने गनोम को इस तरह से स्थापित करने के बाद, यह प्रकट किया कि इंस्टॉलर ने मेरे ओएस एक्स विभाजन को भी हटा दिया।

तब से मैंने अपने मैक विभाजन को पुनर्प्राप्त करने के लिए विभिन्न चीजों की कोशिश की है, मैंने विभाजन तालिका (और विभाजन) को फिर से बनाने के लिए क्षेत्रों और gdisk को खोजने के लिए TestDisk का उपयोग किया है। समस्या यह है कि मैं इन नए विभाजन को माउंट नहीं कर सकता। मैंने विभाजन को ठीक करने के लिए fsck.hfsplus की कोशिश की है, लेकिन यह मुझे निम्न त्रुटि देता है (GNOME परीक्षण USB से बूट किया गया):

ubuntu-gnome@ubuntu-gnome:~$ sudo fsck.hfsplus /dev/sda2
** /dev/sda2
** Checking HFS Plus volume.
   Invalid number of allocation blocks
(4294967295, 0)
** Volume check failed.

यहाँ मेरे testdisk परिणाम हैं:

टेस्टिस्क परिणाम यहाँ मैं gdisk में किए गए विभाजन हैं:

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34          409633   200.0 MiB   EF00  EFI System Partition
   2          411648      1164570455   555.1 GiB   AF00  Apple HFS/HFS+
   3      1165256704      1166528119   620.8 MiB   AF00  Apple HFS/HFS+
   4      1166528512      1182543855   7.6 GiB     8200  Linux swap
   5      1182543872      1465147391   134.8 GiB   8300  Linux filesystem

यहां इंटरनेट रिकवरी मोड को बूट करने के बाद अलग-अलग आउटपुट हैं:

diskutil list:

-bash-3.2# diskutil list /dev/disk0
   #:                        TYPE NAME                    SIZE        IDENTIFIER
   0:       GUID_partition_scheme                         *750.2 GB   disk0
   1:                         EFI                          209.7 MB   disk0s1
   2:                   Apple_HFS                          596.0 GB   disk0s2
   3:                   Apple_HFS                          651.0 MB   disk0s3
   4:                  Linux Swap                          8.2 GB     disk0s4
   5: 0FC63DAF-8483-4772-8E79-3D69D8477DE4                 144.7 GB   disk0s5
/dev/disk1
   #:                        TYPE NAME                    SIZE        IDENTIFIER
   0:      Apple_partition_scheme                         *1.2 GB     disk1
   1:         Apple_partition_map                          30.7 KB    disk1s1
   2:                   Apple_HFS Mac OS X Base System     1.2 GB     disk1s2

/dev/disk2-disk12 are part of the recovery system and irrelevant here

diskutil cs list:

No CoreStorage logical volume groups found

gpt -r -vv show /dev/disk0:

-bash-3.2# gpt -r -vv show /dev/disk0
gpt show: /dev/disk0: mediasize=750156374016; sectorsize=512; blocks=1465149168
gpt show: /dev/disk0: PMBR at sector 0
gpt show: /dev/disk0: Pri GPT at sector 1
gpt show: /dev/disk0: Sec GPT at sector 1465149167
       start        size index contents
           0           1       PMBR
           1           1       Pri GPT header
           2          32       Pri GPT table
          34      409600     1 GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
      409634        2014                                                     
      411648  1164158808     2 GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  1164570456      686248
  1165256704     1271416     3 GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  1166528120         392
  1166528512    16015344     4 GPT part - 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
  1182543856          16
  1182543872   282603520     5 GPT part - 0FC63DAF-8483-4772-8E79-3D69D8477DE4
  1465147392        1743
  1465149135          32       Sec GPT table
  1465149167           1       Sec GPT header

@klanomath आपकी प्रतिक्रिया के लिए धन्यवाद। मैंने अपना प्रश्न संपादित किया है (खेद है कि इसमें कुछ समय लगा)
रोमेर बकर

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

धन्यवाद। मैं आपके उत्तर की कोशिश करूँगा। आपके द्वारा किए गए विभाजन को पुनर्प्राप्त करने के लिए मुझे क्या मौका मिलेगा? यह बूट करने योग्य नहीं है, मुझे बस कुछ फ़ाइलों की आवश्यकता है (hfsprescue अभी कोई विकल्प नहीं है क्योंकि मुझे सब कुछ बहाल करना होगा और मेरे पास 700gb फ्लैश ड्राइव नहीं है)। OS X को पुनर्स्थापित करना कोई समस्या नहीं है।
रोमर बकर

@klanomath ठीक है इसलिए रिकवरी में डिस्क उपयोगिता ने वही त्रुटियां दीं। मैं गनोम फ्लैश ड्राइव पर योसेमाइट स्थापित करूँगा और डिस्कवर्यर और wxHexEditor आज़माऊंगा। स्टैक विस्तारित टिप्पणियों को पसंद नहीं करता है, इसलिए मैं इसे चैट पर ले जाऊंगा।
रोमर बक्कर

जवाबों:


4

मेरी राय में "टेस्टडिस्क" ने आपके जीपीटी को बढ़ा दिया।

कृपया मेरी डिस्क के साथ टेस्टडिस्क परिणाम की तुलना करें। मेरे उदाहरण में डिस्क समान रूप से आकार की हैं, डिस्क 0 में कोरस्टोरेज विभाजन और डिस्क 2 में एक पुरानी शैली की JHFS + विभाजन है। मैं दो अलग-अलग डिस्क का उपयोग कर रहा हूं क्योंकि यह अज्ञात है (कम से कम मेरे लिए) जो स्वरूपण प्रकार (सीएस या जेएचएफएस +) का मूल रूप से उपयोग किया गया था।

PMBR / GPT और पहले तीन विभाजन (EFI / Macintosh HD / रिकवरी एचडी) इस तरह दिखना चाहिए, यदि आपके पास पहले एक CoreStorage विभाजन था:

    root# gpt -r -vv show disk0
gpt show: disk0: mediasize=68719476736; sectorsize=512; blocks=134217728
gpt show: disk0: PMBR at sector 0
gpt show: disk0: Pri GPT at sector 1
gpt show: disk0: Sec GPT at sector 134217727
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6         
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  132538512      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
  132948152    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC

या इस तरह से, यदि आपके पास पहले से एक क्लासिक JHFS + वॉल्यूम था:

root# gpt -r -vv show disk2
gpt show: disk2: mediasize=68719476736; sectorsize=512; blocks=134217728
gpt show: disk2: PMBR at sector 0
gpt show: disk2: Pri GPT at sector 1
gpt show: disk2: Sec GPT at sector 134217727
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6         
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  132538512      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  132948152    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC

(कृपया ध्यान दें कि औसत, ब्लॉक, द्वितीयक GPT का क्षेत्र, 2 खंड का आकार और 3 खंड का प्रारंभ खंड आपके लिए अलग है, क्योंकि मैं यहां छोटे उदाहरण डिस्क का उपयोग करता हूं।)

जीपीटी को एक बार फिर से लिखकर आपकी समस्या का समाधान किया जाना चाहिए।

तैयारी:

एक पूर्ण वेनिला सिस्टम स्थापित करें (Mavericks या Yosemite को काम करना चाहिए) एक अंगूठे ड्राइव (या बाहरी ड्राइव) पर। एक पुनर्प्राप्ति प्रणाली काम नहीं करेगी। अंगूठे ड्राइव को बूट करें, डाउनलोड करें और wxHexEditor स्थापित करें । रूट उपयोगकर्ता और लॉग-इन रूट के रूप में सक्षम करें।

संकेत: wxHexEditor के साथ काम करते समय कॉपी और पेस्ट का उपयोग न करें। सब कुछ मैन्युअल रूप से दर्ज करें! आप गलती से सीधे अपनी डिस्क पर लिख सकते हैं।

JHFS + या CoreStorage विभाजन?

पहले आपको यह निर्धारित करना होगा, यदि आपके पास इंडेक्स नंबर 2 पर एक JHFS + या CoreStorage विभाजन था।

कैलक्यूलेटर खोलें। WxHexEditor खोलें। जांचें कि आप रीड-ओनली मोड में काम करते हैं ("विकल्प" -> "फाइल मोड" -> "केवल पढ़ें")। मेनूबार में "डिवाइस" -> "ओपन डिस्क डिवाइस" पर जाएं -> उपयुक्त डिस्कनंबर चुनें। संभवत: यह डिस्क 0 है। डिस्क में आगे विभाजन होना चाहिए (disk0s1 - disk0s5)। कृपया सीधे लाल लाइनों के साथ नीचे दिए गए उदाहरणों की तरह wxHexEditor विंडो को व्यवस्थित करने का प्रयास करें।

फिर "गो टू ऑफसेट" (ग्रीन सर्कल के साथ चिह्नित) पर जाएं और नीचे दी गई तस्वीर की तरह 409640 दर्ज करें। कभी-कभी आपने ऐसा किया है कि दो बार सही क्षेत्र में कूदने के लिए। कैलकुलेटर में ऑफसेट (चिह्नित लाल) दर्ज करके सही क्षेत्र को फिर से जांचें और इसे 512 के माध्यम से विभाजित करें।

एक CoreStorage विभाजन के पहले 3 क्षेत्र इस तरह दिखते हैं:

सीएस

JHFS + के पहले 3 सेक्टर इस तरह दिखते हैं:

jhfs +

यदि आपको एक मौलिक रूप से अलग तस्वीर मिलती है तो यहां रुकें।

ईएफआई विभाजन कहाँ से शुरू होता है?

"ऑफसेट पर जाएं" -बटन को हिट करें और नीचे दिए गए चित्र की तरह 40 दर्ज करें:

EFI

यदि आप ऊपर की तस्वीर की तरह ही प्रविष्टियाँ देखते हैं (XEBSD 4.4 ... EFI ... FAT32) तो यह आपके EFI- विभाजन का प्रारंभ क्षेत्र है। यदि केवल शून्य हैं तो यह भी मान्य हो सकता है।

रिकवरी एचडी विभाजन कहाँ से शुरू होता है?

यह शायद सबसे कठिन हिस्सा है क्योंकि आपको एक स्ट्रिंग ढूंढनी है जो बहुत विशिष्ट नहीं है। अपने 2 डी विभाजन के अंत में कूदें (अपने मामले में ~ ~ 400 एमबी / 781250 से कम 1164570456 = 116373206)

फिर नीचे दिए गए चित्र की तरह "HFSJ" दर्ज करें, दो बार इस स्ट्रिंग को खोजें और विभिन्न ऑफसेट के नोट्स बनाएं:

rhd

विभाजन प्रकार के आधार पर आपके दो अलग-अलग परिणाम हो सकते हैं:

  1. पहले खोजने की सेक्टर संख्या की गणना करें। मेरे उदाहरण में (ऊपर चित्र देखें) यह 68069452800/512 = 132948150 है। खोज जारी रखें और दूसरे खोजने के क्षेत्र की गणना करें। मेरे मामले में यह 68069454848/512 = 132948154 (कोई तस्वीर नहीं) था।
    दो खोजने के बीच का अंतर 4 ब्लॉक (= 2 KB) है।

    यह JHFS + विभाजन और रिकवरी एचडी के बीच की सीमा के लिए विशिष्ट है। रिकवरी एचडी दूसरी खोज के क्षेत्र में शुरू होता है - 2 (मेरे उदाहरण में 132948154-2 = 132948152)।

  2. पहले खोजने की सेक्टर संख्या की गणना करें। मेरे उदाहरण में यह 67733904384/512 = 132292782 (कोई चित्र नहीं) था। खोज जारी रखें और दूसरे खोजने के क्षेत्र की गणना करें। मेरे मामले में यह 68069454848/512 = 132948154 (कोई तस्वीर नहीं) था। दो निष्कर्षों के बीच का अंतर 655372 (~ 336 एमबी) है

    यह एक CoreStorage विभाजन और रिकवरी एचडी के बीच की सीमा के लिए विशिष्ट है। रिकवरी एचडी दूसरी खोज के क्षेत्र में शुरू होता है - 2 (मेरे उदाहरण में 132948154-2 = 132948152)।

उन परिणामों के साथ आपको अपने GPT को ठीक से पुनर्स्थापित करने में सक्षम होना चाहिए। WxHexEditor से बाहर निकलें। यदि आपको परिवर्तन सहेजने के लिए कहा जाए तो उन्हें न सहेजें!

एक उचित GPT का पुनर्निर्माण करें

यहाँ मुझे लगता है कि आपकी मुख्य डिस्क का पहचानकर्ता डिस्क 0 है। सबसे पहले आपको अपनी मुख्य डिस्क को अनमाउंट करना होगा:

diskutil umountDisk disk0

विभाजन लेआउट की जाँच करें फिर पहले तीन विभाजन निकालें:

gpt -r -vv show /dev/disk0

gpt remove -i 3 disk0
gpt remove -i 2 disk0
gpt remove -i 1 disk0

चूंकि ईएफआई और रिकवरी एचडी में आमतौर पर निश्चित आकार होते हैं इसलिए हम आपके मुख्य वॉल्यूम के प्रारंभ और अंत ब्लॉक की गणना कर सकते हैं।

पहले हम ईएफआई का पुनर्निर्माण करते हैं:

gpt add -b 40 -i 1 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0

फिर हम मुख्य वॉल्यूम के आकार की गणना करते हैं: स्टार्ट ब्लॉक 409640 है। अंत ब्लॉक को "कहां रिकवरी एचडी विभाजन शुरू होता है?" खंड में पाया गया है: रिकवरी एचडी के स्टार्ट ब्लॉक से 1 कम। आकार तो StartBlockOfRecoveryHD-409640 है।

यदि आपको एक शास्त्रीय JHFS + पहले मिला है तो निम्नलिखित कमांड को विभाजन 2 को ठीक करना चाहिए:

gpt add -b 409640 -i 2 -s StartBlockOfRecoveryHD-409640 -t 48465300-0000-11AA-AA11-00306543ECAC disk0

यदि आपको कोरस्टोरेज विभाजन पहले मिला है तो निम्नलिखित कमांड को विभाजन 2 को ठीक करना चाहिए:

gpt add -b 409640 -i 2 -s StartBlockOfRecoveryHD-409640 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0

पुनर्प्राप्ति HD के पुनर्निर्माण के लिए:

gpt add -b StartBlockOfRecoveryHD -i 3 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0

रिमूव डिस्क ० के साथ:

diskutil mountDisk disk0

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

मुझे आशा है कि यह आपकी समस्याओं को हल करेगा।

यदि आप समस्याओं में भाग लेते हैं (जैसे कि आप अपने रिकवरी एचडी के उचित शुरुआती क्षेत्र को नहीं ढूंढ सकते हैं), तो संदेह या प्रश्न तुरंत बंद हो जाएं और मुझे एक टिप्पणी @klanomath के साथ संपर्क करें!

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