Como inicializar o Ubuntu a partir do EFI / UEFI?

16

Instalei o Ubuntu 11.10 em um Lenovo ThinkCentre Edge 71 recém-adquirido (modelo: 1577-G3G) com inicialização EFI ativada. Optei pela opção Usar disco inteiro . Mesmo que o processo de instalação tenha sido sem problemas / erros, quando a reinicialização agora só me dá:

  

Nenhum sistema operacional inicializável. Insira um disco de boot e pressione qualquer tecla ...

Eu acho que isso é por causa da EFI.

Regressão:

  • Verifiquei a configuração do sistema (F1 durante o POST) para encontrar uma opção de BIOS para desativar a inicialização EFI / UEFI; no entanto, não há essa opção para essa máquina.
  • Isso pode ser causado por um recurso "Inicialização segura" no BIOS.
  • O fornecedor de hardware não sabe de nenhuma configuração de "inicialização segura" no BIOS que impediria a inicialização do Linux.
  • O suporte da Lenovo não sabia nada sobre uma configuração de BIOS chamada inicialização segura. Eles também não sabiam de nenhuma limitação que impedisse o Linux de inicializar.
  • O manual do BIOS do ThinkCentre 1577 não menciona EFI, UEFI nem protege boot.

Como instalo o Ubuntu em uma máquina com o EFI? - Ou, como o Ubuntu provavelmente já está instalado: como faço para inicializar o Ubuntu?

    
por ervingsb 30.12.2011 / 11:43

10 respostas

10

Esta é uma postagem modificada de nerasezi no Fórum do Ubuntu

A principal fonte para o UEFI foi o Guia UEFI do Ubuntu

Seguem os passos que ele fez:

  1. Use um CD ao vivo que corresponda à arquitetura UEFI. Principalmente x86-64. Inicialize o live cd (xubuntu ou lubuntu. Esses são desktops leves, mas também devem funcionar com o Ubuntu e o kubuntu).

    Certifique-se de que seu sistema ativo está inicializando no modo UEFI. Você pode verificá-lo na configuração do UEFI, provavelmente na opção Boot ou similar. No meu caso, basta colocar o prefixo "UEFI" antes do nome do dispositivo.

  2. Uma vez que o sistema live estiver rodando, configure através do terminal uma senha root digitando sudo passwd root

    Em seguida, efetue logout do usuário padrão live cd e efetue login como root no modo gui. Conecte o disco rígido. Eu uso um HDD portátil USB3, mas na maioria dos casos, o disco rígido é uma unidade interna SATA. De qualquer forma, certifique-se de que você fez backup de todos os seus dados, porque o processo vai limpar tudo na unidade. Inicie o Gparted (uma ferramenta de gui é muito mais fácil que a do texto) e selecione a unidade na qual você deseja instalar o sistema. (Certifique-se de selecionar o caminho certo!) Aponte para o menu superior e selecione Dispositivo & gt; Criar tabela de partição ... Uma mensagem de aviso aparece. Clique em Avançado e selecione "gpt". Diga OK Um novo layout de disco GPT foi criado. Agora você precisa criar partições nele. É muito importante que você crie como a primeira partição primária, um volume FAT32 e você precisa atribuir o rótulo EFI a ele. Depois que a partição for criada, clique com o botão direito nela e selecione "gerenciar flags". Verifique o sinalizador "boot" e diga OK. Vá para a criação da partição / (você pode querer separar / home e / boot. Faça como normalmente faz. No meu caso, acabei de criar a partição /), e uma área de swap. Prefira sempre as partições primárias porque, com a GPT, a limitação da partição principal 4 foi removida. Feche o Gparted.

  3. Instale o sistema na partição do disco rígido "/" e lembre-se de apontar aqui o gerenciador de inicialização (GRUB 1.99) para instalação. Se você criou uma partição "/ boot" separada, deverá escolher aquela para a instalação do gerenciador de inicialização.

  4. Aí vem a parte do guia UEFIBooting:

    Criando o GRUB2 (U) EFI

    Faça o download do último arquivo ZIP do código-fonte do grub2. ftp://ftp.gnu.org/gnu/grub/

    Construir o grub2 requer que os seguintes programas sejam instalados (dependências de compilação):

    bisonte autoconf automake flexionar autógeno python (série 2.x) (para autogen.sh se estiver construindo a partir do repo bzr) texinfo help2man gettext (suporte a NLS) mapeador de dispositivos freetype2 (libs)

    sudo apt-get install bison libopts25 libselinux1-dev autogen m4 autoconf help2man libopts25-dev flex libfont-freetype-perl automake autotools-dev freetype2-demos texinfo efibootmgr

    O

    efibootmgr foi adicionado ao software que você precisa instalar, porque você precisará dele mais tarde.

    Para EFI de 64 bits (U):

