Como posso carregar o Ubuntu quando tudo o que tenho é o Grub?

11

Então, eu atualizei o Ubuntu com o Kernel mais recente. Mas após a atualização e depois que reiniciei o Ubuntu, tudo o que recebo é o GRUB. Como carrego o Ubuntu novamente quando tudo o que tenho é o GRUB?

Eu instalei o Ubuntu usando o wubi.

Obrigado pilhas pela ajuda

Joshua Partogi
fonte
Esta instalação do wubi é normal?
precisa saber é o seguinte
Isso está desatualizado, acredito. Alguém pode me dizer como fazer isso no grub2?

Respostas:

16

Usando o Grub

Se você chegar a um grubprompt e o sistema e o kernel ainda estiverem instalados na partição, você pode "manualmente" inicializar o sistema - ou seja, sem a ajuda de um grub.cfg em funcionamento. Isso também funciona com uma execução de grub da mídia ao vivo. Para esse fim, o grub inclui um comando rudimentar ine, que você pode usar para encontrar a partição e inicializar o sistema.

find /vmlinuz

Isso deve fornecer a partição como (hd0,0). Você também pode usar o lscomando para vasculhar a partição e ver quais kernels estão disponíveis. O searchcomando funciona de maneira semelhante. Você também pode usar o preenchimento de guias .

set root=(hd0,1)

Obviamente, substitua o identificador de partição pelo que findlhe foi mostrado.

linux /vmlinuz root=/dev/sda1
initrd /initrd.img

Selecione a imagem do kernel e a imagem initrd, um par que sempre precisa ser usado juntos. Felizmente, o Ubuntu cria um par de links simbólicos no diretório raiz que apontam para uma imagem funcional e initrd. Observe que você precisa substituir /dev/sda1por uma representação da partição no esquema usado pelo kernel do Linux. Aproximadamente, (hd0,1)corresponde a /dev/sda1; (hd0,2) corresponds to/ dev / sda2 ;(hd1,1) corresponde a /dev/sdb1.

boot

Isso inicializa o kernel selecionado da partição selecionada. Depois de conseguir inicializar seu sistema, você pode usá-lo para restaurar o grub, como é detalhado, por exemplo, aqui .

Grub com Wubi

O acima foi baseado no pressuposto de que o Ubuntu era instalado regularmente, ou seja, em sua própria partição separada. Enquanto você escreve, você usou o Wubi, o que significa que você o instalou em um arquivo grande em uma partição do Windows (NTFS) usando uma técnica chamada "Lupin". Não vejo razão para que isso não funcione em princípio, embora o processo seja mais complicado. Aqui está o conteúdo de uma instalação grub.cfgbaseada em Wubi:

insmod part_msdos
insmod ntfs
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set be300f9c300f5ab3
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
linux /boot/vmlinuz root=/dev/sda1 loop=/ubuntu/disks/root.disk
initrd /boot/initrd.img

Você precisará adaptar isso ao seu caso específico. Neste trecho, retirado de uma instalação 10.10, o searchcomando localiza a partição raiz usando um UUID ou identificador do sistema de arquivos, que você provavelmente não conhece; você pode usar --file --set /ubuntu/disks/root.disk( aqui está a documentação oficial). Essa configuração do grub cria um disco virtual - um "dispositivo de loopback" - chamado loop0que representa o conteúdo do "arquivo de partição", /ubuntu/disks/root.diskna sua partição NTFS. Com um pouco de tentativa e erro, você poderá fazer isso funcionar.

Loevborg
fonte
4
Eu receboerror: unknown command find'.
Abdull
@ Abdull - isso ocorre porque você está usando o grub2 em vez do grub legado. Pressione Tab duas vezes e veja os comandos disponíveis, ou pager = 1 \\ help
Yaroslav Nikitenko 27/10
Se você estiver usando EFI, substitua linuxe initrdpor resp. linuxefie initrdefi.
Yaroslav Nikitenko