Desinstalando o GRUB do laptop UEFI

9

Eu instalei o Ubuntu junto com o Windows 8, mas decidi desinstalar o Ubuntu.

Primeiro, iniciei o Parted Magic e, usando o GParted, excluí todas as partições ext4 e swap.

Isso me deixa com as mesmas partições que eu tinha antes de instalar o Ubuntu:

/dev/sda1 ntfs WINRE_DRV
/dev/sda2 fat32 SYSTEM_DRV (my UEFI partition)
/dev/sda3 fat32 LRS_ESP
/dev/sda4 unknown Microsoft Reserved Partition
/dev/sda5 ntfs Windows8_OS
/dev/sda6 ntfs LENOVO
/dev/sda7 ntfs PBR_DRV

Eu esperava que excluir as partições fosse suficiente para remover o Ubuntu e permitir que eu inicializasse novamente no Windows 8; no entanto, sempre que eu inicializo, recebo o seguinte erro:

error: no such partition.

que é seguido pelo resgate do GRUB:

grub rescue>

Na minha partição UEFI, existem dois diretórios BOOTe EFI. In BOOTé um único arquivo - boot.sdi. No EFIdiretório existem outros dois diretórios, BOOTe Microsoft. Dentro BOOThá dois arquivos bkpbootx64.efie bootx64.efi. O Microsoftdiretório tem um diretório nele chamado Boot. Dentro dele estão os arquivos normais da Microsoft EFI (até onde eu sei).

Pensando que ainda havia arquivos GRUB restantes, eu corri find . -iname "*grb*"e find . -iname "*grub*"na partição UEFI, no entanto, só encontrei um arquivo vazio bootx64.efi.grb(que eu excluí).

Como o GRUB ainda está instalado e como posso desinstalá-lo?

Sou bastante novo na UEFI e, portanto, as coisas podem precisar de explicação em detalhes. O computador é um Lenovo IdeaPad Z580.

edit: esqueci de mencionar, apaguei a ubuntupasta na partição UEFI.

Editar 2: Consegui voltar ao Windows através da opção "Recuperação do sistema" nas configurações de BIOS do laptop. Isso pode ou não ter resolvido o problema.

edit 3: ok, eu posso inicializar quase normalmente agora. Quando inicializo, vejo No partition activepor alguns segundos o Windows inicializar. Como posso remover isso?

Torvero
fonte

Respostas:

28

Sei que você corrigiu o problema, mas quero apontar o que deu errado e como deve ser corrigido (tanto pelos usuários finais quanto pelos desenvolvedores do Ubuntu).

Primeiro, os desenvolvedores do Ubuntu decidiram - de maneira imprudente - criar uma configuração GRUB que se baseia em arquivos na /partição root ( ) do Ubuntu , bem como na EFI System Partition (ESP). Isso torna o GRUB vulnerável à remoção ou danos à partição Linux e, portanto, dificulta a inicialização do computador após a remoção do Ubuntu ou se a instalação do Ubuntu estiver danificada de alguma forma. Essa vulnerabilidade é desnecessária; é possível configurar o GRUB para procurar todos os seus arquivos de suporte e configuração no ESP. Se o GRUB fosse configurado dessa maneira (como o Fedora), a exclusão do Ubuntu não afetaria a capacidade do GRUB de redirecionar para o Windows. O sistema ainda inicializaria através do GRUB, mas pelo menos ainda seria inicializado. Então, vergonha no Ubuntu por configurar o GRUB da maneira errada.

