FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFFFF olarak ayarlanmış macOS bölümü başlatma birimini düzeltme girişimi başarısız oldu


1

Ben üst yanıtında talimatları izleyerek dün benim MacBook Pro (13-inç 2012 Orta) karşılaştı bir sorunu gidermeye çalıştı bu konuya . Korkarım, bölüm tablosunu uygun değerler yerine bu cevapta belirtilen değerlere yeniden yazarak verilerimi istemeden mahvetmiş olabilirim.

Sorunumdaki etkilenen disk ve birim disk2, birim 2'dir. Cilt 3, daha önce bilgisayarımda (disk1) koymak için bir yedekleme sürücüsü olduğumu hatırlamadan önce makroları sildiğim ve yüklediğim bir Bootcamp bölümü idi. İşte diskutil listbu çabanın başında koştuğum komutun sonuçları :

Trevors-MBP:~ trevorraney$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         499.9 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +499.9 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            487.3 GB   disk1s1
   2:                APFS Volume Preboot                 23.6 MB    disk1s2
   3:                APFS Volume Recovery                511.0 MB   disk1s3
   4:                APFS Volume VM                      3.2 GB     disk1s4

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF               439.9 GB   disk2s2
   3:                 Apple_APFS Container disk3         59.9 GB    disk2s3

/dev/disk3 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +59.9 GB    disk3
                                 Physical Store disk2s3
   1:                APFS Volume Untitled                12.9 GB    disk3s1
   2:                APFS Volume Preboot                 24.1 MB    disk3s2
   3:                APFS Volume Recovery                509.5 MB   disk3s3
   4:                APFS Volume VM                      2.1 GB     disk3s4

Bu sürücüyü düzeltmek için girdiğimde aşağıda girdim. Özellikle de komut sudo gpt add -i 2 -b 409640 -s 372637568 -t 7C3457EF-0000-11AA-AA11-00306543ECAC disk2. Şimdi disk2s2'nin 190 gigabayt olduğuna ve hatalı bir disk3 oluştuğuna dikkat edin.

Trevors-MBP:~ trevorraney$ gpt -r show /dev/disk2
gpt show: unable to open device '/dev/disk2': Permission denied
Trevors-MBP:~ trevorraney$ sudo gpt -r show /dev/disk2
Password:
      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  859181016      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
  859590656  116920320      3  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
  976510976     262111         
  976773087         32         Sec GPT table
  976773119          1         Sec GPT header
Trevors-MBP:~ trevorraney$ diskutil umountDisk disk2
Unmount of all volumes on disk2 was successful
Trevors-MBP:~ trevorraney$ gpt remove -i 2 disk2
gpt remove: unable to open device 'disk2': Permission denied
Trevors-MBP:~ trevorraney$ sudo gpt remove -i 2 disk2
disk2s2 removed
Trevors-MBP:~ trevorraney$ diskutil umountDisk disk2
Unmount of all volumes on disk2 was successful
Trevors-MBP:~ trevorraney$ gpt add -i 2 -b 409640 -s 372637568 -t 7C3457EF-0000-11AA-AA11-00306543ECAC disk2
gpt add: unable to open device 'disk2': Permission denied
Trevors-MBP:~ trevorraney$ sudo gpt add -i 2 -b 409640 -s 372637568 -t 7C3457EF-0000-11AA-AA11-00306543ECAC disk2
disk2s2 added
Trevors-MBP:~ trevorraney$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         499.9 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +499.9 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            487.3 GB   disk1s1
   2:                APFS Volume Preboot                 23.6 MB    disk1s2
   3:                APFS Volume Recovery                511.0 MB   disk1s3
   4:                APFS Volume VM                      3.2 GB     disk1s4

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:                 Apple_APFS Container disk3         190.8 GB   disk2s2
   3:                 Apple_APFS Container disk4         59.9 GB    disk2s3

/dev/disk3 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +ERROR      disk3
                                 Physical Store disk2s2

