O carregador de inicialização substituto é EFI/BOOT/bootx64.efi
na partição do sistema EFI (ESP) . A última vez que verifiquei isso é onde o FreeBSD armazena seu gerenciador de inicialização por padrão. Isso é um pouco estranho e potencialmente desatento a outros sistemas operacionais - se todos os sistemas operacionais usassem o nome do arquivo do carregador de boot, todos estariam atropelando os gerenciadores de inicialização, como acontece no BIOS. (Uma das vantagens da EFI é que ela suporta explicitamente um número arbitrariamente grande de arquivos do carregador de boot, evitando assim esse problema de BIOS.)
Em qualquer caso, você tem algumas opções:
-
Renomeie o gerenciador de partida do FreeBSD ou seu diretório - Se você renomear
EFI/BOOT
no ESP paraEFI/FreeBSD
, deverá ver seu ícone mudar em rEFInd. Da mesma forma, se você renomearEFI/BOOT/bootx64.efi
paraEFI/BOOT/freebsd.efi
, deverá ver seu ícone mudar. Ambas as opções têm a vantagem de que algum sistema operacional ou ferramenta futura seria capaz de instalar seu próprio carregador de boot de fallback sem destruir o carregador de boot do FreeBSD; mas da mesma forma, se uma atualização do pacote do FreeBSD resultar em um carregador de boot melhorado do FreeBSD sendo instalado, ele aparecerá como uma nova entrada de fallback em rEFInd, e a entrada com o ícone do FreeBSD em rEFInd não ser atualizado. Você precisará copiar ou renomear manualmente o novo gerenciador de inicialização, assim como fez o original para aplicar a atualização. -
Aplique um ícone ao carregador de inicialização substituto - Existem algumas maneiras de aplicar ícones ao carregador de inicialização substituto sem renomear ou movê-lo, conforme descrito aqui na documentação do rEFInd. O mais simples é copiar
EFI/refind/icons/os_freebsd.png
toEFI/BOOT/bootx64.png
no ESP. (Ou seja, para dar ao arquivo de ícone o mesmo nome do próprio carregador de boot, mas com uma extensão.png
.) Observe que essa abordagem resultará em uma vulnerabilidade: Caso algo mais decida usar o nome do arquivo do carregador de inicialização substituto, A instalação do FreeBSD se tornará não inicializável até que você reinstale o carregador de inicialização do FreeBSD. OTOH, atualizações para o gerenciador de inicialização do FreeBSD devem se aplicar de forma transparente.
Observe que essas duas opções exigem que você acesse o ESP. Esta partição não é montada por padrão no OS X, mas o script mountesp
que vem com o rEFInd irá montá-lo e informar onde ele está montado. Eu não sei de improviso se o FreeBSD monta o ESP por padrão. Se não, você precisa montá-lo com o comando mount_msdosfs
, se eu lembrar o nome do comando corretamente. Você precisaria fornecer opções para identificar o ESP e um ponto de montagem.
Criar uma sub-rotina de inicialização manual, como você está tentando fazer, também pode funcionar; mas, em seguida, você precisaria ocultar os carregadores de inicialização detectados automaticamente ou criar uma entrada para o OS X também. Criar uma sub-rotina de inicialização manual requer um entendimento relativamente profundo dos arquivos do carregador de boot EFI, bem como a sintaxe dessas sub-rotinas de inicialização. É muito mais fácil renomear um gerenciador de inicialização ou adicionar um arquivo de ícone, como eu sugeri.