export EFI_ARCH=x86_64 %código% ./configure --with-platform=efi --target=${EFI_ARCH} --program-prefix=""

Caso você tenha uma arquitetura de 32 bits, verifique a documentação on-line no link que forneci na parte superior.

Instale o GRUB2 em sistemas (U) EFI

Determine a sua PARTE DO SISTEMA EFI. (deve ser / dev / sda1 ou / dev / sdb1 se estiver configurado no segundo hd)

Em seguida, monte a partição em / mnt / EFISYS (ou em qualquer ponto de montagem desejado). O código a seguir assume / dev / sda1 para ser a partição EFISYS.

make

sudo mkdir -p /mnt/EFISYS

sudo modprobe dm-mod

sudo mount -t vfat -o rw,users /dev/sda1 /mnt/EFISYS

Em seguida, crie um aplicativo EFI para o GRUB e copie-o e os outros módulos:

Digite o diretório "grub2 compilado / grub-core" - Padrão: / usr / lib / grub / {EFI_ARCH}

sudo mkdir -p /mnt/EFISYS/efi/grub

grub-mkimage -O ${EFI_ARCH}-efi -d . -o grub.efi -p "" part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot configfile linux multiboot

Nota: A opção -p "" é importante para criar um aplicativo portátil grub.efi. Agora crie um grub.cfg em / mnt / EFISYS / efi / grub:

sudo cp grub.efi *.mod *.lst /mnt/EFISYS/efi/grub

Faça o lançamento do firmware GRUB2 (U) EFI como padrão

Para sistemas UEFI não-Mac, o efibootmgr é usado para modificar o Gerenciador de Inicialização de Firmware da UEFI. Isso requer que o kernel seja inicializado no modo UEFI e que a arquitetura do processador do kernel corresponda à arquitetura do firmware (e 'noefi' NÃO é usado) para que o módulo kernel 'efivars' seja carregado e efibootmgr para acessar as variáveis do gerenciador de inicialização. Inicialmente, o usuário deve iniciar manualmente o "efi / grub / grub.efi" a partir do console do firmware, se o grub2-efi estiver instalado no modo BIOS. Em seguida, o efibootmgr deve ser executado para criar a entrada de inicialização.

sudo touch /mnt/EFISYS/efi/grub/grub.cfg

Digite o diretório "grub2 source / grub-core"

sudo modprobe efivars

Assumindo que a saída do grub-probe seja / dev / sda1

grub-probe --target=device /boot/efi/efi/grub/grub.efi

No comando acima, / boot / efi / efi / grub / grub / efi pode ser dividido como / boot / efi e /efi/grub/grub.efi, que é traduzido como (/ dev / sda) - & gt ; partição 1 - & gt; \ EFI \ grub \ grub.efi.

  1. Abra o Synaptic e remova todos os pacotes do grub e instale apenas os pacotes grub-efi (amd64 para mim) e todas as dependências necessárias.Quando a instalação terminar, execute sudo update-grub no terminal. Você deve editar "grub.cfg" em / boot / grub e verificar se o UUID do disco corresponde ao seu disco e partições, a voz "insmod part_" e "set root=" (hd0, "tem" gpt "textline. Se tudo for Ok, copie "grub.cfg" para o "efi / grub" na partição do sistema EFI. Se algo que eu mencionei antes não combinar, apenas edite o grub.cfg e altere manualmente os valores. Em seguida, copie o arquivo para o diretório "efi / grub" na partição do sistema Efi (ainda deve ser montado em / mnt).

    Então, quando reiniciei o sistema, apareceu uma nova entrada na guia Inicialização sob a configuração UEFI, chamada GRUB2, e a defini como a opção de inicialização padrão.

por Luis Alvarado 15.01.2012 / 19:15
5

Para ajudar a confirmar se sua máquina é compatível com U / EFI, basta executar dmesg | grep EFI do Terminal na sessão de área de trabalho ativa.
Para ajudar a confirmar se o seu Ubuntu instalado inicializou usando o U / EFI, veja o que o /sys/firmware/efi retorna.
Uma solução que economiza tempo é garantir que o Ubuntu tenha realmente inicializado no modo UEFI no tempo de instalação . Referindo-se ao mais recente Guia UEFI do Ubuntu , seção 2.4, ilustra isso brilhantemente

  

Identificando se o computador inicializa o CD no modo EFI

     

Aviso: mesmo que o seu PC inicialize o CD no modo EFI, ele poderá inicializar   HDD no modo Legacy (e o contrário).

     

Ao inicializar em um disco Ubuntu de 64 bits:

     
  • Se o BIOS estiver configurado para inicializar o CD no modo EFI, você verá a tela abaixo:
  •   

     
  • Se o BIOS não estiver configurado para inicializar o CD no modo EFI ou se o disco não for de 64 bits, você verá a tela abaixo:
  •   

Certifique-se de usar o mesmo guia referido para garantir que o disco rígido seja inicializado usando o UEFI também. Isso pode ser tão simples quanto configurar o SATA para AHCI, mas depende do uso do firmware.

Ao chegar no grub screen, é possível descer para a linha de comando pressionando "c" e tente lsefisystab , que deve fornecer a tabela de entradas EFI com GUIDs, que é outro método útil para identificar se o UEFI está sendo usado ANTES da instalação.

É possível usar dmesg | grep EFI para identificar se sua máquina é compatível com UEFI. Em uma das minhas máquinas que não é compatível com U / EFI, mas isso me dá o que pode ser enganador, já que fazer o mesmo comando em uma máquina com UEFI poderia retornar muito mais linhas (possivelmente 50+) quando inicializado usando EFI Eu encontrei esta dica simples em rodsbooks (o link é para rEFInd, que é uma alternativa ao uso do Grub2). As páginas da Web do Rodsbooks são atualizadas regularmente e são uma fonte de informações muito confiável. O autor do qual é um professor da UEFI para dizer o mínimo, se não um gênio!

Referir-se a rodsbooks nesta página mostra que o Ubuntu 11.10 faz um ESP com sistema de arquivos FAT16, onde alguns UEFI Os firmwares querem um sistema de arquivos ESP com FAT32. Você encontrará a explicação completa se você fizer Ctrl + F e procurar o Fedora na página vinculada neste parágrafo (clique em Avançar uma vez em "Barra de localização" para seguir em frente). para a informação que está sendo referida). Considerando o fato de que a especificação UEFI requerida para inicialização segura é = & gt; As máquinas pré-instaladas do UEFI 2.2 e Windows 8 usarão o UEFI 2.3.1. Tudo o que confirma que o Ubuntu 11.10 não é capaz de inicialização segura, portanto a inicialização segura não é o problema.

