Inicialização dupla do OS X ou macOS com Linux sem rEFInd

18

Eu acho que o título resume bastante o conteúdo deste post. Gostaria de inicializar duas vezes um macbook pro 13 'sem precisar usar um carregador de inicialização de terceiros. Todos os tutoriais que encontrei usam o rEFIt o rEFInd para inicializar com êxito o Linux quando foi instalado, mas não me sinto confortável com a idéia de eliminar o gerenciador de inicialização padrão da Apple quando, para mim, é a melhor coisa quando se trata para boot-loaders que eu já vi.

Existe alguma maneira de fazer isso?

Obrigado!


fonte

Respostas:

18

O Ubuntu instala o grub e outros arquivos na primeira partição do sistema EFI em um computador Mac. Normalmente, esta é a primeira partição em um computador Mac. O processo de fazer o Ubuntu aparecer no Gerenciador de Inicialização é bastante trivial. Os passos são dados abaixo.

Nota: A partir do Ubuntu 18, o software de instalação deve criar automaticamente os arquivos necessários para inicializar o Ubuntu em um Mac. Portanto, os usuários do Ubuntu 18 e posteriores devem poder pular as etapas 5 e 6.

  1. Instale o Ubuntu.
  2. Quando terminar, reinicie e mantenha pressionada a optiontecla para chamar o Gerenciador de Inicialização. Selecione para inicializar a partir do volume OS X (ou MacOS).
  3. Abra uma janela do aplicativo Terminal.

  4. Monte a partição do sistema EFI digitando o comando fornecido abaixo.

    diskutil mount disk0s1
    
  5. Crie uma pasta chamada Bootna pasta /Volumes/EFI/EFI. Você pode usar o aplicativo Finder ou inserir o comando fornecido abaixo.

    mkdir /Volumes/EFI/EFI/Boot
    
  6. Copie o arquivo grubx64.efida pasta /Volumes/EFI/EFI/ubuntupara a pasta /Volumes/EFI/EFI/Boot. Em seguida, renomeie este arquivo bootx64.efi. Esta etapa pode ser realizada usando o aplicativo Finder ou inserindo o comando fornecido abaixo.

    cp /Volumes/EFI/EFI/ubuntu/grubx64.efi /Volumes/EFI/EFI/Boot/bootx64.efi
    
  7. (Opcional) Faça o download de uma coleção de ícones no Mac icns do site sourceforge . Use o aplicativo Finder para abrir o arquivo baixado mac-icns.dmge digite o comando abaixo para copiar o arquivo de ícone do Ubuntu os_ubuntu.icnspara a partição do sistema EFI.

    cp /Volumes/mac-icns/os_ubuntu.icns /Volumes/EFI/.VolumeIcon.icns
    

    Isso adicionará o seguinte ícone do Ubuntu ao menu Iniciar.

    os_ubuntu.png

    Nota: Quando terminar, você pode usar o aplicativo Finder para ejetar o mac-icnsvolume.

  8. Use o aplicativo Finder ou digite o comando abaixo para desmontar a partição do sistema EFI rotulada EFI.

    diskutil unmount disk0s1
    
David Anderson
fonte
11
+1 Funcionou perfeitamente para mim para instalar o Linux Mint 18 como um dual boot com o MacOS Sierra no meu 2014 Macbook Air
setholopolus
Como funciona a etapa 7? Por que isso mudaria apenas o ícone da partição Ubuntu? Também posso alterar o ícone do Macintosh HD para que haja um logotipo Sierra para a partição Mac e um logotipo Ubuntu para a partição Linux no menu de inicialização?
Arc676
OK, agora eu tenho o ícone Ubuntu onde você especificou e um ícone Mac na /minha partição Sierra. O ícone do Mac aparece no Mac HD e o Ubuntu na outra partição. No entanto, tenho a sensação de que colocar o ícone onde você especificou apenas o torna o ícone padrão porque colocar o ícone na raiz da partição Ubuntu não funcionou. E se eu instalasse um terceiro sistema operacional?
precisa saber é o seguinte
11
@ Arc676: A instalação de um terceiro sistema operacional pode exigir uma segunda partição EFI. Não há limite para o número de partições EFI que você pode ter. Um exemplo, de uma segunda partição EFI, pode ser encontrado nesta resposta .
David Anderson
Essa resposta me salvou da loucura. Passei pelo menos quatro dias tentando resolver um problema com meu iMac. Basicamente, o rEFInd corrompeu os drivers de vídeo nativos do iMac. Não sei como, mas isso tornaria a resolução padrão a mais baixa. A solução para esse problema excluiria o rEFInd. Reinstalar o rEFInd corromperia os drivers novamente, e assim por diante. Obrigado @DavidAnderson.
Jnkrois
14

