Como consertar um grub muito quebrado?

4

Eu tenho uma instalação do Fedora 22 muito quebrada.

Tudo estava funcionando perfeitamente até que eu decidi usar o dual boot F22 e o Linux Mint MATE. Eu tinha o Fedora instalado em um SSD e instalei o LM em um disco rígido diferente. Depois de um tempo, eu decidi que o Linux Mint não era certo para mim, então eu deletei todas as partições LM (eu sei que eu deletei todas corretamente; elas estavam em uma unidade separada), e então, removendo as entradas LM do boot menu (ou assim eu pensei), eu corri grub2-mkconfig -o /boot/grub2/grub.cfg . Eu reinicio o meu sistema, e maravilha das maravilhas, eu recebo: error: no such device: XXXXXXXXX... , e um prompt grub-rescue> .

Idealmente, esta pergunta teria sido útil, mas o Fedora usa o LVM.

Como posso obter uma tela de boot normal do grub? Ou, como posso recuperar minha instalação do Fedora?

Obrigado!

Nota: Eu ficaria feliz em postar saídas de comando, mas não sei o suficiente sobre isso para saber o que seria útil.

    
por Hatchet 23.10.2015 / 00:19

1 resposta

8

Parece provável que o GRUB do Linux Mint ainda esteja instalado no MBR, enquanto sua partição /boot foi excluída. Assim, o prompt grub-rescue , que aparece quando o GRUB não pode carregar seu stage2 do sistema de arquivos. Coisas para tentar, na ordem:

  1. É possível que o GRUB Mint esteja no MBR do disco Mint, e o antigo (Fedora) GRUB ainda esteja no MBR do disco Fedora. Para verificar isso, acesse o menu de inicialização do BIOS e tente inicializar a partir do SSD no qual o Fedora está ativo (supondo que o dispositivo de inicialização padrão atual seja o Mint HDD). Se isso funcionar, ele deve deixá-lo em um GRUB padrão, com as opções para inicializar o Fedora já selecionado.
  2. Se este não for o caso, você deve tentar fazer o bootstrap a partir do grub-rescue em sua instalação do Fedora. Então você pode executar grub2-install para fazer o boot do Fedora GRUB novamente. Para fazer isso, você precisa dizer a grub-rescue onde o /boot do Fedora é (eu estou supondo que esteja em uma partição separada, já que é o padrão do Fedora), então inicialize em normal .

    Teste ls no prompt grub-rescue> ; ele te dará uma lista de dispositivos como (hd0,msdos1) e assim por diante. Você pode listar um dispositivo individual dizendo ls (hd0,msdos1)/ (observe a barra final); o que você quer é aquele com um subdiretório grub2 e um monte de arquivos initramfs e vmlinuz .

    Depois de encontrar o dispositivo correto (no formulário (hd<n>,msdos<m>) ou talvez (hd<n>,gpt<m>) ), você executará set prefix=(<device>)/grub2 e set root=(<device>) . Então você pode:

    insmod normal
    normal
    insmod linux
    

    Neste ponto, você deve estar de volta ao prompt padrão grub> . Aqui você precisa inicializar o sistema operacional normalmente, o que depende da sua configuração. Mas você pode executar cat (<device>)/grub2/grub.cfg , que lhe dará os comandos que o Fedora executa normalmente, e esperamos duplicá-los.

  3. O procedimento anterior é longo, complicado e sensivelmente dependente da sua configuração exata. Se falhar, você pode inicializar a partir de um LiveCD (preferencialmente do Fedora), então execute grub2-install de lá. A linha de comando na resposta referenciada é um bom ponto de partida.

por 23.10.2015 / 00:50

Tags