„Хитрая“ загрузочная флешка OS X, совместимая с Windows

Флешка SanDisk Флешка SanDisk в упаковке
Флешка SanDisk 64 Gb, Apple Store Exclusive

Приглянулась мне флешка SanDisk на 64 Gb с USB 3.0, которая продаётся эксклюзивно в Apple Store. Заказал в ноябре, ждал доставки четыре месяца, и вот наконец этот замечательный девайс у меня в руках!

Подоплёка покупки была следующей: начать избавляться от вороха флешек, которые у меня скопились за последние годы, объединив в одной ёмкой и быстрой (и, надеюсь, надёжной) флешке два устройства:
1. Накопитель-челнок для эпизодического переноса больших файлов;
2. Загрузочный том для диагностики и аварийного восстановления / переустановки OS X.

Загрузочный диск для OS X должен быть разбит на разделы с использованием схемы GPT, а один из них, в свою очередь, должен быть отформатирован в HFS+. Поскольку Windows не поддерживает GPT без специального драйвера, на флешке должны присутствовать два раздела – один, загрузочный для OS X, в HFS+, и второй, обычный, желательно в exFAT.

Засада в том, что если OS X нормально работает с флешками, содержащими несколько разделов, то проклятая Windows воспринимает на съёмном носителе-флешке только первый том, независимо от того, используется ли там стандартный MBR, или же GPT. Более того, поскольку в схеме разбивки GPT первый раздел размером 200 Mb является „защитным“, то Windows „увидит“ лишь 200 Mb. Решение проблемы – использовать гибридный MBR, который будет обманывать Windows, убеждая операционную систему в том, что на флешке находится единственный (большой) раздел. Нормальная операционная система – OS X – будет читать GPT, а не MBR, и увидит все разделы. Штатными средствами операционной системы записать гибридный MBR невозможно, нужно пользоваться специальными инструментами. Но на самом деле всё не так сложно, как может показаться из подробного сопроводительного документа к GPT Fdisk.

Если вы хотите сделать для себя что-то подобное – флешку, содержащую два и более разделов, и совместимую одновременно с OS X и Windows, – следуйте инструкциям.

Для начала взвесьте все „за“ и „против“, о чём подробно пишет Rod Smith в своей статье по GPT Fdisk. Если возможные проблемы вас не пугают, приступаем к делу.
Вообще говоря, у меня не было сложностей с подключением „хитрой“ флешки к компьютерам с Windows XP sp3, Windows 7, Windows 10, OS X, всё в порядке.

В процессе подготовки „хитрой“ флешки будет три последовательных этапа: разбивка на разделы, запись загрузчика OS X и конфигурация гибридного MBR.

1. Разбивка флешки на разделы

Чтобы создать на флешке два раздела, можно воспользоваться стандартной Disk Utility в OS X, однако мне не понравилось, что она расточительно оставляет по 200 Mb после каждого раздела. Вместо Disk Utility я использовал Paragon Hard Disk Manager for Mac.

Paragon Hard Disk Manager
Paragon Hard Disk Manager

На загрузочный раздел с OS X следует выделить примерно 7 Gb дискового пространства, 6.8 Gb, если быть точным. Оставшееся пространство можно использовать для создания большого универсального раздела.

После разбивки на разделы флешка будет выглядеть в Disk Utility примерно так:

Разделы на флешке SanDisk в Disk Utility
Разделы на флешке SanDisk в Disk Utility

Теперь нужно записать на флешку загрузчик OS X.

2. Запись загрузчика OS X

О том, как создать загрузочную флешку OS X, довольно подробно написано в документации Apple. Просто следуем инструкции.

Сначала скачиваем из Mac App Store приложение Install OS X El Capitan, после чего в Терминале переходим в папку приложения:
cd "/Applications/Install OS X El Capitan.app/Contents/Resources"

Записываем загрузочный раздел на флешку:
sudo ./createinstallmedia --volume /Volumes/elcap --applicationpath "/Applications/Install OS X El Capitan.app" --nointeraction
Password:
Erasing Disk: 0%... 10%... 20%... 30%...100%...
Copying installer files to disk...
Copy complete.
Making disk bootable...
Copying boot files...
Copy complete.
Done.

Чтобы программа не задавала лишних вопросов, использовали флаг --nointeraction.

В процессе работы утилита createinstallmedia форматирует раздел, который вы указали (но не всю флешку, схема разбивки диска на разделы сохраняется), записывает туда установочные файлы, и делает раздел загрузочным.
На флешке с USB 3.0 запись (и, уж подавно, чтение!) идёт довольно быстро.

Загрузочный раздел готов. Чтобы проверить, всё ли в порядке, можно перезагрузить компьютер, удерживая при включении Alt. В списке загрузочных томов должен появиться раздел с флешки.

