OS X использует специальные скрытые разделы для различных вещей, таких как драйверы EFI/Open Firmware RAID и т. д., в дополнение к стандартным разделам HFS+. И это даже без учета CoreStorage.
Все, что вы пытаетесь сделать, вероятно, обречено на провал по двум причинам:
- Количество разделов автоматически изменяется ОС на регулярной основе в зависимости от конфигурации оборудования в ответ на незначительные события, такие как обновления программного обеспечения, обновления прошивки и т. д.
- Пользователь может так же легко загрузить другую ОС с внешнего диска, поэтому, что бы вы ни пытались предотвратить (может быть, какая-то защита от копирования?), ища другую ОС, вам не удастся предотвратить это в туда.
Другими словами, я бы посоветовал даже не думать о том, чтобы пойти по этому пути. Так лежит безумие.
Лучшее, что вы можете реально сделать, это иметь черный список типов разделов и/или GUIDS, которые вы игнорируете, включая EFI, Apple_Boot (восстановление), Apple_CoreStorage, GUID_partition_scheme и, возможно, несколько других, в зависимости от того, хотите ли вы разрешить RAID. Вот список GUID, которые могут помочь:
https://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_type_GUID
А если серьезно, просто не делай этого.
person
dgatwood
schedule
23.08.2015