/dev/disk4 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +59.9 GB    disk4
                                 Physical Store disk2s3
   1:                APFS Volume Untitled                12.9 GB    disk4s1
   2:                APFS Volume Preboot                 24.1 MB    disk4s2
   3:                APFS Volume Recovery                509.5 MB   disk4s3
   4:                APFS Volume VM                      2.1 GB     disk4s4

Son olarak, diskutil verifyVolumedisk2s2'de çalıştırdıktan sonra aldığım hataların listesi .

Trevors-MBP:~ trevorraney$ diskutil verifyDisk disk2
Started partition map verification on disk2
Checking prerequisites
Checking the partition list
Checking the partition map size
Checking for an EFI system partition
Checking the EFI system partition's size
Checking the EFI system partition's file system
Checking the EFI system partition's folder content
Checking all HFS data partition loader spaces
Checking booter partitions
Checking Core Storage Physical Volume partitions
The partition map appears to be OK
Finished partition map verification on disk2
Trevors-MBP:~ trevorraney$ diskutil verifyVolume disk2s2
Started file system verification on disk2s2
Verifying storage system
Performing fsck_apfs -n -x /dev/disk2s2
warning: nx_block_count is 107397627, while device block count is 46579696
Checking the container superblock
warning: dev_read(60086901, 1): Device not configured
warning: dev_read(60086902, 1): Device not configured
warning: dev_read(60086903, 1): Device not configured
warning: dev_read(60086904, 1): Device not configured
warning: dev_read(60086905, 1): Device not configured
warning: dev_read(60086906, 1): Device not configured
warning: dev_read(60086907, 1): Device not configured
warning: dev_read(60086908, 1): Device not configured
warning: dev_read(60086909, 1): Device not configured
warning: dev_read(60086910, 1): Device not configured
warning: dev_read(60086911, 1): Device not configured
warning: dev_read(60086912, 1): Device not configured
warning: dev_read(60086913, 1): Device not configured
warning: dev_read(60086914, 1): Device not configured
warning: dev_read(60086915, 1): Device not configured
warning: dev_read(60086916, 1): Device not configured
warning: dev_read(60086917, 1): Device not configured
warning: dev_read(60086918, 1): Device not configured
warning: dev_read(60086919, 1): Device not configured
warning: dev_read(60086920, 1): Device not configured
warning: dev_read(60086921, 1): Device not configured
warning: dev_read(60086922, 1): Device not configured
warning: dev_read(60086923, 1): Device not configured
warning: dev_read(60086924, 1): Device not configured
warning: dev_read(60086925, 1): Device not configured
warning: dev_read(60086926, 1): Device not configured
warning: dev_read(60086927, 1): Device not configured
warning: dev_read(60086928, 1): Device not configured
warning: dev_read(60086929, 1): Device not configured
warning: dev_read(60086930, 1): Device not configured
warning: dev_read(60086931, 1): Device not configured
warning: dev_read(60086932, 1): Device not configured
warning: dev_read(60086933, 1): Device not configured
warning: dev_read(60086934, 1): Device not configured
warning: dev_read(60086935, 1): Device not configured
warning: dev_read(60086936, 1): Device not configured
warning: dev_read(60086937, 1): Device not configured
warning: dev_read(60086938, 1): Device not configured
warning: dev_read(60086939, 1): Device not configured
warning: dev_read(60086940, 1): Device not configured
warning: dev_read(60086941, 1): Device not configured
warning: dev_read(60086942, 1): Device not configured
warning: dev_read(60086943, 1): Device not configured
warning: dev_read(60086944, 1): Device not configured
warning: dev_read(60086945, 1): Device not configured
warning: dev_read(60086946, 1): Device not configured
warning: dev_read(60086947, 1): Device not configured
warning: dev_read(60086948, 1): Device not configured
warning: dev_read(60086949, 1): Device not configured
too many warnings generated; suppressing subsequent ones
error: no valid checkpoint found
Most recent checkpoint is invalid
The volume /dev/disk2s2 could not be verified completely
Storage system check exit code is 8
Error: -69716: Storage system verify or repair failed
Underlying error: 8
Trevors-MBP:~ trevorraney$

