После обновления до OS X Yosemite не доступен раздел с Windows

OS X Yosemite

У меня дома стоит iMac. Отличная машина, всё здорово, однако с OS X (изначально стоял Lion) я так и не подружился. Поэтому через неделю после покупки я поставил через BootCamp второй раздел с Windows 7 и успешно работаю именно с ней. Вместе с тем, я регулярно обновляю обе системы — и Windows, и OS X.

И вот неделю назад решил я обновиться до самой последней супер-пупер системы OS X Yosemite. Обновление прошло успешно, НО!

Такой подлянки я не ожидал. Windows больше не грузился — Missing Operating System.

Как оказалось, в процессе обновления макось побила раздел BootCamp, а именно, изменились сектора раздела, и , как следствие, слетела таблица NTFS.

Путь восстановления был не то чтобы труден, но долог.

Не торопитесь обновляться до OS X Yosemite если у вас стоит второй системой Windows!

Итак, для восстановления требуется:

  1. Проверить таблицу разделов
  2.  Проверить заголовки раздела NTFS
  3. Найти «правильные» позиции секторов начала и окончания раздела
  4. Внести изменения в таблицу GPT
  5. Прописать заново гибридный MBR
  6. Исправить загрузочную запись Windows

Поехали.

Посмотрим список дисков и выберем нужный нам (как правило disk0, в моей случае, так как еще стоит SSD — disk)

sudo diskutil list

diskutil cs list

sudo gpt -vv -r show /dev/disk1

sudo fdisk /dev/disk0

Сначала посмотрим заголовок раздела:

Sudo dd if=/dev/rdisk1s4 count=1 2>/dev/null | hexdump -C

Если раздел начинается с .R.NTFS значит скорее всего всё закончится хорошо 🙂 Если нет — потеряется скорее всего еще и предыдущий раздел на диске.

Затем посмотрим таблицу разделов, пусть и не правильную:
sudo gpt -vv -r show /dev/disk1

Наш раздел Windows есть, но с некорректным размером. У меня был больше 200 Gb.

Далее нам понадобится программа TestDisk, она позволит найти правильные сектора раздела. Скачать.

Запускаем:

sudo ./testdisk /dev/rdisk1

Скриншот 2015-03-04 01.42.56Скриншот 2015-03-04 01.43.07Скриншот 2015-03-04 01.42.13Скриншот 2015-03-04 01.43.17Скриншот 2015-03-04 01.43.33Скриншот 2015-03-04 01.43.42

 

 

 

 

 

Сканирование выполняется долго, у меня диск на 1Tb шел 20 часов.

Зато в итоге мы видим все правильные разделы NTFS. Нужно выбрать ближайший по начальному сектору предыдущего раздела (2) и приблизительно совпадающий по размеру. Нажав клавишу «P», можно посмотреть содержимое диска. Если в выбранной записи раздела присутствует папка System Volume Information, скорее всего это как раз тот раздел то нам нужен. Запишем значения его начального сектора и размера.

В моём случае это
D MS Data               586338304 1334859775 748521472

Он начинается почти сразу с небольшим положительным смещением за диском восстановления OS X (как мы видели в таблице разделов, предыдущий диск 3 заканчивается на секторе 586337623) и похож по размеру (208 Gb)

Посмотрим что у нас с таблицей GPT:

 

Далее начинаем шаманить. Нам нужно удалить некорректный раздел и вписать правильные значения, полученные с помощью TestDisk’a.

Для этого потребуется программа gdisk. Скачать.

 

Теперь необходимо восстановить гибридный MBR:

Перезагружается. Теперь диск с Windows должен снова стать доступен в OS X.

Ну и осталось только загрузиться с загрузочного диска Windows и выполнить восстановление загрузочной записи:

или bootrec.exe /rebuildBCD

Почитать об этом подробно можно в статье Microsoft

Всем успехов!

Комментарий ( 1 )

  1. nervasystem
    says:

    Спасибо за статью, но таки работать на маке под виндой это абсолютное извращение 🙂

Добавить комментарий

Ваш адрес электронной почты не будет опубликован. Обязательные поля отмечены знаком *

четыре + семь =

Яндекс.Метрика