Comprei um Toshiba Satellite e instalei o Ubuntu usando uma liveusb caseiro , escolhendo usar o disco rígido inteiro e configurar um LVM criptografado no processo. O instalador terminou sem erros, mas o firmware do laptop não pareceu reconhecer o HDD como inicializável; ligando-o sem o flash drive me deu esse erro (maiúsculas não meu):
Reboot and select proper Boot device
or Insert Boot Media in selected Boot device and press a key
Eu inicializei de volta ao liveusb, zerei os primeiros mebibytes do HDD para uma boa medida e executei o instalador novamente da mesma maneira, com o mesmo resultado. Depois disso, tentei sudo grub-install /dev/sda
e sudo update-grub
do sistema instalado. Ambos foram concluídos com sucesso, mas não corrigiram o problema.
Alguém da Freenode / # ubuntu teve a gentileza de escrever um par de comandos do GRUB que eu poderia usar no shell GRUB da unidade flash para inicializar a partir do HDD:
search --set=root --file /grub/grub.cfg
configfile /grub/grub.cfg
E uma entrada de menu prática:
menuentry "Load Installed Ubuntu's grub.cfg" {
search --set --fs-uuid $sda2_uuid
configfile /grub/grub.cfg
}
( $sda2_uuid
é o UUID da partição que é mapeada para /dev/sda2
e montada em /boot
no sistema instalado. /dev/sda1
está montado em /boot/efi
.)
Isso funciona bem o suficiente como uma medida temporária, embora, obviamente, seja impraticável a longo prazo, já que exige que eu mantenha o pen drive por perto.
O que está acontecendo aqui? Como faço para que este laptop reconheça seu HDD como inicializável?
Tabela de partições ( sudo parted /dev/sda print
)
Model: ATA TOSHIBA MQ01ABF0 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 794MB 256MB ext2
3 794MB 500GB 499GB
Atualizar
Lembrei-me de ler em algum lugar que a partição EFI ( /dev/sda1
no meu caso) deveria ser FAT16, então fiz uma imagem de disco dela, formatei-a como FAT16 e copiei todos os arquivos de volta. Após a reinicialização, um erro exibiria um erro por um segundo:
Failed to open \EFI\BOOT\grubx64.efi
Houve um ./EFI/ubuntu/grubx64.efi
(relativo à raiz de sda1
), então copiei para ./EFI/ubuntu/grubx64.efi
e o laptop agora é iniciado por conta própria. Ele ainda não me dá um menu do GRUB, e agora ele também fica preso em uma tela roxa sólida por um bom meio minuto antes de mostrar qualquer indicação de continuar com o processo de inicialização (apesar de eu ter replaced quiet splash
nos argumentos do kernel com text
), mas inicializa.
Esta parece ser uma solução bastante crua, e eu não sei porque funcionou no meu caso, então não vou postar como resposta. Vou continuar mexendo com isso, no entanto; espero encontrar algo melhor.