Bölümün APFS biçiminde olduğunu, ancak muhtemelen HFS + olabileceğini varsayıyorum. Disketi Terminal'de tamir etmeye çalışmadığım için yaptığım hasarın geri dönüşlü olduğunu ve verilerimin bir kısmını veya tamamını geri alabileceğimi umuyorum. Herhangi bir yardım çok takdir edilecektir.

Güncelleme: David Anderson tarafından önerildiği gibi sudo gpt -r show /dev/disk2ve çıkışını sudo dd if=/dev/disk2s2 count=1 bs=512 | hexdump -Cvyayınlamak.

    Last login: Sun Sep 30 11:56:40 on ttys000
    Trevors-MBP:~ trevorraney$ sudo gpt -r show /dev/disk2
    Password:
          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  372637568      2  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
      373047208  486543448         
      859590656  116920320      3  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
      976510976     262111         
      976773087         32         Sec GPT table
      976773119          1         Sec GPT header

 Trevors-MBP:~ trevorraney$ sudo dd if=/dev/disk2s2 count=1 bs=512 | hexdump -Cv
    1+0 records in
    1+0 records out
    512 bytes transferred in 0.001883 secs (271937 bytes/sec)
    00000000  1f 32 02 66 46 24 11 49  01 00 00 00 00 00 00 00  |.2.fF$.I........|
    00000010  a2 c1 0d 00 00 00 00 00  01 00 00 80 00 00 00 00  |................|
    00000020  4e 58 53 42 00 10 00 00  fb c1 66 06 00 00 00 00  |NXSB......f.....|
    00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000040  02 00 00 00 00 00 00 00  15 fa 6d 9a a2 2c 45 0f  |..........m..,E.|
    00000050  88 b8 c1 b8 2b c6 6b 13  7b 86 17 00 00 00 00 00  |....+.k.{.......|
    00000060  a3 c1 0d 00 00 00 00 00  18 01 00 00 30 6c 00 00  |............0l..|
    00000070  75 da 94 03 00 00 00 00  e3 01 94 03 00 00 00 00  |u...............|
    00000080  5d 00 00 00 e9 10 00 00  5b 00 00 00 02 00 00 00  |].......[.......|
    00000090  b4 10 00 00 35 00 00 00  ea b9 02 00 00 00 00 00  |....5...........|
    000000a0  04 a9 0e 00 00 00 00 00  01 04 00 00 00 00 00 00  |................|
    000000b0  00 00 00 00 64 00 00 00  03 04 00 00 00 00 00 00  |....d...........|
    000000c0  e1 b9 02 00 00 00 00 00  e3 b9 02 00 00 00 00 00  |................|
    000000d0  e5 5e 03 00 00 00 00 00  00 00 00 00 00 00 00 00  |.^..............|
    000000e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000000f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000100  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000110  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000120  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000130  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000140  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000150  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000160  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000170  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000180  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000190  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001b0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000200
    Trevors-MBP:~ trevorraney$ 

Ne tür bir bölüm disk2s2olması gerekiyordu. Başka bir deyişle, sorunu ilk başta oluşturmak için ne yaptınız?
David Anderson,

Hiçbir şey değil. Dizüstü bilgisayarımı indirdim ve geri geldim ve üzerinde yasak sembolü vardı. Disk SSD olduğundan ve Yüksek Sierra'ya yükselttiğim için APFS olduğuna inanıyorum, ancak HFS + olabileceğini göz ardı etmiyorum.
trevorraney 9

Her sürücü yalnızca bir APFS bölümüne sahip olmalıdır. Yanlışlıkla bir sürücüde birden fazla APFS bölümü oluşturmak mümkün olsa da, keşfettiğiniz gibi sonuçlar tahmin edilemez olabilir. Ben çıktısında bakarak başlamak herhalde sudo gpt -r show /dev/disk2ve sudo dd if=/dev/disk2s2 count=1 bs=512 | hexdump -Cv. Bu çıktıyı gönderir misiniz? Çıktıya bakardım. Bu noktada, sorunu çözebileceğim garantisi yok. Komutlar sadece bilgi üretir ve sürücülerinizi değiştirmez. Bu komutları çalıştırırken macOS'u dahili sürücüde başlatmalısınız.
David Anderson

@DavidAnderson çıktı ekledi.
trevorraney,

Yanıtlar:


1

Aşağıdaki komutu girdiniz. Bu komut yanlıştır.

sudo gpt add -i 2 -b 409640 -s 372637568 -t 7C3457EF-0000-11AA-AA11-00306543ECAC disk2

Aşağıda gösterilen komutu girmeliydin.

sudo gpt add -i 2 -b 409640 -s 859181016 -t 7C3457EF-0000-11AA-AA11-00306543ECAC /dev/disk2

Bu nedenle, son komutun şimdi doğru komutla değiştirildiği aşağıdaki komut sırasını yeniden girmeniz gerekir.

diskutil umountDisk disk2
sudo gpt remove -i 2 /dev/disk2
diskutil umountDisk disk2
sudo gpt add -i 2 -b 409640 -s 859181016 -t 7C3457EF-0000-11AA-AA11-00306543ECAC /dev/disk2

Not: Değişikliklerin geçerli olması için harici sürücüyü çıkarmanız gerekebilir.

Yukarıdaki komutları başarıyla girerseniz, çıktı sudo gpt -r show /dev/disk2aşağıdaki gibi görünmelidir.

          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  859181016      2  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC       
      859590656  116920320      3  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
      976510976     262111         
      976773087         32         Sec GPT table
      976773119          1         Sec GPT header

Yukarıdaki düzeltme çalışıyor olsa da, bu harici sürücüde iki APFS kabı bulundurmaya devam etmeniz gerektiği anlamına gelmez.

Örneğin, harici sürücünüzde hem Mojava hem de High Sierra'nın yüklü olması gerekiyorsa, her ikisini de tek bir APFS bölümündeki birimleri ayırmak için yüklemelisiniz.

Disk2s2'yi nasıl doğruladım bir APFS kapsayıcı bölümüdür.

Apple Dosya Sistemi Referansı ile başladım . Bir bölüm bir APFS kabı olduğunda, bölüm bir kapsayıcı superblock ( nx_superblock_t) ile başlar . Bu yapı 25. sayfada açıklanmıştır. Bu yapının başlangıcı aşağıda tekrarlanmıştır.

struct nx_superblock {
    obj_phys_t  nx_o;
    uint32_t    nx_magic;
    uint32_t    nx_block_size;
    uint64_t    nx_block_count;
              .
              .
              .
}
typedef struct nx_superblock nx_superblock_t;

İlk 512 baytlık onaltılık ve yazdırılabilir ASCII dökümü sağladınız disk2s2. Hem dökümünüzü hem de Apple Dosya Sistemi Referansını kullanarak aşağıdakileri belirledim.

  • Değer mx_magiconaltılı ofsette başlamalı 00000020ve "NXSB" karakter dizgisi olmalıdır. Damperin bunun doğru olduğunu gösteriyor.
  • Alanının değeri nx_block_size. Bu alan onaltılı ofsette başlayan 4 baytlık bir tamsayıdır 00000024. Bu değer, her APFS bloğunda bulunan bayt sayısını gösterir. Bu değeri okumak için, aşağıda verilmiş olan çöplükten gelen ham 4 bayt ile başlamanız gerekir.

    00 10 00 00
    

    Daha sonra, baytların tersine çevrilmesi gerekir. Intel işlemciler kullanıldığında bu tipiktir. Tersine çevrilen bayt, boşluklar ve önceki sıfırlar kaldırılmış olarak aşağıda gösterilmiştir.

    1000
    

    Bu değer, Hesap Makinesi uygulamasını kullanarak veya aşağıda gösterilen matematiği kullanarak onaltılıktan ondalık sayıya dönüştürülebilir.

    16*(16*(16*1+0)+0)+0 = 4096 bytes/APFS block
    
  • Alanının değeri nx_block_count. Bu alan onaltılı ofsette başlayan 8 baytlık bir tamsayıdır 00000028. Bu değer APFS kabında bulunan blok sayısını temsil eder. Bu değeri okumak için, aşağıda verilmiş olan çöplükten gelen ham 8 bayt ile başlamanız gerekir.

    fb c1 66 06 00 00 00 00
    

    Daha sonra, baytların tersine çevrilmesi gerekir. Tersine çevrilen bayt, boşluklar ve önceki sıfırlar kaldırılmış olarak aşağıda gösterilmiştir.

    666c1fb
    

    Bu değer, Hesap Makinesi uygulamasını kullanarak veya aşağıda gösterilen matematiği kullanarak onaltılıktan ondalık sayıya dönüştürülebilir.

    16*(16*(16*(16*(16*(16*6+6)+6)+12)+1)+15)+11 = 107397627 APFS blocks/container
    

    Not: Yukarıdaki denklemde, onaltılık harfler, ondalık eşdeğerleriyle değiştirildi. Aşağıda bu eşdeğerlerin bir tablosu var

    a hexadecimal = 10 decimal
    b hexadecimal = 11 decimal
    c hexadecimal = 12 decimal
    d hexadecimal = 13 decimal
    e hexadecimal = 14 decimal
    f hexadecimal = 15 decimal
    
  • APFS kabındaki mantıksal blokların sayısı. sudo gpt -r show /dev/disk2Komutlardan gönderilen çıktınız , her GPT tablosunun boyutunu gösterir (her ikisi de Pri GPT tableve Sec GPT table) 32 mantık bloğu, Bu Wikipedia referansını kullanarak , aşağıda gösterildiği gibi mantıksal blok boyutunu hesapladım.

    (128 entries) * (128 bytes/entry) / (32 logical blocks) = 512 bytes/logical block
    

    Bu nedenle, APFS bloklarından mantıksal bloklara dönüşüm, aşağıda gösterildiği gibi belirlenebilir.

    (4096 bytes/APFS block) / (512 bytes/Logical block) = 8 logical blocks/APFS block
    

    Bu nedenle, APFS kap boyutunu mantıksal bloğa dönüştürmek için aşağıda gösterildiği gibi 8 ile çarpmam gerekiyordu.

    (8 logical blocks/APFS block) * (107397627 APFS blocks/container) = 859181016 logical blocks/container
    

    Not: Bu, sudo gpt -r show /dev/disk2ikinci bölümün boyutu için görüntülenen orijinal komutunuzla aynıdır .

Yukarıdaki analize göre, sizin disk2s2bir JHFS + formatlı bölüm değil, bir APFS konteyner bölümü olduğunuz sonucuna vardım.

Bununla birlikte, hala JHFS + formatlı bir bölüme ayarlamayı denemek istiyorsanız, aşağıda gösterilen komutu kullanın.

sudo gpt add -i 2 -b 409640 -s 859181016 -t hfs /dev/disk2

Bunu bir şans vereceğim ama ya disk orijinal olarak HFS + ise? Bölüm tablosundaki diske HFS + formatı atamak için komutu çalıştırabilir miyim?
trevorraney

Bunun APFS olduğunu ve JHFS + olmadığını doğruladığınız için teşekkür ederiz. Önerdiğiniz komutları koştum ve verilerimin hala sürücüde olduğunu ve tamamen sağlam olduğunu söylemekten memnuniyet duyuyorum! Yardımlarınız için çok teşekkür ederim, çok müteşekkirim.
trevorraney
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.