Теперь самое время записать гибридный MBR.

3. Создание гибридного MBR

Для работы понадобится инструмент GPT Fdisk. Программа бесплатная, с очень хорошей документацией.

Установив GPT Fdisk, в Терминале выполняем команду от имени администратора:
sudo gdisk /dev/disk3
Password:
GPT fdisk (gdisk) version 1.0.1
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Partition table scan:
  MBR: hybrid
  BSD: not present
  APM: not present
  GPT: present
Found valid GPT with hybrid MBR; using GPT.
Command (? for help):

где /dev/disk3 – имя устройства (флешки) в UNIX-системе.

Вводим p, чтобы посмотреть схему разделов на флешке:
p
Disk /dev/disk3: 121438208 sectors, 57.9 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 63EF743D-3FD7-4D57-A2FE-005C1D2B7CAC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 121438174
Partitions will be aligned on 8-sector boundaries
Total free space is 8125 sectors (4.0 MiB)
Number  Start (sector)    End (sector)  Size       Code  Name
   1               40          409639   200.0 MiB  EF00  EFI System Partition
   2           413696       108150783   51.4 GiB   0700  Windows_NTFS_Untitl...
   3        108150784       121434111   6.3 GiB    AF00  elcap
Command (? for help):

Далее вводим r, чтобы перейти в режим преобразования и восстановления таблицы разделов:
r
Recovery/transformation command (? for help):

Вводим h, чтобы создать гибридный MBR на флешке:
h
WARNING! Hybrid MBRs are flaky and dangerous! If you decide not to use one,
just hit the Enter key at the below prompt and your MBR partition table will
be untouched.
Type from one to three GPT partition numbers, separated by spaces, to be
added to the hybrid MBR, in sequence:

Нас предупреждают о том, что гибридный MBR – дело небезопасное.
Это мы вроде как понимаем, идём дальше.

Чтобы продолжить, нужно ввести номера разделов GPT в том порядке, в котором они будут представлены в записи MBR. Поскольку у нас „основной“ большой раздел идёт в GPT под вторым номером, а в MBR он должен стать первым, то указываем сначала его. Далее через пробел пишем единицу („защитный“ раздел), и напоследок 3 – загрузочный раздел для OS X.

Вводим 2 1 3:
2 1 3
Place EFI GPT (0xEE) partition first in MBR (good for GRUB)? (Y/N):

Устанавливать первым GPT-раздел нам не нужно, вводим n:
n
Creating entry for GPT partition #2 (MBR partition #1)
Enter an MBR hex code (default 07):

Нас просят ввести hex-код раздела для MBR (тип раздела). Ничего придумывать не нужно, просто переписываем код, который предлагает программа по умолчанию:
07
Set the bootable flag? (Y/N):

Теперь у нас спрашивают, нужно ли делать раздел загрузочным. Для Windows большой раздел, отформатированный в exFAT, делать загрузочным нет смысла. Здесь и далее на аналогичный вопрос отвечаем „нет“ (n):
n
Creating entry for GPT partition #1 (MBR partition #2)
Enter an MBR hex code (default EF): EF
Set the bootable flag? (Y/N): n
Creating entry for GPT partition #3 (MBR partition #3)
Enter an MBR hex code (default AF): AF
Set the bootable flag? (Y/N): n
Recovery/transformation command (? for help):

Всё готово, осталось записать наши изменения на флешку.
Вводим w и соглашаемся с предупреждением:
w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/disk3.
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Warning: The kernel may continue to use old or deleted partitions.
You should reboot or remove the drive.
The operation has completed successfully.

На этом этапе создание гибридного MBR завершено. Осталось отключить и заново подключить флешку, и протестировать работоспособность конфигурации гибридного MBR.

При перезагрузке Mac удерживаем нажатым Alt, и если всё в порядке, то наряду с внутренним накопителем Mac по-прежнему должна отображаться загрузочная флешка.
Теперь хорошо бы проверить, как флешка распознаётся и читается в Windows.

4. Тестирование флешки

Подключаем флешку к компьютеру под управлением Windows 7 и открываем Мой компьютер.

Флешка с гибридным MBR в Windows
Флешка с гибридным MBR в Windows 7

Всё в порядке, флешка определяется, и в Проводнике (Explorer) монтируется именно тот раздел (большой), который нужен. Windows видит, что он отформатирован в exFAT, и может без проблем читать и записывать файлы.

В Диспетчере устройств (Device Manager) флешка отображается так:

Флешка с гибридным MBR в Диспетчере устройств Windows
Флешка с гибридным MBR в Диспетчере устройств Windows

Отлично! Всё работает — и на OS X, и на Windows. „Хитрая“ флешка готова к ежедневному использованию.

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