Segundo, com base nos nomes de arquivos mencionados, você parece ter executado a ferramenta de reparo de inicialização do Ubuntu em algum momento. Essa ferramenta renomeia automaticamente o carregador de inicialização do Windows EFI/Microsoft/Boot/bootmgfw.efie coloca uma cópia do GRUB em seu lugar. Ele faz a mesma coisa com o carregador de inicialização EFI fallback,, EFI/BOOT/bootx64.efie coloca outra cópia do GRUB como EFI/Microsoft/Boot/bootx64.efi, por razões que não pretendo entender. Isso é feito como uma solução alternativa para um bug em um punhado de EFIs. O problema é que o reparo de inicialização faz isso por padrão. Na maioria dos computadores, é nãonecessário. Quando é subsequentemente desejável fazer alterações na configuração de inicialização, essa renomeação e replicação do GRUB se torna uma complicação, pois os usuários ficam adivinhando o que está acontecendo. Portanto, tenha vergonha dos desenvolvedores do Boot Repair por serem indecisos quanto a seus reparos. (Em sua defesa, porém, seria muito difícil para o Reparo de Inicialização detectar com segurança quais computadores possuem os bugs que exigem a movimentação de arquivos de inicialização da maneira que ocorre por padrão.)

Mais um ponto é importante: em um sistema EFI funcionando corretamente, uma lista de programas de inicialização é mantida na NVRAM. O EFI tenta cada um dos programas nesta lista em sequência; se um falhar ou estiver ausente, o próximo será tentado. Quando o Ubuntu é instalado, ele adiciona sua versão do GRUB ao topo da lista. A maioria das EFIs também permite que os usuários especifiquem qual programa de inicialização usar em um gerenciador de inicialização interno, mas esse gerenciador de inicialização interno é bruto na maioria das EFIs.

Resuma todos esses fatores e a solução mais simples para o problema original se torna:

  1. Desfazer as alterações da ferramenta Boot Repair. Isso pode ser feito usando a própria ferramenta de reparo de inicialização; possui um menu Opções avançadas com uma caixa de seleção chamada "Restaurar backups EFI". Use isso e as várias cópias do GRUB serão removidas e o carregador de inicialização do Windows será restaurado. Como alternativa, isso pode ser feito manualmente. Mais importante, o backup de bootmgfw.efi(provavelmente chamado bkpbootmgfw.efi, embora algumas versões do Boot Repair tenham usado outros nomes) deve ser copiado EFI/Microsoft/Boot/bootmgfw.efino ESP.
  2. Exclua o GRUB em seu local oficial / adequado - EFI/ubuntu/grubx64.efipara Ubuntu. Se o Secure Boot estivesse ativo, a exclusão EFI/ubuntu/shimx64.efiseria necessária. De fato, excluir o EFI/ubuntudiretório inteiro ou, pelo menos, renomeá-lo, faria o trabalho em qualquer caso.

É isso aí. Com essas duas coisas, a EFI ignorará a opção de inicialização do Ubuntu porque não é mais válida e continuará a inicialização do Windows. Algumas EFIs também removerão automaticamente a opção de inicialização do Ubuntu dos menus de seus gerenciadores de inicialização, embora essa prática não seja universal.

Observe que, no seu caso, Matthew, eu não recomendo fazer essas coisas; você tem uma configuração funcional e, como se costuma dizer, "se não estiver quebrada, não conserte". Você pode ter alguns arquivos perdidos no seu ESP, mas eles não causam nenhum dano, por isso é melhor deixá-lo em paz. Apresentei minha resposta na esperança de que alguém a ache útil.


Edição: O texto acima estava correto quando eu escrevi pela primeira vez, e os princípios permanecem os mesmos; no entanto, o Reparo de inicialização não renomeia automaticamente o carregador de inicialização do Windows e o substitui por outra cópia do GRUB. (O reparo de inicialização pode fazer isso opcionalmente, mas a opção está oculta em um menu de opções avançadas, portanto não é mais feita por padrão.) Esse fato facilita a recuperação desse problema hoje hoje do que em 2013. Na maioria dos casos, você só precisa exclua o EFI/ubuntudiretório no ESP para inicializar o sistema diretamente no Windows. Se o GRUB ainda aparecer após você fazer isso, você pode ter usado a opção Reparo de inicialização para fazer backup e renomear arquivos de inicialização; nesse caso, usá-lo para desfazer essas ações está em ordem, conforme observado anteriormente.

Outra opção é usar o gerenciador de inicialização interno do computador (geralmente acessado pressionando uma tecla de função, Esc ou Enter logo após ligar o computador) para ignorar o GRUB e inicializar no Windows. Você pode usar o EasyUEFI para ajustar a ordem de inicialização e / ou excluir a ubuntuentrada da lista de inicialização. Esta ação não excluirá o GRUB do ESP, mas ignorará o GRUB.

