terça-feira, 27 de agosto de 2013

Resolvendo Problemas Com UEFI No Linux

Bons tempos em que você ligava o seu computador, apertava ESC (ou F2(ou F10)), entrava na BIOS, alterava a ordem de boot para dar preferência ao drive de CD/DVD, instalava seu Linux e o Grub se encarregava de identificar cada sistema e permitir que você escolha qual quer utilizar.
Recentemente as coisas mudaram, e muito.
O advento do (U)EFI não é uma novidade. O anúncio da obrigatoriedade do novo sistema de gerenciamento básico para a instalação do Windows 8 provocou revolta e debates acalorados na comunidade GNU/Linux.
O objetivo deste artigo é agregar informações que podem ajudar quem esteja enfrentando problemas com o UEFI no Linux. Nada do que está aqui é novo, apenas estou juntando dados que eu tive que coletar em pedaços pela internet.
Então, vamos por partes.

 

A "BIOS"


Antes de mais nada, uma observação: tecnicamente UEFI e BIOS são coisas diferentes, na realidade, UEFI é uma evolução da BIOS e, consequentemente, ou você tem BIOS ou tem UEFI. No entanto, em nome da minha sanidade, vou me referir à dita cuja apenas como BIOS e você pode associar o nome a um firmware básico de interface do computador. :)

Se o seu computador veio com Windows 7 ou Vista é provável que ele possua uma BIOS tradicional ou um modo BIOS Legacy para compatibilidade. 
Neste caso, ao habilitar o modo Legacy você pode instalar todos os sistemas no HD da mesma forma como sempre foi. Com o modo Legacy desabilitado, é possível instalar o Windows 8 e qualquer distribuição Linux compatível com UEFI, desde que a tabela de partições esteja devidamente formatada como veremos a seguir.
O que você NÂO pode fazer é misturar as duas opções.

A Tabela de Partições do HD


De forma bem resumida, se o seu sistema vai utilizar a boa e velha BIOS, ou o modo Legacy compatível, a tabela de partições do seu HD deve estar no formato que foi convencionado como "msdos". É o formato normalmente utilizado nos instaladores dos Windows antigos e, por consequência, por qualquer instalador do Linux que quisesse fazer dual boot.
Agora se você pretende utilizar o computador com UEFI, o formato da tabela de partições precisa ser o "GPT", com direito a uma partição específica para o boot efi. Os instaladores das distribuições Linux com suporte ao UEFI ajudam a fazer a configuração correta embora alguns detalhes precisem de atenção.
Para fazer uma instalação do zero em um HD novo o melhor é iniciar um LiveCD/DVD de uma distribuição Linux que possua o GParted disponível. 
Se o seu computador já possui um Windows instalado e você quer instalar um Linux com dual boot, então você não tem opção a não ser realizar a instalação de forma compatível com a do Windows. Neste caso, o HD já estará no formato adequado e o instalador do Linux já deve ser capaz de identificar a melhor configuração. Mas atenção: lembre-se de iniciar o CD/DVD do instalador no modo correto (mais sobre isso a seguir).

O Modo de Inicialização da Mídia de Instalação


Esse detalhe é fundamental, sobretudo em computadores com modo Legacy. As mídias das distribuições mais recentes do Linux permitem a inicialização em dois modos: um para a instalação normal, com modo Legacy habilitado; outro para o modo UEFI.
Qual dos modos será o padrão no seu computador vai depender da configuração da BIOS. Mas um jeito simples de saber em qual modo a sua mídia iniciou no Ubuntu e derivados é esta aqui.
É importante iniciar a mídia no modo correto, porque se você quiser instalar seu Linux em um HD no formato "msdos" e iniciar a mídia em modo UEFI, o instalador irá tentar criar a partição efi e tudo o mais. E eventualmente a instalação irá falhar.
Em alguns casos, a BIOS não possui uma opção para definir qual modo iniciar por padrão. Neste caso, você pode acessar o menu de boot, durante a inicialização do computador, para escolher manualmente qual modo iniciar (geralmente aparece algo semelhante a "Drive de CD/DVD interno" e "Drive de CD/DVD interno UEFI").

Troubleshooting


Problemas comuns e dicas de como resolver:

- Após a instalação, ao iniciar o computador o menu do Grub apresenta o prompt de recuperação (grub rescue).
Costuma ocorrer quando o instalador é iniciado no modo incorreto. Uma forma de resolver, sem precisar reinstalar, é utilizando o Boot Repair (para Ubuntu e derivados, consulte a documentação oficial para informações sobre o suporte a outras distribuições).

- A instalação falha com a mensagem "The 'grub-efi' package failed to install into /target/."
Erro clássico que ocorre quando você inicializa a mídia em modo UEFI, mas o seu HD está particionado em formato "msdos". Para resolver, abra o menu de boot na inicialização do computador e selecione o modo de inicialização da mídia sem UEFI.

Nenhum comentário:

Postar um comentário