Объем ОС отображается как тип 'FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF' [дубликат]

8

Вчера я попытался удалить раздел Ubuntu. Так как мой Mac (13 ", MBPro середина 2014 года) не загружается. Теперь я загружаюсь на Mac OS с копией с USB. Я следую за другой темой этого форума (например: Тип раздела внезапно FFFFFFFF-FFFF-FFFF- FFFF-FFFFFFFFFFFF, диск не монтируется ), и мой раздел тома изменяется с FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF на 48465300-0000-11AA-AA11-00306543ECAC . Но я все еще не могу загрузить его ...

мой / dev / disk0

Большое спасибо !

Николя Лоран
источник
Правильным типом среза 2 диска0 является, вероятно, 53746F72-6167-11AA-AA11-00306543ECAC (CoreStorage) в Сьерре или 7C3457EF-0000-11AA-AA11-00306543ECAC (APFS) в Высокой Сьерра
klanomath
Я попробовал 7C3457EF-0000-11AA-AA11-00306543ECAC, и я могу загрузиться! Большое вам спасибо @klanomath!
Николас Лоран и
@grgarside Есть лучшие вопросы и ответы, чтобы пометить этот вопрос как дубликат: восстановить данные из раздела, отображая как FFFF . На самом деле связаны д и а связан с FFFF .. типа раздела и в несвязанной Fusion Drive. Мой ответ здесь основан на предложенных дубликатах вопросов и ответов и расширен для включения разделов APFS. Поэтому он может даже стоять сам по себе (или вообще не дублировать ).
Кланомат
@klanomath А как насчет MacOS Мохаве? (По- 7C3457EF-0000-11AA-AA11-00306543ECACпрежнему ли это применимо к Mojave?) В настоящее время у меня возникла почти та же проблема, за исключением того, что это MacBook Pro в начале 2015 года, и я не испытываю проблему, из-за которой gpt -r show disk0выводится этот снимок экрана.
Эдрик
Неважно, 7C3457EF-0000-11AA-AA11-00306543ECACдолжно работать на Высшую Сьерру и выше. (Уже проверено: проверка файлов работает!)
Эдрик

Ответы:

12

Загрузочный раздел OS X (кроме Recovery HD) либо имеет GUID 48465300-0000-11AA-AA11-00306543ECAC для стандартного раздела OS X, GUID 53746F72-6167-11AA-AA11-00306543ECAC для раздела CoreStorage или GUID 7C3457EF -0000-11AA-AA11-00306543ECAC для тома APFS. FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF - это неизвестный тип раздела (но не такой раздел, как 000000-0000-0000 .... один).

GUID может быть изменен с помощью gpt. Вы можете добавлять, удалять и изменять таблицы разделов GUID с помощью gpt, когда все связанные диски размонтированы. Чтобы перенастроить разделы, загрузитесь со стороннего диска (например, Internet Recovery или флэш-накопитель установщика OS X).

При определенных обстоятельствах SIP должен быть отключен, чтобы изменить таблицу разделов GUID.


  • Загрузитесь в Internet Recovery Mode (или на сторонний диск).
  • Открыть терминал в меню Утилиты> Терминал
  • Получить обзор с diskutil list
  • Получите обзор вашего внутреннего диска с идентификатором диска, найденным в предыдущей команде. Ниже я предполагаю, что идентификатор вашего внутреннего диска равен disk0 (SSD) (замените его на тот, который вы нашли в вашей среде).

    gpt -r show disk0
    
  • Размонтировать диск0 с помощью diskutil umountDisk disk0
  • Затем удалите и повторно добавьте второй раздел того же размера, но правильного типа. Наиболее вероятный тип для disk0s2 на SSD с установленной в настоящее время Sierra: 53746F72-6167-11AA-AA11-00306543ECAC или с установленной High Sierra 7C3457EF-0000-11AA-AA11-00306543ECAC (поскольку предыдущий раздел CoreStorage был почти наверняка преобразован в APFS, а обновление Сьерры до Высокой Сьерры).

    Сьерра (CoreStorage):

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

    или

    Высокая Сьерра (APFS):

    gpt remove -i 2 disk0
    gpt add -i 2 -b 409640 -s 431203056 -t 7C3457EF-0000-11AA-AA11-00306543ECAC  disk0
    

    или

    стандартный раздел (HFSJ Extended):

    gpt remove -i 2 disk0
    gpt add -i 2 -b 409640 -s 431203056 -t 48465300-0000-11AA-AA11-00306543ECAC  disk0
    
  • Проверьте диск и том:

    diskutil verifyDisk disk0
    diskutil verifyVolume disk0s2
    

Загрузившись на USB-накопитель и войдя в систему как администратор, вы должны подготовиться к sudoуспешному выполнению команд gpt.


Если вы забыли версию своей системы или сделали несколько пользовательских разделов, вы все равно можете проверить первые блоки disk0s2 и определить правильный тип GUID:

Если вы загрузились на полноценную систему, вы можете использовать hexdump:

  • Размонтировать диск0 с помощью diskutil umountDisk disk0
  • hexdump первые 3 блока раздела FFFF ...:

    sudo dd if=/dev/disk0s2 count=3 | hexdump
    

    Следующий результат идентифицирует его как обычный раздел OS X:

    0000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000400 48 2b 00 04 80 00 21 00 48 46 53 4a 00 00 01 ff
    0000410 d3 8c 77 d3 d4 33 3c b0 00 00 00 00 d3 8c 5b b3
    0000420 00 00 02 a8 00 00 00 25 00 00 10 00 00 fe b7 f6
    0000430 00 fe 1e fa 00 ed 80 00 00 01 00 00 00 01 00 00
    0000440 00 00 10 f2 00 00 5a 9d 00 00 00 00 00 00 00 01
    0000450 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000460 00 00 00 00 00 00 00 00 7d 9d b0 3a 02 31 62 f0
    0000470 00 00 00 00 00 1f e0 00 00 1f e0 00 00 00 01 fe
    0000480 00 00 00 01 00 00 01 fe 00 00 00 00 00 00 00 00
    0000490 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    00004c0 00 00 00 00 00 60 00 00 00 60 00 00 00 00 06 00
    00004d0 00 00 0a 00 00 00 06 00 00 00 00 00 00 00 00 00
    00004e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000510 00 00 00 00 03 10 00 00 03 10 00 00 00 00 31 00
    0000520 00 03 ac 00 00 00 31 00 00 00 00 00 00 00 00 00
    0000530 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000560 00 00 00 00 05 40 00 00 05 40 00 00 00 00 54 00
    0000570 00 00 10 00 00 00 54 00 00 00 00 00 00 00 00 00
    0000580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000600
    

    Первое число - это число байтов в шестнадцатеричном формате: 0000000: 0; 0000600: 1536. * обозначает одинаковые строки. Это означает: первые два блока (0x000-0x3ff) - все нули.

    Раздел CoreStorage показывает некоторые ненулевые значения в первом блоке (0x000-0x1ff):

    0000000 0c 73 a1 a9 ff ff ff ff 01 00 10 00 07 14 d7 01
    0000010 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000030 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000040 00 20 c1 cc 0f 00 00 00 00 00 00 00 00 00 00 00
    0000050 00 00 00 00 00 00 00 00 43 53 01 00 00 00 04 00
    0000060 00 10 00 00 00 00 40 00 11 bc fc 00 00 00 00 00
    0000070 11 c0 fc 00 00 00 00 00 11 c4 fc 00 00 00 00 00
    0000080 11 c8 fc 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00000a0 00 00 00 00 00 00 00 00 10 00 00 00 02 00 00 00
    00000b0 62 02 98 59 ee a9 ab 51 9b 49 23 90 2e f8 8b 43
    00000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000130 e4 6e f8 f2 63 99 45 c1 b2 13 86 28 a5 18 46 6d
    0000140 c4 51 c0 f6 32 f9 43 ab 8e 59 42 d2 1a ef f6 50
    0000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000400 48 2b 00 04 80 00 21 00 48 46 53 4a 00 00 01 ff
    0000410 d1 98 a4 93 d4 33 8b d5 00 00 00 00 d1 98 88 73
    0000420 00 06 07 53 00 01 82 39 00 00 10 00 00 fb 6a 00
    0000430 00 c5 1c 55 00 25 73 c7 00 01 00 00 00 01 00 00
    0000440 00 0d e2 65 00 3e a2 fb 00 00 00 00 02 20 00 fb
    0000450 00 00 00 31 00 06 b9 ef 00 00 00 00 00 00 00 00
    0000460 00 00 00 00 00 00 00 31 fb 48 1e a0 6c 47 a2 9f
    0000470 00 00 00 00 00 1f e0 00 00 1f e0 00 00 00 01 fe
    0000480 00 00 00 01 00 00 01 fe 00 00 00 00 00 00 00 00
    0000490 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    00004c0 00 00 00 00 00 60 00 00 00 60 00 00 00 00 06 00
    00004d0 00 00 0a 00 00 00 06 00 00 00 00 00 00 00 00 00
    00004e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000510 00 00 00 00 0e 40 00 00 01 30 00 00 00 00 e4 00
    0000520 00 00 10 00 00 00 e4 00 00 00 00 00 00 00 00 00
    0000530 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000560 00 00 00 00 11 d0 00 00 01 30 00 00 00 01 1d 00
    0000570 00 02 80 00 00 00 72 00 00 13 30 97 00 00 13 00
    0000580 00 15 c5 aa 00 00 13 00 00 18 2d 23 00 00 13 00
    0000590 00 19 d8 fb 00 00 13 00 00 1b 76 cb 00 00 13 00
    00005a0 00 1c 34 70 00 00 13 00 00 1d 0e 4d 00 00 13 00
    00005b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    0000600
    

    Строка, начинающаяся с байта 0x130, показывает UUID физического тома, строка, начинающаяся с байта 0x140, показывает UUID группы логических томов.

    Строка 48 46 53 4a (= "HFSJ") в первых 16 байтах третьих блоков идентифицирует журнализированный том HFS + для обоих типов разделов.

    Контейнер APFS выглядит следующим образом:

    0000000 e7 ec ab 5b a2 94 96 44 01 00 00 00 00 00 00 00
    0000010 18 0c 00 00 00 00 00 00 01 00 00 80 00 00 00 00
    0000020 4e 58 53 42 00 10 00 00 f6 37 ff 00 00 00 00 00
    0000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000040 02 00 00 00 00 00 00 00 11 f1 5e 40 31 10 4c 20
    0000050 bb 47 53 66 7e 8b 42 d5 b9 c4 00 00 00 00 00 00
    0000060 19 0c 00 00 00 00 00 00 18 01 00 00 18 6c 00 00
    0000070 01 00 00 00 00 00 00 00 19 01 00 00 00 00 00 00
    0000080 21 00 00 00 80 5a 00 00 1f 00 00 00 02 00 00 00
    0000090 7a 5a 00 00 06 00 00 00 00 04 00 00 00 00 00 00
    00000a0 37 fd 03 00 00 00 00 00 01 04 00 00 00 00 00 00
    00000b0 00 00 00 00 64 00 00 00 02 04 00 00 00 00 00 00
    00000c0 06 04 00 00 00 00 00 00 08 04 00 00 00 00 00 00
    00000d0 66 a4 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    00003d0 00 00 00 00 00 00 00 00 16 21 06 00 00 00 00 00
    00003e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    *
    00004f0 00 00 00 00 00 00 00 00 91 3d 0f 00 00 00 00 00
    0000500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    0000510 78 f4 09 00 00 00 00 00 01 00 00 00 00 00 00 00
    0000520 01 00 04 00 08 00 00 00 00 00 00 00 00 00 00 00
    0000530 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    

    Строка 4e 58 53 42 (= "NXSB"), начинающаяся с байта 0x020 в первом блоке, является магической строкой суперблока контейнера APFS и идентифицирует ее как контейнер APFS. UUID контейнера начинается с 0x48 (здесь: 11 f1 5e 40 ...)

Если вы ограничены режимом восстановления (Интернет) или загрузочным диском установщика (все с базовой системой, которая не содержит hexdump ), вы все равно можете использовать vis:

  • Размонтировать диск0 с помощью diskutil umountDisk disk0
  • Посмотрите первые 3 блока раздела FFFF ...:

    dd if=/dev/disk0s2 count=3 | vis -c
    

    Если у вас был стандартный раздел, ранее первые 1024 байта содержали только непечатаемые (нули): \0\0\0\0\0\0... после ~ байта 1030 вы увидите следующую последовательность: \ 0HFSJ \ 0

    Если у вас был раздел CoreStorage, некоторые ненулевые значения в первых 512 байтах и ​​строка CS ( ...\0CS\^A...) отображаются:

    \^U\^D\^A\M-s\M^?\M^?\M^?\M^?\^A\0\^P\0\0\0\M-W\^A\a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Pu\M-\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0CS\^A\0\0\0\^D\0\0\^P\0\0\0\0@\0X\M-7}\^C\0\0\0\0X\M-;}\^C\0\0\0\0X\M-?}\^C\0\0\0\0X\M-C}\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\^B\0\0\0006j v\^R\M-+\^U\M^[\f\M^CdG\M-y\^]...
    

    Если у вас был раздел APFS, строка NXSB ( ...\0NXSB\0\^P...) показывается в первых нескольких байтах:

    ??[?\M^T\M^VD\^A\0\0\0\0\0\0\0\^X\f\0\0\0\0\0\0\^A\0\0\M^@\0\0\0\0NXSB\0\^P\0\0?7?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^B\0\0\0\0\0\0\0\^Q?^@1\^PL ?GSf~\M^KBչ?\0\0\0\0\0\0\^Y\f\0\0\0\0\0\0\^X\^A\0\0\^Xl\0\0\^A\0\0\0\0\0\0\0\^Y\^A\0\0\0\0\0\0!\0\0\0\M^@Z\0\0\^_\0\0\0\^B\0\0\0zZ\0\0\^F\0\0\0\0\^D\0\0\0\0\0\0007?\^C\0\0\0\0\0\^A\^D\0\0\0\0\0\0\0\0\0\0d\0\0\0\^B\^D\0\0\0\0\0\0\^F\^D\0\0\0\0\0\0\b\^D\0\0\0\0\0\0f?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
    
klanomath
источник
Я просто хотел отослать вас к этому вопросу о награде, если вы его не видели. Это относится к вашему ответу здесь, так думал , что вы можете быть в состоянии помочь.
Monomeeth
Этот пост помог мне исправить мою проблему после разметки моего диска для Linux. Огромное спасибо. У меня просто вопрос. Я получил много предупреждений во время diskutil verifyVolume(xattr?), Но в конце он сказал, что все в порядке, и это было. Эти предупреждения нормальны?
pixelomer
Просматривая ваши ответы, я удивляюсь, почему vis -cвывод, отправленный некоторыми пользователями, является обратимым, в то время как другой вывод содержит много ?символов, что делает вывод необратимым. На моем Mac я должен сначала войти export LC_CTYPE="ASCII"перед использованием vis -cwили vis -cfwсоздать обратимый вывод.
Дэвид Андерсон
@DavidAnderson "... вывод, опубликованный некоторыми пользователями, обратим ..." Можете ли вы связать соответствующий вопрос, ответ или комментарий ИЛИ это проблема реального мира?
кланомат
Это касается этого вопроса и этого вопроса . В первом вопросе я смог инвертировать vis -cвывод, чтобы получить размер раздела. Во втором вопросе я не смог, потому что вывод содержал ?знаки вопроса ( ). Это привело меня к исследованию того, как сделать вывод обратимым.
Дэвид Андерсон