Esteja ciente de que nem o rEFIt nem o rEFInd danificam, muito menos "apaga", o carregador de inicialização padrão da Apple; de fato, o rEFIt e o rEFInd simplesmente se inserem no processo de inicialização e, em seguida, iniciam o carregador de inicialização da Apple.

Fundamentalmente, rEFIt e rEFInd são gerenciadores de inicialização . Um gerenciador de inicialização apresenta um menu ou alguma outra ferramenta de interface do usuário para permitir que você selecione qual SO inicializar. A maioria das EFIs, incluindo as da Apple, inclui seus próprios gerenciadores de inicialização; no entanto, esses gerenciadores de inicialização embutidos geralmente são muito primitivos. Em um Mac, você inicia o gerenciador de inicialização interno mantendo pressionada a tecla Option (ou Alt) quando o computador é inicializado (quando o sinal sonoro de inicialização é emitido). O gerenciador de inicialização interno do Mac é difícil de acessar e limitado em seus recursos. Suponho que foi isso que motivou Christoph Pfisterer a criar rEFIt. Bifurquei o rEFIt em rEFInd depois que o rEFIt caiu em mau estado. Eu estava mais motivado por problemas de inicialização em PCs baseados em UEFI, mas o rEFInd continua sendo uma maneira de contornar as limitações do gerenciador de inicialização da Apple.

Um gerenciador de inicialização, por outro lado, carrega um kernel na memória e transfere o controle para ele. Um carregador de inicialização não precisa interagir diretamente com o usuário (embora possa). Nem o rEFIt nem o rEFInd são tecnicamente um carregador de inicialização, embora o kernel do Linux crie uma linha borrada, porque inclui um recurso (o carregador de stub EFI ) que permite que ele funcione como seu próprio carregador de inicialização EFI. Além disso, alguns gerenciadores de inicialização, como o gerenciador de inicialização GRUB 2, popular nas distribuições Linux, funcionam como gerenciadores de inicialização e também como gerenciadores de inicialização.

Se você estiver inicializando o Ubuntu e o OS X (ou o macOS, como foi recentemente renomeado recentemente) em um Mac, é uma necessidade prática adicionar algo ao processo de inicialização. Você pode confiar no gerenciador de inicialização da Apple para controlar qual sistema operacional inicializar e, nesse caso, nenhuma ferramenta que não seja da Apple estaria envolvida ao inicializar o OS X. Você ainda precisaria de algo (GRUB, rEFInd ou outro gerenciador de inicialização ou gerenciador de inicialização) ) para iniciar um kernel Linux. Dado que a maioria dessas ferramentas é mais conveniente de usar do que o gerenciador de inicialização interno da Apple, a maioria dos usuários as deixa na ordem de inicialização, para que sejam chamadas antes do gerenciador de inicialização do OS X.

Se você simplesmente não gosta do refEnd, certamente pode ficar sem ele. Você pode confiar nos recursos do gerenciador de inicialização do GRUB 2 ou instalar outra ferramenta, como gummiboot / systemd-boot. Em teoria, se você instalar o Ubuntu no modo EFI,ele deve instalar o GRUB 2 de uma maneira que o torne o gerenciador de inicialização padrão e deve fornecer opções para inicializar o Ubuntu e o OS X. Na prática, não tenho certeza se isso funcionará - a Apple faz tudo de forma um pouco diferente, e tão poucas pessoas fazem dessa maneira que não posso prometer que funcionaria. Você pode tentar, no entanto, e corrigir os problemas que encontrar após o fato. No entanto, recomendo aprender mais sobre a inicialização por EFI antes de iniciar, para que você não cometa algum erro básico, como iniciar o instalador no modo BIOS ou configurar suas partições da maneira errada. Você pode começar com estas páginas:

Se você optar por seguir o caminho mais percorrido do uso do rEFInd, verifique a data de todas as instruções a seguir. Algumas páginas muito antigas ainda estão por aí e geralmente não conseguem resolver novos problemas, como o System Integrity Protection (SIP) ; ou eles descrevem o uso do rEFIt abandonado em vez do rEFInd mais recente. (Embora o rEFIt ainda possa ser feito para funcionar com as versões mais recentes do OS X, isso pode exigir saltar através de argolas não documentadas.)

Rod Smith
fonte