Estou tentando fazer uma inicialização dupla do Windows 8 e Ubuntu 12.10 no meu Surface Pro e gostaria de usarrEFIndpara meu gerenciador de inicialização.
Eu não quero nunca instalar o GRUB, inclusive durante a instalação do Ubuntu, já que minha experiência anterior ao tentar fazer isso neste dispositivo levou à corrupção do carregador de inicialização do Windows, o que pode efetivamente bloquear o dispositivo, pois parece precisar deles para inicializar a partir de USB. Estou ciente do sucesso deInicialização dupla do Surface Pro com Ubuntu?, mas quero ficar completamente longe do GRUB.
Até agora eu tentei o seguinte:
- Instale e teste se o rEFInd está funcionando apenas no Windows 8 sem problemas
- Instale o Ubuntu 12.10 de "ubiquity -b" para evitar que o GRUB seja instalado
- Verifique se ainda consigo inicializar corretamente no Windows 8
Infelizmente, isso não parece gerar nenhum stub .efi para o Ubuntu, então não tenho certeza do que fazer neste momento. O que posso fazer para gerá-los sem instalar o GRUB ou qualquer outro gerenciador de boot? Tenha em mente que neste estágio não consigo inicializar diretamente no Ubuntu, apenas uma instalação ao vivo, a menos que haja algo mais que eu deva fazer durante a instalação real.
Para reiterar, o que eu quero fazer é: Instalar o Ubuntu sem GRUB, gerar stubs efi para o Ubuntu, nunca tocar no firmware efi ou no diretório de inicialização do Windows e, em seguida, confiar no rEFInd para encontrar esses stubs durante a inicialização.
Responder1
Primeiro, presumo que por ".efi stubs" você quer dizer arquivos com .efi
extensões na partição do sistema EFI (ESP). Esses são arquivos de programas EFI – mais comumente carregadores de inicialização, mas às vezes também programas e utilitários.
Se você deseja inicializar o Windows e o Ubuntu via rEFIndsemusando GRUB, então os únicos programas EFI que você precisa ter no ESP são o carregador de inicialização do Windows (instalado pelo Windows), rEFInd ( refind_x64.efi
) e um driver de sistema de arquivos EFI para qualquer sistema de arquivos que você usou com o Ubuntu (provavelmente ext4_x64.efi
, no drivers
ou drivers_x64
subdiretório de o diretório que contém refind_x64.efi
). O driver ext4fs permitirá que o EFI e, portanto, o rEFInd, leia o kernel Linux na partição principal do Linux. Os kernels Linux desde a versão 3.3.0 incluem um carregador de stub EFI, que é uma forma de transformar o kernel Linux em seu próprio carregador de boot. Assim, com o rEFInd e um driver ext4fs no ESP, o rEFInd pode iniciar o kernel Linux diretamente de uma partição Linux. Porém, há outra coisa que você precisará: um /boot/refind_linux.conf
arquivo para armazenar opções para Linux. Um exemplo mínimo é assim:
"Boot with normal options" "ro root=/dev/sda8"
"Boot into single-user mode" "ro root=/dev/sda8 single"
Este exemplo inicializa a instalação no /dev/sda8
. Você pode adicionar mais opções para que apresente uma exibição gráfica de inicialização ou por outros motivos, mas o acima (com um root=
valor modificado, com toda probabilidade) funcionará com a maioria dos sistemas.
Uma variante desta abordagem é copiar seu(s) kernel(s) para o ESP (provavelmente no EFI/ubuntu
diretório do ESP) enãoinstale um driver de sistema de arquivos Linux. Isto tem algumas vantagens em alguns sistemas, mas requer a cópia do kernel toda vez que o sistema de empacotamento o atualiza. Se você fizer dessa maneira, você colocará refind_linux.conf
o diretório no ESP onde armazena seus kernels.