Здравствуйте!
Возникла необходимость изменить UUID в LBA2 (по смещению 0x10) в Pri GPT table и, соответственно в Sec GPT table. В принципе я могу это сделать, но не знаю как подсчитать CRC32 of header и CRC32 of partition array (обе по четыре байта) в GPT header (LBA1).
Имеющаяся в OS X утилита CRS32 если я считаю контрольную сумму с обнулёнными 4 байтами по смещению 0x10 в LBA1 даёт не соответствующий результат.
Вопрос:
ЧЯДНТ и как победить?
Заранее благодарен за помощь!
P.S.
Это нужно т.к. в NVRAM в частности записано:
efi-apple-recovery <array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>92C9B4A1-7CC2-4841-9EAC-C19FF21B06EB</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\EFI\APPLE\FIRMWARE\MBA41_0077_B15_LOCKED.scap</string></dict></array>%00
мне нужно заменить SSD, а терять возможность восстановления при сбое в BootROM не хочеться, а как БЕЗОШИБОЧНО переписать эту переменную в NVRAM я не знаю, а экспериментировать стрёмно.