Instalei recentemente o arch (espero que com sucesso) na minha máquina. Quando fui reiniciar, no entanto, tive um problema. Eu tenho uma tela preta com texto dizendo
Grub loading.
Welcome to GRUB!
error: file '/grub/i386-pc/normal.mod' not found.
Entering rescue mode...
grub rescue>
Desde então, procurei no Google uma resposta. Eu quase encontrei um aqui nos fóruns do Ubuntu e vi um dos comentários dizendo que era falso. Também há outra resposta, mas não tenho certeza se quero instalar a partir do CD ao vivo por medo de estragar tudo.
Você entenderia meu medo se também passasse 7 horas configurando isso depois de constantemente encontrar problemas de particionamento, comando, tutorial e sistema. Que alegria.
Alguém conhece uma solução fácil para fazer o grub funcionar?
grub-install
. Você não precisa repetir nenhuma das etapas, basta usá-las como um guia para obter uma inserção em um liveCD.Respostas:
Uma coisa realmente irritante ...
Como aparentemente o diretório / boot / grub / i386-pc simplesmente não estava no lugar, finalmente resolvi o problema copiando todo o arquivo / usr / lib / grub / i386-pc para / boot / grub. Isso é tudo.
fonte
Estou no meio de um problema semelhante (aliás também no arco)
O Grub está falhando ao encontrar este arquivo e executar porque está usando um "prefixo" incorreto
Aqui está o que você faz. Você inicializa no modo de recuperação do grub e simplesmente descobre como fazê-lo inicializar.
Primeiro, você executa o set, isto listará variáveis, por exemplo, a minha é
Agora, o prefixo é a variável em que o grub procura o arquivo normal.mod. No meu caso hd1, msdos3 é o mesmo que / dev / sdb3 (da mesma forma, hd0, msdos1 seria / dev / sda1), o que você pode querer fazer para ver uma lista de partições válidas é digitar ls
Agora, no meu caso, novamente, o grub foi instalado em / dev / sdb1, que foi montado como / boot na minha partição arch, então o prefixo correto seria (hd1, msdos1) / grub
Então, para eu inicializar, preciso fazer o seguinte:
No seu caso, você terá que lembrar ou adivinhar em qual partição você instalou o grub. Você pode adivinhar errado, isso não fará nenhum mal, o comando insmod simplesmente falhará e você pode tentar novamente com outra partição.
Depois disso, o grub é carregado normalmente, e posso escolher da lista o que quero inicializar. Normalmente, quando uma bagunça como essa ocorre, a reinstalação do grub no seu mbr (usando o grub-install ) deve corrigi-lo permanentemente, para que você não precise fazer isso toda vez que inicializar. No entanto, estou tendo muita dificuldade em descobrir o que fazer se corrigi-lo não for tão fácil (ou eu compartilharia o que você deve fazer).
Somente se isso falhar (por exemplo, se o prefixo estiver correto, mas você ainda não conseguir inicializar) você deve recorrer ao live ou resgatar cds para solucionar o problema (é melhor evitar isso)
fonte
ls
, em seguida, tentou-los um por um até que eu bati a combinação certa :-)Acabei de ter esse problema hoje após uma nova instalação do Mint 15.
O instalador criou
/boot/grub/x86_64-efi
módulos, mas não os/boot/grub/i386-pc
módulos regulares .Uma reinstalação do Grub a partir do Live CD corrigiu o problema.
Substitua / dev / sda e / dev / sda1 pelo seu dispositivo de inicialização e partição de inicialização e execute os seguintes comandos no Live CD:
fonte
Obrigado pela sua postagem. Resolvi uma mensagem de erro quase idêntica - "arquivo '/grub2/i386-pc/normal.mod' não encontrado" após uma nova instalação do Linux CentOS 5.11 em um computador Dell Optiplex antigo com Windows Vista, para criar um sistema de inicialização.
O que complicou minha situação foi que eu já havia tentado e não consegui instalar a distribuição Fedora 20 mais recente, que usa o GRUB2 em vez do GRUB (LEGACY), nas partições padrão do FEDORA. Então tentei instalar o CentOS diretamente sobre isso, mantendo a partição do Windows e sobrescrevendo as partições do FEDORA.
Durante a instalação do CentOS, deixei minha primeira partição (Windows) sozinha (hd0,0) e criei o diretório / boot em uma segunda partição (boot) (hd0,1). Optei por não modificar o MBR na época e, em vez disso, selecionei a outra opção (carregador de inicialização em outra partição).
Após o que parecia ser uma instalação bem-sucedida, ele foi reiniciado no erro acima.
Suspeito que as informações de inicialização na primeira partição continuem apontando para o local do GRUB2. A CPU não conseguiu encontrar o normal.mod, talvez porque as partições FEDORA00 criadas anteriormente foram removidas.
Aqui estão os meus passos:
Inicialize a partir do CD de instalação do Centos 5 no modo de recuperação ("linux rescue").
Monte a unidade local: chroot / mnt / sysimage
Alterne para o modo de usuário único: su
Atualize a instalação do CentOS: yum update
Use o editor emacs para adicionar "Microsoft Windows Vista" ao arquivo grub.conf: emacs /boot/grub/grub.conf e faça do Vista o sistema operacional padrão.
( NOTA: Consulte www.cyberciti.biz/faq/grubconf-for-windows-vista-or-xp-dual-boot/ e https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html /Installation_Guide/sn-medialess-editing-grub-conf.html .)
Tente atualizar o MBR: grub-install / dev / hda
Reinicie com um erro não identificado do GRUB, no qual a CPU travou após exibir "GRUB".
Reinicie a partir do disco de instalação original do Windows Vista (ou outro disco de recuperação do Windows) e selecione a opção para reparar o disco. Receba a mensagem de que o MBR foi reparado.
Reinicie corretamente no Windows Vista.
Estou certo de que existem soluções mais elegantes, mas isso funcionou para mim. Também tentei baixar o pacote de migração do GRUB para o GRUB2, conforme descrito em http://help.ubuntu.com/community/Grub2/Upgrading , tentando:
Mas não conseguiu encontrar o pacote. Talvez eu devesse ter tentado
yum install grub
.fonte
Adicionando a flittermice ...
se você inicializar a partir de um USB e tiver a pasta i386, poderá abrir a pasta i386 na partição quebrada como raiz e, em seguida, copiar a pasta i386 em funcionamento do usb.
fonte
Eu entrei no meu sistema CentOS 6.7 em duas etapas. Primeiro, segui o conselho do flittermice acima, inicializei no CD ao vivo, montei meu / dev / sda2 como / mnt e copiei a pasta i386-pc de / mnt / usr / ... (você pode encontrar onde está o seu por
find /|grep i386
) para / boot / grub e reiniciado.Isso me deu o grub> em vez do grub rescue> ;-).
Então segui um guia aqui [ https://www.linux.com/learn/tutorials/776643-how-to-rescue-a-non-booting-grub-2-on-linux/] para encontrar e inicializar o minha partição. Foi (hd0,2), porque (hd0,1) foi capturado pelo swap.
Mais tarde, descobri que não era possível tornar essa inicialização "automática", provavelmente porque o meu / boot estava no ext4 com tamanho de inode 256 e o antigo grub1 requer 128. Vou tentar seguir alguns comandos de [ http: // kb.kristianreese.com/index.php?View=entry&EntryID=113] para preparar a partição antes da instalação.
fonte
Reinstale o Ubuntu. Vá para "fazer outra coisa". Selecione sua partição de instalação do Windows como o local em que deve instalar o carregador de inicialização.
Se você já possui uma instalação do Windows, instale o grub na mesma partição; caso contrário, você terá o problema visto na pergunta.
Isso é relevante para 14, 15, 16, 17 Ubuntu todas as versões e provavelmente versões anteriores. Quando perguntado onde instalar o carregador de inicialização, não crie e selecione uma partição / boot; em vez disso, use a partição do Windows.
Obrigado.
fonte
Experimente o cd do grub ao vivo: http://ccm.net/faq/2677-super-grub-disk-live-cd Em seguida, o terminal: cp -r / usr / lib / grub / i386-pc / boot / grub foi o única coisa Esse método funcionou para mim.
fonte