Usando o Grub
Se você chegar a um prompt grub
e o sistema e o kernel ainda estiverem instalados na partição, você poderá "manualmente" inicializar o sistema - ou seja, sem a ajuda de um grub.cfg funcional. Isso também funciona com um grub executado a partir de mídia ao vivo. Para isso, o grub inclui um comando rudimentar, que você pode usar para encontrar a partição e inicializar o sistema.
find /vmlinuz
Isso deve lhe dar a partição como (hd0,0). Você também pode usar o comando ls
para examinar a partição e ver quais kernels estão disponíveis. O comando search
funciona de maneira semelhante. Você também pode usar a conclusão da guia .
set root=(hd0,1)
É claro, substitua o identificador de parição pelo que find
mostrou para você.
linux /vmlinuz root=/dev/sda1
initrd /initrd.img
Selecione a imagem do kernel e a imagem initrd, um par que sempre precisa ser usado em conjunto. Felizmente, o Ubuntu cria um par de links simbólicos no diretório raiz que aponta para uma imagem funcional e initrd. Note que você precisa substituir /dev/sda1
por 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. Uma vez que você tenha conseguido inicializar o seu sistema, você pode usá-lo para restaurar o grub, como é detalhado, por ex. aqui .
Grub com Wubi
O acima foi baseado na suposição de que o Ubuntu foi instalado regularmente, ou seja, em sua própria partição separada. Conforme você escreve, você usou o Wubi, o que significa que você o instalou em um grande arquivo em uma partição 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 um grub.cfg
baseado em uma instalação do 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 em particular. Nesse fragmento, obtido de uma instalação 10.10, o comando search
localiza a partição raiz usando um UUID ou identificador do sistema de arquivos, que você presumivelmente não conhece; você pode usar --file --set /ubuntu/disks/root.disk
( aqui é a documentação oficial). Essa configuração do grub cria um disco virtual - um "dispositivo de loopback" - chamado loop0
, que representa o conteúdo do "arquivo de partição", /ubuntu/disks/root.disk
em sua partição NTFS. Com um pouco de tentativa e erro, você deve conseguir fazer isso funcionar.