É possível depois de usar o UEFI para instalar o Windows - que só pode usar o GPT ao usar o UEFI; que o Ubuntu instala usando configurações BIOS / legacy devido a deficiências do instalador. Ou seja, o Ubuntu pode instalar a GPT usando BIOS ou UEFI, o que leva à necessidade de alternar configurações de firmware para inicializar cada sistema operacional.

Para identificar se o Windows está usando UEFI é usar o gerenciamento de disco para confirmar se o GPT está sendo usado. É possível converter uma instalação do Windows Bios em UEFI usando este guia Convertendo a instalação do BIOS do Windows para UEFI

Uma solução fácil é executar Boot-repair-disk (fazer o download do cd .iso significa inicializar um pouco mais rápido do que usar Ubuntu.iso completo e instalar o reparo da inicialização. Verifique as opções avançadas antes de executar o reparo recomendado. quais configurações de firmware você usou para inicializar o reparo da inicialização.O Boot-Repair instalará o grub-efi e corrigirá os problemas de codificação do firmware para que o sistema use UEFI e inicialize o Ubuntu, bem como quaisquer outras instalações existentes usando UEFI.

Uma parte importante (que pode ser específica do fornecedor) é como inicializar no modo EFI (ou seja, o mesmo CD 14.04 LTS pode detectar dois modos diferentes e renderizar a tela de inicialização de texto diferente de não-texto como mostrado acima).

link

ou isto:

link

Observe que na configuração do BIOS para prioridades de inicialização, geralmente há duas opções diferentes para DVD: Px ou UEFI (ou algumas outras palavras). Uma delas é para UEFI e outra é para inicialização baseada em MBR.

    
por geezanansa 14.03.2017 / 01:33
3

Resolvi o problema do EFI no meu notebook ACER 5560G, e ele acabou renomeando o diretório EFI e o arquivo EFI no USB Wubi disco funcionou (obrigado immerohnegott).

Ele forçou uma instalação normal do GRUB em duas partições pré-criadas com o GParted em um pen drive USB. As partitons foram:

  • /boot (100 mb)
  • / (70 GB)

Reinicie no Windows 7 e instale a versão gratuita do EasyBCD. Adicione uma nova entrada, Linux -- >> Grub 2 e ele procurará todas as partições pelo gerenciador de inicialização GRUB.

Desta forma, a partição "System Reserved" do Windows e a partição oculta do Acer PQSERVICE não são tocadas.

    
por blaire 26.05.2012 / 16:58
2

Você pode fazer drives USB inicializáveis que funcionam com o sistema EFI, eu não sou tão experiente quanto alguns de vocês, então eu descobri uma maneira que é fácil e funciona:)