Rod Smith
fonte
Obrigado por esta resposta! Isso explica muito bem o problema. Na verdade, eu havia executado o Reparo de inicialização, mas esqueci de incluí-lo nesta pergunta. Marquei isso como a resposta, pois isso definitivamente pode ajudar alguém no futuro e é uma maneira muito mais limpa de corrigir o problema.
Torvero 06/06
Estou atrasado, mas vou perguntar de qualquer maneira; você disse que também substitui o gerenciador de inicialização EFI padrão pelo GRUB. Existe alguma maneira de recuperá-lo, supondo que ele ainda seja substituído pelo instalador do Ubuntu 18.04?
Zoe
3

Sei que esse tópico é antigo, mas me deparei com ele em minha própria pesquisa ao tentar resolver esse problema por conta própria, e encontrei uma solução que funcionou para mim quando nenhuma das outras respostas tinha, então eu precisava compartilhar!

Eu tinha inicializado o Ubuntu no meu laptop com o Windows 10. Inicialmente, decidi remover o Ubuntu e excluí sua partição, mas o grub continuava interrompendo o meu gerenciador de inicialização. Depois de tentar várias sugestões deixadas nos fóruns, finalmente encontrei uma maneira incrivelmente simples e gráfica de removê-la por conta própria, lol. (Portanto, isenção de responsabilidade, não tenho idéia se outras versões do Windows têm essa opção ou não)

Mas tudo o que fiz foi F12 enquanto o computador estava inicializando para acessar as opções de inicialização. E em Outras opções , selecione Configuração do BIOS . No lado esquerdo, selecionei Boot Sequence ( Sequência de inicialização) e, ali mesmo, listou minhas diferentes opções de inicialização, e pude selecioná-las para alterar sua ordem ou removê-las ou o que quisesse. Tudo que eu precisava fazer era garantir que apenas "ubuntu" estivesse marcado e, em seguida, cliquei em Excluir inicialização e saí. Continuou na tela de login e reiniciei meu laptop apenas para verificar se resolveu o meu problema e resolveu!

Jess
fonte
Parece que a internet está cheia de soluções não-uefi, mas isso simplesmente funciona!
Peter Lehnhardt 7/10/19
1

Ok, então isso não vai funcionar para cada computador que eu supor, mas isso é o que fixa-lo para mim .

Primeiro, iniciei o "System Recovery" através das opções de BIOS no meu laptop. Isso me permitiu entrar no Windows, no entanto, sempre que eu inicializava, recebia uma mensagem dizendo No partition activepor um segundo antes da inicialização do Windows. Eu me livrei disso fazendo o seguinte:

  1. Inicializando no Windows
  2. SHIFT + Clicando em "Reiniciar"
  3. Solução de problemas
  4. Avançado
  5. Prompt de comando
  6. Corrida bootrec.exe /fixmbr

e reiniciando. Agora a mensagem não aparece mais e tudo parece normal.

Torvero
fonte
1

O que eu fiz foi que, depois de desinstalar o Ubuntu, você pode fazer isso com alguns desinstaladores, ou simplesmente inicializando no live CD ou stick USB do Ubuntu e formatando as partições Linux com GParted, eu também formatei a partição EFI (FAT32) Recuperação de inicialização do Windows a partir do disco de instalação do Windows.

Devo mencionar que li dezenas de conselhos e tutoriais e perdi muito tempo com métodos que não funcionam. No final, fiz a única coisa que me parecia lógica ao reinstalar o Windows e funcionou como um encanto.

Srdjan
fonte
1

Em um Surface Pro, é possível contornar o Grub 2 selecionando a opção "Reinstalar chaves de inicialização seguras" no menu UEFI.

user394891
fonte
Você pode ter que mexer um pouco com as opções além disso - acho que tive que dizer algo como "apenas permitir chaves do Windows". Ainda recebo uma mensagem sobre a configuração de inicialização inválida, mas ela continuará sendo inicializada depois.
bbarker