Он узкоспециализированный и ограниченный, но gptsyncработает как приложение EFI. Эта программа изначально была частью заброшенного проекта REFIt. Я обновил его для ссылки, хотя. Обратите внимание, что gptsyncон используется исключительно для создания гибридных MBR, которые уродливы, опасны и имеют ограниченную полезность, поэтому я не рекомендую gptsyncдля общего использования; но для определенных специализированных случаев использования (таких как двойная загрузка Windows и OS X на Mac), это может быть полезным инструментом.
MariusMatutiae предложила использовать my gdisk, но она не доступна в качестве нативного приложения EFI. Это, вероятно, не будет в ближайшем будущем, потому что gdiskнаписано на C ++, и я не знаю доступного компилятора C ++ для EFI. Большинство приложений EFI написаны на C, и можно создавать приложения C под Linux с помощью GCC и наборов инструментов GNU-EFI или Tianocore. C ++ теоретически может быть скомпилирован для EFI с GCC, но большая часть библиотеки C ++ не поддерживается и в gdiskзначительной степени опирается на библиотеку C ++. Есть компилятор Intel C ++ для EFI, но он смехотворно дорогой (примерно 1000 долларов США, IIRC), поэтому я не собираюсь его покупать. Если бы кто-нибудь, имеющий доступ к этому компилятору, попытался бы построить gdiskдля EFI, я был бы рад помочь или принять патчи, но на данный момент это победило.
Более простым решением может быть порт partedили fdiskEFI. (До недавнего времени fdiskне поддерживал GPT; но последние версии поддерживают.) Однако я не рассматривал эту возможность.
На данный момент создание разделов можно выполнить, загрузив флэш-накопитель CD / DVD / USB. Конечно, это не так быстро , как запуск инструмента разбиения из оболочки EFI или менеджер загрузки EFI, но это не так, что медленно вставать и бежать. Разбиение диска - это задача, которую не нужно выполнять очень часто, за исключением, возможно, лабораторной работы, в которой проводится тестирование конфигурации оборудования или ОС и т. П.
ОБНОВИТЬ:
Как упоминалось в комментариях, проект по переносу GPT fdisk на EFI принес свои плоды в виде проекта UEFI GPT fdisk. По сути, это дополнительная библиотека, которая предоставляет подмножество функций C ++ для EFI - достаточно для создания gdiskдвоичного файла для EFI.
diskpart.efiисходный код, и он сильно отличается по организации от любого кода C, который я видел, на самом деле он больше похож на код Win32 ..