Por que o meu Asus M5A97 Pro não inicializa se eu der a ele apenas o dispositivo correto para inicializar?

0

Eu tenho uma configuração de armazenamento bastante complexa. Para os fins desta questão, a parte importante é que eu tenho um SSD com GRUB no MBR, três partições (a primeira delas é marcada como inicializável) e um monte de dispositivos de armazenamento criptografados de disco completo do LUKS (SSD e HDD) em uma mistura de controladores (on-board e off-board).

A placa-mãe é um Asus M5A97 Pro, rodando a versão 1604 do BIOS da UEFI. O SO é Debian Wheezy.

Quando tenho todos os dispositivos listados na ordem de inicialização da BIOS e inicializo normalmente, o sistema carrega o GRUB muito bem após um pequeno atraso e me apresenta o menu GRUB. Perfeito, exceto para potencialmente verificar um grande número de unidades e ser potencialmente confuso na configuração da BIOS. E que geralmente gosto de configurações limpas.

Se eu remover da ordem de inicialização todos os dispositivos exceto para o SSD que contém o carregador de primeiro estágio do GRUB no MBR (o que eu quero inicializar, e que está conectado ao -board controlador SATA), e reinicie, me é apresentada a seguinte mensagem:

Reboot and Select proper Boot device
or Insert Boot Media in selected Boot device and press a key_

onde _ representa o cursor intermitente. Se neste momento eu simplesmente pressionar uma tecla (barra de espaço, digamos), a mensagem é repetida após uma linha em branco com comportamento idêntico:

Reboot and Select proper Boot device
or Insert Boot Media in selected Boot device and press a key

Reboot and Select proper Boot device
or Insert Boot Media in selected Boot device and press a key_

Se eu forçar o sistema a tentar inicializar a partir do SSD, obtenho o mesmo comportamento de erro.

Se eu adicionar todos os dispositivos de volta à ordem de dispositivos de inicialização, o sistema inicializará normalmente.

Confirmei que, fora de todos os dispositivos, apenas o SSD que eu quero usar como dispositivo de inicialização tem a string GRUB nos primeiros 512 bytes armazenados. Eu confirmei o layout da tabela de partições naquele usando fdisk -l .

Todos os outros dispositivos são usados como contêineres LUKS de disco completo e nem mesmo contêm um MBR válido, muito menos qualquer código de inicialização válido. Nenhum dos dispositivos de armazenamento tem boot device (insensível a maiúsculas e minúsculas) dentro dos primeiros 16 KiB, então não é uma coisa LUKS. O Google também indica que a mensagem é bastante comum, e a julgar pelos hits, é da BIOS, não é nada relacionado ao Linux.

Eu executei grub-mkdevicemap , cuja saída diz que (hd0) é o SSD do qual quero inicializar e reinstalei o GRUB (acho que fiz isso usando dpkg-reconfigure grub-pc , mas não tenho certeza sobre isso) .

O que está acontecendo aqui? Por que a BIOS, quando eu digo explicitamente, inicializa a partir de um dispositivo, está claramente inicializando no final? Como posso convencê-lo a inicializar somente a partir deste SSD sem ter que listar tudo na ordem de inicialização?

    
por a CVn 13.11.2015 / 20:54

1 resposta

0

Esta é provavelmente apenas uma falha de design com o firmware. Como é a UEFI, é provável que exista (requer) que um disco GPT com um carregador de inicialização EFI esteja presente no menu de inicialização (provavelmente a primeira entrada no menu de inicialização).

Eu apenas estou supondo aqui, mas quem projetou o firmware provavelmente não esperava que você o estivesse usando no modo UEFI se o único dispositivo inicializável fosse um disco MBR (legado BIOS). Afinal, o Windows não inicializa dessa maneira, e o Windows é o único sistema operacional que importa, certo? ; -)

Tente primeiro: verifique se a partição do grub está marcada como "ativa". Eu sempre pareço esquecer essa etapa pessoalmente (porque a UEFI não se importa).

Exceto isso, tente adicionar apenas uma outra entrada de inicialização UEFI ao menu e veja se ele resolve o problema. Se isso acontecer, então este é o problema que você está enfrentando. Você teria então que converter o disco GRUB para GPT ou colocar o firmware no modo Legacy BIOS. Apenas tenha em mente que o Windows se recusará a inicializar a partir de um disco GPT em um BIOS legado. Parece que você não se importa muito.

E FYI ... UEFI não é "melhor" para os fins deste argumento, por isso não se sinta como se estivesse perdendo alguma coisa voltando ao modo "legacy BIOS". Tudo o que ele está fazendo é mudar a maneira como as unidades são controladas pelo firmware e a maneira como o Windows é inicializado (porque o Linux não se importa).

    
por 13.11.2015 / 21:33

Tags