O Ubuntu 16.04 não instala a UEFI em funcionamento ao instalar na unidade externa (não /EFI/BOOT/*.efi na partição EFI), como resolver corretamente?

3

Meu disco rígido no Ubuntu rodando laptop morreu por causa da idade e uso extensivo no passado, mas antes que ele morresse completamente eu consegui criar persistente pendrive live-usb para usar como sistema temporal. Esta solução trabalhou e eu corro sistema de um pau de usb durante mês ou assim. Agora eu tenho disco rígido externo de 1000GB e queria instalar um sistema novo e totalmente funcional nele. Como eu já tinha um live-stick persistente, era a minha principal opção para instalar um novo sistema, então corri o modo usb ao vivo, liguei o drive externo e distribuí as partições da seguinte forma: Garted window

Eu fiz a instalação (Ubuntu MATE 16.04), desliguei após a conclusão, removi o stick USB, mas mantive o HDD externo e liguei o laptop. Depois de verificar as configurações da BIOS e ter certeza de que ela detectou a unidade externa e pode carregá-la, coloquei-a em cima da prioridade de inicialização e reiniciei.
Nada aconteceu, o sistema não carregou, foi apenas uma tela preta e parecia que ele tentou carregar de HDD velho quebrado em vez de novo. Liguei o stick USB, carreguei o Grub do pen drive, entrei no modo console e tentei inicializar manualmente a partir do HDD externo para verificar se ele foi instalado corretamente, executando esses comandos no console do grub:

set root=(hd0,msdos5)
linux /vmlinuz root=/dev/sda5 libata.force=1:disable
initrd /initrd.img
boot

libata.force é desabilitar o disco rígido morto antigo, porque senão ele vai continuar diminuindo a velocidade, assim como se perdendo.
Depois de executar esses comandos do sistema carregado perfeitamente e como esperado a partir do disco rígido externo, então eu percebi que o problema está em algum lugar no bootloader \ grub. Eu fiz um pouco de googling, tentei comentar o menu do grub pulando em / etc / defaults / grub:

#GRUB_HIDDEN_TIMEOUT=0 
#GRUB_HIDDEN_TIMEOUT_QUIET=false

e executando o update-grub, mas isso não ajudou.
Eu tentei executar o grub-install também, mas não teve efeito - o sistema recusou-se a carregar o grub a partir do disco rígido externo.
Eu não conseguia entender qual é o problema, porque o laptop poderia funcionar a partir de pendrive com a mesma versão do sistema, então eu parti a partição EFI do pendrive e tentei olhar o que é diferente, e a partição EFI com estrutura ao vivo tinha estrutura semelhante isso:

boot
    > grub
        [more files]
    > memtest
        [more files]
EFI
    > BOOT
        bootia32.efi
        bootx64.efi
    > ubuntu
        [more files]

Enquanto a partição EFI no disco rígido externo após a instalação ficou assim:

EFI
    > ubuntu
        [same files as in EFI/ubuntu on live-usb]

Então, no disco rígido após a instalação, não havia uma pasta BOOT. Depois de pesquisar sobre a UEFI, concluí isso na wikipedia: link

  

Essa detecção automatizada depende de caminhos de arquivos padronizados para o carregador do SO, com o caminho variando dependendo da arquitetura do computador. O formato do caminho do arquivo é definido como /BOOT/BOOT.EFI;

Então eu acabei de copiar a pasta BOOT do live-usb para a minha partição / boot / efi na mesma pasta EFI, removi o pendrive e reiniciei.

Depois disso, o laptop na verdade inicializou a partir do disco rígido externo e eu fui cumprimentado pelo console do grub sem mais nada. Ao executar manualmente a cadeia linux-initrd-boot como antes a partir do usb-stick, consegui iniciar o Ubuntu sem problemas.
Isso me deixou trabalhando com o Linux a partir daquele HDD externo, mas sem entender o que está errado e como consertá-lo. Depois de olhar no conteúdo boot / grub do efi on stick, eu percebi que é bonito onde ele localiza o grub.cfg e tudo, então considerando que eu copiei o arquivo efi de inicialização dele, eu criei a pasta boot na minha partição EFI e copiei o conteúdo de / boot da instalação no disco rígido externo para ele, assim meu / boot / efi / boot foi cópia de / boot. Depois de reiniciar o sistema, ele realmente funcionou como deveria, ele carregou o grub padrão do ubuntu com a opção de carregar o Ubuntu, e o sistema funcionou sem nenhum problema. Enquanto isso me deixa com o sistema de trabalho, fato que eu tive que mexer manualmente com ele e como tudo funciona não é nada bom.

Então, minha pergunta é: o que há de errado com a instalação do UEFI no meu caso, por que ele não é carregado sem / EFI / BOOT, por que a instalação não o cria e como corrigir tudo isso corretamente?

    
por Ethuil UI 15.06.2017 / 03:14

0 respostas