Come posso caricare Ubuntu quando tutto ciò che ho è Grub?


11

Quindi ho aggiornato Ubuntu con l'ultimo kernel. Ma dopo l'aggiornamento e dopo aver riavviato Ubuntu, tutto ciò che ottengo è GRUB. Come caricare nuovamente Ubuntu quando tutto ciò che ho è GRUB?

Ho installato Ubuntu usando wubi.

Grazie mille per l'aiuto


Questa è l'installazione di Wubi o l'installazione normale?
karthick87,

Questo è obsoleto, credo. Qualcuno può dirmi come farlo su grub2?

Risposte:


16

Utilizzando Grub

Se si arriva a un grubprompt e il sistema e il kernel sono ancora installati sulla partizione, è possibile "manualmente" avviare il sistema, ovvero senza l'aiuto di un grub.cfg funzionante. Questo funziona anche con un grub eseguito da live media. A tal fine grub include un comando ine rudimentale, che è possibile utilizzare per trovare la partizione e avviare il sistema.

find /vmlinuz

Questo dovrebbe darti la partizione come (hd0,0). Puoi anche usare il lscomando per cercare la partizione e vedere quali kernel sono disponibili. Il searchcomando funziona in modo simile. È inoltre possibile utilizzare il completamento della scheda .

set root=(hd0,1)

Naturalmente, sostituisci l'identificatore di partizione con qualsiasi cosa findti abbia mostrato.

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

Seleziona l'immagine del kernel e l'immagine initrd, una coppia che deve sempre essere usata insieme. Fortunatamente Ubuntu crea una coppia di collegamenti simbolici nella directory principale che punta a un'immagine funzionante e initrd. Si noti che è necessario sostituire /dev/sda1con una rappresentazione della partizione nello schema utilizzato dal kernel Linux. Circa, (hd0,1)corrisponde a /dev/sda1; (hd0,2) corresponds to/ dev / sda2 ;(hd1,1) corrisponde a /dev/sdb1.

boot

Questo avvia il kernel selezionato dalla partizione selezionata. Una volta che sei riuscito ad avviare il tuo sistema, puoi usarlo per ripristinare grub, come è dettagliato ad esempio qui .

Grub con Wubi

Quanto sopra era presupposto che Ubuntu fosse installato regolarmente, cioè in una sua partizione separata. Mentre scrivevi, hai usato Wubi, il che significa che l'hai installato su un file di grandi dimensioni su una partizione Windows (NTFS) usando una tecnica chiamata "Lupin". Non vedo alcun motivo per cui questo non possa funzionare in linea di principio, sebbene il processo sia più complicato. Ecco il contenuto di un grub.cfgbasato su un'installazione 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

Dovrai adattarlo al tuo caso particolare. In questo frammento, preso da un'installazione 10.10, il searchcomando trova la partizione root usando un UUID o identificatore del filesystem, che presumibilmente non conosci; puoi --file --set /ubuntu/disks/root.diskinvece usare ( ecco la documentazione ufficiale). Questa configurazione di grub crea un disco virtuale - un "dispositivo di loopback" - chiamato loop0che rappresenta il contenuto del "file di partizione", /ubuntu/disks/root.disksulla partizione NTFS. Con un po 'di tentativi ed errori, dovresti essere in grado di farlo funzionare.


4
Ricevoerror: unknown command find'.
Abdull l'

@Abdull - questo perché stai usando grub2 invece di legacy grub. Premi due volte Tab e vedi i comandi disponibili, oppure cercapersone = 1 \\ aiuto
Yaroslav Nikitenko,

Se si utilizza EFI, sostituire linuxe initrdcon risp. linuxefie initrdefi.
Yaroslav Nikitenko,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.