Terminal GNU GRUB - Em vez da tela de login do Ubuntu

14

Nota: Antes de marcá-lo como duplicado, leia a pergunta completamente.

Eu uso o Ubuntu 12.04 normalmente, mas hoje quando liguei o laptop e selecionei o Ubuntu entre duas opções: Windows e Ubuntu, a seguinte tela apareceu:

insira a descrição da imagem aqui

Pesquisei muito aqui, mas não consegui encontrar uma solução funcional.

Uma solução sugeriu que eu deveria fazer primeiro lsem diferentes partições e ver onde o arquivo vmliuzou initrdreside. Mas não encontrei onde esses arquivos.

Também brinquei com o brilho do meu laptop, o que pode ser a causa dessa tela emperrada.

Editar 1:

Ainda não consigo encontrar o diretório que contém o initrd.imgarquivo.

grub> ls 
(memdisk) (hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)
grub> set pager=1
grub> ls (memdisk)/
wubuilder.cfg
grub> ls (hd0)/
error: unknown filesystem.
grub> ls (hd0,3)/
$AttrDef $BadClus $Bitmap $Boot $Extend/ $LogFile $MFT $MFTMirr $RECYCLE.BIN/ $Secure $UpCase $Volume ./ Code School/ Downloads/ Movies/ System Volume Information/ ubuntu/ wubuilder
grub> ls (hd0, 2)/
Programming Files (x86)/ Users/ $AttrDef $BadClus $Bitmap $Boot $Extend/ $LogFile $MFT $MFTMirr $RECYCLE.BIN/ $Secure $UpCase $Volume ./ Documents and Settings/ hiberfil.sys Intel/ MSOCache/ pagefile.sys PerfLogs/ Program Files/ ProgramDAta/ Recovery/ Setup/ swsetup/ System Volume Information/ Windows/ wubildr wubildr.mbr
grub> ls (hd0, 1)/
$AttrDef $BadClus $Bitmap $Boot $Extend/ $LogFile $MFT $MFTMirr $RECYCLE.BIN/ $Secure $UpCase $Volume ./ Boot/ bootmgr BOOTSECT.BAK System Volume Information/

Edição 2:

Além disso, observe que eu instalei o Ubuntu 12.04 e o Windows 7. E meu Ubuntu reside no seguinte local; Eu verifiquei inicializando o sistema operacional Windows:

grub ls (hd0,3)/ubuntu/
install/ uninstall-wubi.exe winboot/ 
Arslan Ali
fonte
Sim, eu usei /no final. Mas meu formato era ls (hdx,msdosy)/, xe ysendo números. Devo fazer ls /boot/o mesmo para ver se os arquivos mencionados existem ou não.
Arslan Ali

Respostas:

11

Se você instalou sem o Wubi.exe:

No grubprompt, tente estes comandos:

set pager=1
ls

Agora, suponha que a saída de lsé (hd0) (hd0,msdos2) (hd0,msdos1):, para encontrar o sistema de arquivos raiz linux, execute:

ls (hd0,1)/ que deve fornecer todos os arquivos / pastas /, como bin/ boot/ cdrom/ dev/ etc/ home/ lib/etc.

Feito isso, continue com:

set root=(hd0,1)
linux /boot/vmlinuz-3.13.0-29-generic root=/dev/sda1
initrd /boot/initrd.img-3.13.0-29-generic
boot

É claro que substitua vmlinuz-3.13.0-29-generice initrd.img-3.13.0-29-genericpelo que você encontra em seu/boot

/dev/sda1é o local do sistema raiz. Talvez você precise alterá-lo se /dev/sda1não funcionou.

Se você instalou usando o Wubi.exe:

Se você instalou o Ubuntu usando o Wubi, execute as seguintes etapas, conforme indicado no WubiGuide :

  1. inicialize no Windows, execute a chkdsk /rpartir do Windows na mesma unidade em que você instalou o Ubuntu, desligue corretamente e tente inicializar novamente no Ubuntu.

  2. se ainda não estiver bom, verifique se você possui um C:\ubuntu\disks\root.diskarquivo. Se esse arquivo estiver ausente, inicialize no Windows, abra o Windows Explorer, configure-o para poder ver as pastas ocultas e procure uma pasta oculta chamada C:\found.000ou dir0000.chk. Mova os arquivos de found.000 para o local original dentro do \ubuntu\disksdiretório. Você pode ter que renomeá-lo para root.disk.

Ron
fonte
Eu segui seus passos, mas não consigo encontrar /boot/até agora. Atualizei minha pergunta, revise-a.
Arslan Ali
Como você instalou o Ubuntu? Você usouwubi installer
Ron
Sim @ Ron, eu instalei através do instalador do wubi. Eu fiz isso há muito tempo.
Arslan Ali
Oh cara! Finalmente funcionou. Eu segui as mesmas instruções que você escreveu em sua edição, mas forma em outro lugar. Poderia, por favor, alterar a ordem e mover as últimas instruções escritas relacionadas a \disks\root.diskpara cima - o que parece correto - dessa forma, elas serão beneficiadas principalmente e eu vou aceitar sua resposta. Obrigado mesmo.
Arslan Ali
Observe que a causa mais provável desse problema foi forçar o desligamento do sistema operacional.
Arslan Ali
8

Execute esses comandos

grub> linux  (hd0,1)/vmlinuz root=/dev/sda1
grub> initrd  (hd0,1)/initrd.img
grub> boot

Substitua hd0pelo seu número do disco rígido e / dev / sda1 pela sua partição segurando o / boot, principalmente o dafult funcionará se você não tiver mais de um disco rígido e com a instalação padrão

verifique isto para mais informações

Quando você pode inicializar novamente, você deve corrigir seu problema

sudo update-grub
Maythux
fonte
Não devo usar em (hd0,msdos1)vez de (hd0,1)?
Arslan Ali
Também funciona
Maythux
Desculpe, não consigo encontrar essa partição. O que estou recebendo é: atualizei a pergunta, revise-a.
Arslan Ali