Создание раздела Recovery HD вручную
Всем привет.
Все мы знаем, что если с системой возникают какие-то проблемы, её можно переустановить. С этим нам помогает раздел Recovery. При чистой установке системы, он создаётся автоматически, но случается такое, что вы устанавливаете macOS после Windows (что является неправильным) или вы случайно/намеренно удалили раздел Recovery HD. Что же делать в таком случае, если система уже установлена, а сносить и заново её устанавливать нет возможности?
Возможно, на просторах интернета гуляет подобное решение, но я опишу, так как делал я.
Небольшая предыстория.
У меня была установлена macOS 10.13.1 developer beta на APFS. Так как работа этой файловой системы меня не устраивала, мне захотелось октатиться на HFS+ путем чистой переустановки. Беда была в том, что уже была установлена Windows, и после удаления APFS контейнера пропал раздел Recovery. Система 10.13 у меня почему-то на отрез отказывалась устанавливаться, поэтому я восстановил на пустой раздел бэкап 10.12.6 из Time Machine. После восстановления, раздел Recovery не появился. Я спокойно с 10.12.6 обновился до 10.13. Recovery раздела по-прежнему не было.
Пару дней назад я решил обновиться с 10.13 до 10.13.1, и каково было моё удивление, что установка системы на завершающем третьем этапе просто не доходит до конца и выбрасывает на рабочий стол с ошибкой.
Через пару дней, вчера, тоже попытался поставить систему, и выбивало на той же ошибке.
Недолго подумав, я сразу понял, что ошибка в отсутствии раздела Recovery HD. Соответственно начал гуглить, как его восстановить. Методов было много, все они были написаны при царе горохе, и они не подходили.
Я решил поступить просто: а что, если отрезать раздел от системы вручную, из бэкапа системы достать файлы с раздела Recovery, и назначить тип раздела Apple_Boot? Это я и буду описывать в следующих шагах.
Создание Recovery раздела.
1. Отделяем новый раздел.
Как выглядела примерно моя разметка диска в команде “diskutil list”.
╭─vlad@MacBook-Pro-Vlad.local ~ ╰─➤ diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *120.0 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 78.9 GB disk0s2 3: Microsoft Reserved 134.2 MB disk0s3 4: Microsoft Basic Data Windows 40.0 GB disk0s4 /dev/disk1 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *500.1 GB disk1 1: Microsoft Basic Data Files 151.3 GB disk1s1 2: Apple_HFS Time Capsule 348.7 GB disk1s2
Как мы прекрасно видим, Recovery HD раздел после Macintosh HD отсутствует.
В дисковой утилите я отделил раздел размером 650 МБ от основного.
После этого, разметка выглядела вот так:
╭─vlad@MacBook-Pro-Vlad.local ~ ╰─➤ diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *120.0 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 78.9 GB disk0s2 3: Apple_HFS Recovery HD 650.0 MB disk0s3 4: Microsoft Reserved 134.2 MB disk0s4 5: Microsoft Basic Data Windows 40.0 GB disk0s5 /dev/disk1 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *500.1 GB disk1 1: Microsoft Basic Data Files 151.3 GB disk1s1 2: Apple_HFS Time Capsule 348.7 GB disk1s2
2. Меняем тип раздела.
Вроде-бы все правильно, но есть одно но. Тип Recovery раздела должен быть Apple_Boot, а не Apple_HFS. Что же, будем менять. Открываем терминал и вводим команды:
diskutil unmount /dev/disk0s3 sudo asr adjust --target /dev/disk0s3 --settype "Apple_Boot"
Внимание: цифры /dev/disk0s3 могут у вас отличаться!
Проверяем вывод команды diskutil list. Убеждаемся, что всё верно.
╭─vlad@MacBook-Pro-Vlad.local ~ ╰─➤ diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *120.0 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 78.9 GB disk0s2 3: Apple_Boot Recovery HD 650.0 MB disk0s3 4: Microsoft Reserved 134.2 MB disk0s4 5: Microsoft Basic Data Windows 40.0 GB disk0s5 /dev/disk1 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *500.1 GB disk1 1: Microsoft Basic Data Files 151.3 GB disk1s1 2: Apple_HFS Time Capsule 348.7 GB disk1s2
3. Переносим содержимое.
Теперь нам остаётся скинуть файлы Recovery раздела из бэкапа.
Делюсь с вами своим бэкапом, он от системы 10.13.1, работоспособность с 10.12.6 не проверял.
Вам нужно закинуть папку com.apple.recovery.boot в корень раздела Recovery HD, перед этим его нужно смонтировать командой:
diskutil mount /dev/disk0s3
Вот так будет выглядеть содержимое Recovery раздела:
Если вы вы внимательно следовали инструкции, значит вы всё правильно сделали и можете спокойно обновлять систему!
Оригинальный материал: Влад Деригин
©OSXPC.ru, 2018 год.
В раздаче OS X FOR BDU – ACTUALLY BUILDS есть пакеты для развертывания на целевой ОС раздела Recovery HD.
https://mac-ru.net/viewtopic.php?t=41
RecoveryHDUpdate.13A603.Mavericks
RecoveryHDUpdate.14D131.Yosemite
RecoveryHDUpdate.15C50.El_Capitan
RecoveryHDUpdate.16B2657.Sierra
RecoveryHDUpdate.17E199.HighSierra
“Просто запусти пакет” 🙂