É altamente especializado e limitado, mas gptsync
é executado como um aplicativo EFI. Este programa era originalmente parte do projeto rEFIt, agora abandonado. Eu atualizei para rEFInd, embora. Observe que gptsync
é usado exclusivamente para criar MBRs híbridos , que são feios, perigosos e de utilidade limitada, então eu não recomendo gptsync
para uso geral; mas para certos casos de uso especializados (como o Windows dual-boot eo Mac OS X em um Mac), ele pode ser uma ferramenta útil.
MariusMatutiae sugeriu usar meu gdisk
, mas não está disponível como um aplicativo EFI nativo. Provavelmente não será em um futuro próximo, porque gdisk
está escrito em C ++ e não conheço nenhum compilador C ++ acessível para EFI. A maioria dos aplicativos EFI é escrita em C e é possível construir aplicativos C no Linux com o GCC e os kits de ferramentas GNU-EFI ou Tianocore. Em teoria, o C ++ pode ser compilado para o EFI com o GCC, mas a maior parte da biblioteca C ++ não é suportada e gdisk
depende muito da biblioteca C ++. Existe um compilador Intel C ++ para EFI, mas é ridiculamente caro (cerca de US $ 1.000, IIRC), então não vou comprá-lo. Se alguém com acesso a esse compilador se importar em tentar construir gdisk
para a EFI, eu ficaria feliz em ajudar ou aceitar patches, mas no momento isso não acontecerá.
Uma solução mais fácil pode ser a porta parted
ou fdisk
para EFI. (Até recentemente, fdisk
não suportava GPT; mas as versões mais recentes têm.) Eu não olhei para essa possibilidade, no entanto.
Por enquanto, o particionamento pode ser feito com a inicialização de uma unidade flash de CD / DVD / USB ao vivo. Concedido, isso não é tão rápido quanto lançar uma ferramenta de particionamento a partir de um shell EFI ou gerenciador de boot EFI, mas não é lento para ser instalado e executado. O particionamento de disco é uma tarefa que não deve ser executada com muita frequência, exceto talvez em um laboratório que faz testes de configurações de hardware ou SO ou algo semelhante.
ATUALIZAÇÃO:
Como mencionado nos comentários, o projeto para portar o fdisk da GPT para a EFI deu frutos, na forma do projeto fdisk da UEFI GPT . Esta é basicamente uma biblioteca complementar que fornece um subconjunto de recursos do C ++ para o EFI - o suficiente para construir o binário gdisk
para o EFI.