Em uma máquina com BIOS da EFI, insira um CD / DVD com o Parted Magic (eu o tinha em um CD de inicialização do HIREN que eu criei em um CD em vez de um USB) Inicialize a partir desse CD / DVD.

Quando estiver no Parted Magic, insira um pendrive USB vazio com pelo menos 2 GB de memória. Abra o utilitário Unetbooten que está incluído no Parted Magic. Execute o programa e escolha a distribuição que você está tentando carregar na unidade de salto. Siga as instruções e aguarde a conclusão.

Esse drive USB deve inicializar em qualquer sistema EFI agora. Pelo menos funcionou para mim: oP

    
por CynnieH 12.05.2013 / 23:43
1

Você precisa descobrir como fazer com que seu bios inicialize o cd de instalação no modo efi, não no modo bios. Você saberá que está inicializando no modo efi porque você terá um menu grub em vez do usual syslinux.

    
por psusi 31.12.2011 / 18:56
1

Eu me deparei com o problema de instalar o Ubuntu 14.04 em um Lenovo ThinkCentre M91p, e eu tenho uma solução rápida / fácil:

  1. Antes de inicializar a partir do disco de instalação / USB do Ubuntu, vá para o seu BIOS e, na guia "Inicialização", altere o "Modo de inicialização" de "Automático" para "Legado".
  2. Instale o Ubuntu.
  3. Se você quiser, mude o Modo de inicialização no BIOS de volta para Automático.

Isso funciona de forma consistente para mim.

Tenho certeza que funciona porque o instalador do Ubuntu detecta se o BIOS suporta EFI ou não quando decide qual bootloader deve ser instalado. Ao definir o BIOS como legado, o Ubuntu acaba instalando o gerenciador de inicialização antigo que funciona com essas máquinas Lenovo.

    
por Eric 19.08.2015 / 20:09
1

Nas configurações do BIOS, altere o modo do disco rígido para IDE e inicialize a partir da unidade flash USB. Ele será instalado no modo não-UEFI e a inicialização após a instalação também funcionará bem.

Esse método em particular está funcionando muito bem para mim com o Ubuntu 16.04 em um Lenovo ThinkCentre Edge 71, com a última versão do BIOS.

    
por Gregg B. 22.12.2016 / 15:32
0

Eu tive um problema semelhante também.

O que eu experimentei foi que o computador com EFI também é equipado com BIOS. Eu spammei F2 como um louco, o que aconteceu foi que eu tive a escolha de usar EFI ou BIOS Standard.

Porém, se você usar o BIOS, o computador inicializará a mensagem: "nenhum sistema operacional encontrado".

Assim, você pode potencialmente formatar seu computador a partir dele e fazer com que ele inicialize como um computador normal.

    
por Marius 16.08.2013 / 01:04
0

Eu tive o mesmo problema ... eu comprei esse novo Lenovo beast de um desktop e tive um mesmo problema, eu não queria o WIN 8.1 nele, (eu tenho lidado com o Linux desde o Red Hat 6.1). não estava familiarizado com o UEFI / EFI. PC woudnt ainda inicializar o liveCD. Depois de cavar informações reais neste blog, eu descobri que você tem que mudar algumas coisas em UEFI / EFI / BIOS, primeiro foi desabilitar o CSM e escolher "Legacy only" nas opções de inicialização de inicialização. Reinicie e bum! eu estava dentro Instalado o Ubuntu 12.04 eu estava pronto para ir. Mais tarde eu descobri que 12.04 NÃO reinaria depois de voltar as mesmas configurações de volta ao erro "UEFI Only" "OS não encontrado" .Para o meu entendimento, o Ubuntu começou a suportar este UEFI em 12.10, atualizei para 13.04, alterei as mesmas configurações, habilitado Apenas CSM e UEFI e voila! Eu inicializei da UEFI e notei que a máquina roda muito melhor! Você não tem que instalar de novo a partir UEFI apenas atualizar para 13.04 / 10 mudar de volta para UEFI, funcionou para mim no entanto ... Não posso esperar para ver o que o Linux faz com este recurso relativamente novo UEFI / EFI, há algum potencial aqui

    
por user255633 07.03.2014 / 03:17
-2

O mesmo problema aqui. Eu 'resolvi' inicializando permanentemente do meu CD SuperGrub. Eu não me importo de fazer isso dessa maneira. Eu vejo isso como um recurso de segurança; meu CD SuperGrub é minha chave adicional. Quando eu verifico meus discos no Ubuntu, posso ver que o Ubuntu-HDD é um disco não-MBR. Parece que reparticionar esse disco e adicionar o MBR resolveria o problema, mas estou com preguiça de passar por todo esse problema.

    
por Paul 15.05.2012 / 21:10