Come posso riparare grub? (Come riavere Ubuntu dopo aver installato Windows?)


344

Ho installato Windows 7, che ha mangiato il file di avvio di Ubuntu. Quando si avvia il computer, ora passa direttamente a Windows, senza darmi la possibilità di avviare Ubuntu.

Come posso riavere Ubuntu?


Penso che sia un compito comune, ho anche due HDD e Ubuntu + Windows. Spero che tu possa ripararlo nel modo giusto. Prova a seguire questo tutorial. Per qualsiasi domanda, chiedimi!
antivirtel,

1
Correlati (quando GRUB è stato installato sul MBR dell'unità sbagliata ): problema di salvataggio di Grub dopo l'installazione di Ubuntu
Eliah Kagan

Sì, puoi semplicemente fare un avvio normale e installarlo con Windows, quindi dovrebbe apparire nel menu di avvio di Grub all'avvio del computer.
Rampoo1208,

So che questo è un vecchio thread, ma ho risolto il problema cambiando la modalità di avvio nel BIOS da UEFI a Legacy.

1
NOTA: la risposta accettata è un'istruzione generale su come riparare grub. È applicabile anche alla grande varietà di circostanze in cui GRUB è stato scritto in modo errato dall'installatore (ubiquità).
Danatela,

Risposte:


348

Quando si installa Windows, Windows presuppone che sia l'unico sistema operativo (SO) sulla macchina, o almeno non tiene conto di Linux. Quindi sostituisce GRUB con il proprio boot loader. Quello che devi fare è sostituire il boot loader di Windows con GRUB. Ho visto varie istruzioni per sostituire GRUB facendo confusione con i comandi di GRUB o alcuni di questi, ma per me il modo più semplice è semplicemente chrootinstallarlo ed eseguirlo update-grub. chrootè fantastico perché ti consente di lavorare sulla tua installazione reale, invece di provare a reindirizzare le cose qua e là. È veramente pulito.

Ecco come:

  1. Avvia dal CD live o USB live, in modalità "Prova Ubuntu".
  2. Determina il numero di partizione della partizione principale. sudo fdisk -l, sudo blkidO GParted (che dovrebbe essere già installato, per impostazione predefinita, sulla sessione dal vivo) può aiutare qui. In questa risposta suppongo che lo sia /dev/sda2, ma assicurati di usare il numero di partizione corretto per il tuo sistema!

    Se la partizione principale si trova in un LVM , il dispositivo sarà invece localizzato /dev/mapper/, molto probabilmente, /dev/mapper/{volume}--{os}-rootdove si {volume}trova il nome del volume LVM ed {os}è il sistema operativo. Eseguire ls /dev/mapperil nome esatto.

  3. Monta la tua partizione:

    sudo mount /dev/sda2 /mnt  #Replace sda2 with the partition from step 2
    

    Se si dispone di un separato /boot, /varo /usrpartizioni , ripetere i passaggi 2 e 3 per montare queste partizioni a /mnt/boot, /mnt/vare /mnt/usr, rispettivamente. Per esempio,

    sudo mount /dev/sdXW /mnt/boot
    sudo mount /dev/sdXY /mnt/var
    sudo mount /dev/sdXZ /mnt/usr
    

    sostituendo sdXW, sdXYe sdXZcon i rispettivi numeri di partizione.

  4. Bind mount alcune altre cose necessarie:

    for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
    
  5. Se Ubuntu è installato in modalità EFI ( vedi questa risposta se non sei sicuro ), usa sudo fdisk -l | grep -i efio GParted per trovare la tua partizione EFI. Avrà un'etichetta di EFI. Montare questa partizione, sostituendo sdXYcon il numero di partizione effettivo per il proprio sistema:

    sudo mount /dev/sdXY /mnt/boot/efi
    
  6. chroot nella tua installazione di Ubuntu:

    sudo chroot /mnt
    
  7. A questo punto, sei nella tua installazione, non nella sessione live, ed esegui come root. Aggiorna grub:

    update-grub
    

    Se ricevi errori o se vai al passaggio 7 non ha risolto il problema, vai al passaggio 8. (Altrimenti, è facoltativo.)

  8. A seconda della situazione, potrebbe essere necessario reinstallare grub:

    grub-install /dev/sda
    update-grub # In order to find and add windows to grub menu.
    
  9. Se Ubuntu è installato in modalità EFI e l'UUID della partizione EFI è cambiato, potrebbe essere necessario aggiornarlo /etc/fstab. Confrontalo:

    blkid | grep -i efi
    grep -i efi /etc/fstab
    

    Se l'UUID della partizione EFI corrente (da blkid) differisce da quello in /etc/fstab, aggiornare /etc/fstabcon l'UUID corrente.

  10. Se tutto ha funzionato senza errori, allora sei pronto:

    exit
    sudo reboot
    
  11. A questo punto, dovresti essere in grado di avviarlo normalmente.

Se non riesci ad avviare normalmente e non hai eseguito il passaggio 8 perché non c'erano messaggi di errore, riprova con il passaggio 8.

  • A volte dare a GRUB2 la configurazione corretta per le tue partizioni non è sufficiente e devi installarlo (o reinstallarlo) sul Master Boot Record, cosa che fa il passaggio 8. L'esperienza nell'aiutare gli utenti nella chat ha dimostrato che il passaggio 8 è talvolta necessario anche quando non vengono visualizzati messaggi di errore.

1
I commenti non sono per una discussione estesa; questa conversazione è stata spostata in chat .
Thomas Ward

Voglio ancora che Windows sia il mio sistema operativo di avvio principale. Questa è ancora la soluzione giusta? Come faccio a scegliere il sistema operativo su cui avviare? F11?
Jeff,

1
@ScottSeverance Ho visto dal tuo profilo che vivi in ​​DFW. Hai mai pensato di tenere lezioni o tutorial dal vivo per coinvolgere le persone in Linux?
Mohammed Joraid,

1
Questi problemi non invecchiano: D - Non che quando si ha a che fare con EFI, potrebbe essere necessario installarlo grub-efi-amd64e se si utilizza l'avvio protetto, è consigliabile utilizzarlo grub-install --uefi-secure-boot. Questo è anche dettagliato in superuser.com/a/376471/197980
Raffael

1
Questa soluzione è applicabile anche per Windows 10 su computer con BIOS (ovvero non UEFI). La domanda su quale hai può essere risolta con questo suggerimento: thewindowsclub.com/check-if-uefi-or-bios .
Okolnost,

115

Il programma di installazione di Windows non si preoccupa degli altri sistemi operativi nel sistema. Quindi scrive il proprio codice sul record di avvio principale. Fortunatamente anche la soluzione è semplice.

Devi riparare l'MBR. Fai quanto segue

Avvia utilizzando un live usb / cd di ubuntu. Utilizzare boot-repairper risolvere il problema.

Dopo l'avvio con live usb / cd, eseguire il seguente comando nel terminale:

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

Usa Recomended Repair.

inserisci qui la descrizione dell'immagine

Maggiori informazioni - https://help.ubuntu.com/community/Boot-Repair


2
vuoi dire che è intenzionale da parte del popolo Microsoft ?? Anche il dual boot ha funzionato con Windows 7, quindi non contraddice la tua prima riga che "L'installer di Windows non si preoccupa di altri sistemi operativi nel sistema".
Shagun Sodhani,

Windows rompe grub tutto il tempo è un problema davvero comune e uno che ho dovuto affrontare da solo. La risposta è ancora buona e dovrebbe risolvere il problema.
Damiano,

6
hai installato prima Windows 7 e poi Linux. Quindi Linux riconosce Windows e Windows non riconosce Linux. Provando a reinstallare Windows7, vedrai cosa intendevo dire.
Web-E

Non farlo quando hai partizioni crittografate (luks), è incasinato. Inoltre reinstalla GRUB con apt-get - non ho idea del perché lo stia facendo.
Meng Tian,

1
la riparazione di avvio supporta molto bene la modalità legacy, forse è necessario avviare il cd / usb live anche in modalità legacy @fuzzyanalysis :)
Web-E

25

Eseguire l'avvio da un pendrive o CD USB Ubuntu live e
installare Boot-Repair su Ubuntu seguendo i passaggi seguenti

Apri il terminale ed esegui i seguenti comandi

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair

Dopo aver completato l'installazione, è possibile avviarlo dal menu Sistema-> Amministrazione-> Ripristino avvio se si utilizza Gnome oppure cercare "Ripristino avvio" nel trattino se si utilizza Unity. Quindi seguire i seguenti screenshot:

Metodo 1

  • Fai clic sulle opzioni avanzate

Schermata iniziale

  • Spuntare le opzioni mostrate di seguito

opzioni avanzate

  • Cambia la scheda in Grub Location tab e seleziona le opzioni mostrate nella figura

inserisci qui la descrizione dell'immagine

Premi Applica e riavvia il sistema

Metodo 2

  • Seleziona le opzioni di riparazione di avvio consigliate come mostrato nel primo screenshot

Documentazione :


Web-E ha già dato questa risposta . Forse migliorarlo invece? Ho lasciato un commento sul perché non ha funzionato.
Dan Dascalescu,

2
Questo metodo ha funzionato per me dopo un caso particolarmente brutto di un aggiornamento di Windows 10 che sovrascrive GRUB e quindi interrompe il proprio boot loader. Seguendo questa procedura sono stati ripristinati sia Windows che Linux. Nel mio caso era Linux Mint 18.1, e i menu di riparazione di avvio apparivano leggermente diversi, ma tutto funzionava bene. Grazie!
TheBigH,

11

Basta installare easyBCDin Windows 7 e farlo

Aggiungi nuova voce> Linux / BSD> (seleziona) Grub2> (premi) Aggiungi voce

Quindi puoi scegliere Ubuntu sul bootloader di Windows 7 per accedere a Grub2 (bootloader precedente).


3
Queste istruzioni da sole non ripristinano il Bootloader di Grub - quando li ho provati, hanno aggiunto un'opzione di avvio extra in Windows che, selezionando, ha riavviato il mio computer e mi ha portato a un prompt grub>. Quindi occorrerebbero ulteriori passi su cosa fare dopo.
therobyouknow,

1
easyBCD mi ha permesso di aggiungere e rimuovere opzioni di avvio che potevo vedere sia nel Caricatore di avvio di Windows che nel BIOS, ma non hanno mai funzionato perché easyBCD si basa su una sorta di magia automatizzata per trovare partizioni Linux ... non ha funzionato quando la mia partizione Linux era su un hard disk separato.
Analisi fuzzy il

7

Su sistemi basati su EFI (come la maggior parte dei sistemi forniti con Windows 8 o versioni successive), Windows a volte aggiorna il proprio caricatore di avvio o lo reimposta come caricatore di avvio predefinito. Ciò è particolarmente comune quando si reinstalla il sistema operativo o si esegue un importante aggiornamento del sistema (ad esempio l'aggiornamento all'ultima versione di Windows). Si noti che è improbabile che Windows cancelli effettivamente qualsiasi file GRUB su un computer basato su EFI. Tutto il necessario per avviare Ubuntu è ancora in atto; è solo stato bypassato. In questi casi, una reinstallazione completa di GRUB è eccessiva e, di fatto, comporta una (piccola) possibilità che creerà nuovi problemi.

Pertanto, invece di reinstallare GRUB in questi casi, consiglio di reimpostare GRUB (o qualunque boot loader o boot manager che preferisci) come predefinito. Esistono diversi modi per farlo, tra cui:

  • EasyUEFI - Il modo più semplice per regolare l'ordine di avvio, se il sistema si avvia direttamente su Windows, è utilizzare EasyUEFI, che è uno strumento GUI di terze parti gratuito (per la versione di base) per gestire l'ordine di avvio EFI. È piuttosto autoesplicativo: individua la ubuntuvoce nell'elenco delle opzioni di avvio e spostala in cima all'elenco. Al prossimo riavvio, GRUB dovrebbe presentarsi. (Se usi qualcosa di diverso da GRUB, dovrai individuare la sua voce.)
  • bcdedit- Lo bcdeditstrumento Windows può essere utilizzato per impostare GRUB sull'ordine di avvio predefinito. Il comando bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi, digitato in una finestra del prompt dei comandi dell'amministratore , lo farà; tuttavia, se il tuo computer si avvia con Secure Boot attivo, bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efisarà invece richiesto. In effetti, quest'ultimo comando di solito funziona anche se Secure Boot non è in uso, quindi utilizzerei prima quel comando. Nota che esiste uno strumento di shell di Windows più avanzato che richiede una sintassi leggermente diversa da quella che ho presentato, ma non ricordo i dettagli.
  • Avvio singolo su Ubuntu : la maggior parte degli EFI fornisce un boot manager integrato, a cui si accede premendo un tasto funzione, Esc o Invio all'inizio del processo di avvio del sistema. È probabile che la ubuntuvoce di avvio Ubuntu venga visualizzata in questo menu del gestore di avvio, consentendoti di avviare Ubuntu. In alternativa, è possibile avviare un supporto di emergenza Ubuntu, come il programma di installazione avviato in modalità "prova prima di installare". In entrambi i casi, è quindi possibile utilizzare efibootmgrper regolare l'ordine di avvio:
    1. Digitare sudo efibootmgrper visualizzare le voci di avvio.
    2. Nota la BootOrderriga corrente .
    3. Individua la voce ubuntue annotane il Boot####numero.
    4. Digitare sudo efibootmgr -o xxxx[,yyyy,zzzz,....]per modificare l'ordine di avvio, creando xxxxil numero per Ubuntu. Ciò che segue probabilmente non è molto importante, anche se ho notato che sembra che Windows si aggiunga nuovamente all'inizio dell'ordine di avvio se non è nell'elenco. Pertanto, dovresti probabilmente assicurarti che Windows sia nell'elenco e potrebbe essere più sicuro riordinare l'elenco in modo che siano presenti tutte le voci originali, proprio con la ubuntuvoce spostata in cima all'elenco.
  • Utilità di configurazione del firmware : alcune utility di configurazione dell'EFI consentono di regolare l'ordine di avvio. I dettagli variano notevolmente da un EFI all'altro, quindi non entrerò nei dettagli, ma potresti cercare tale opzione nella tua utility di configurazione.

Esistono altre varianti di queste procedure, come l'utilizzo bcfgin una shell EFI, l'utilizzo blessin macOS, l'utilizzo di my rEFInd per eseguire un avvio singolo, ecc. Tuttavia, inizierei con EasyUEFI; è probabilmente la soluzione più semplice. A volte, però, Windows insiste sul fatto di renderlo predefinito ogni volta che si avvia e i rapporti indicano che bcdeditpotrebbe fare un lavoro migliore per affrontare quel problema.

Si noti che nessuna delle precedenti si applica alle installazioni in modalità BIOS; tuttavia, poiché la maggior parte dei computer forniti con Windows 8 o versioni successive si avviano in modalità EFI, le installazioni in modalità BIOS stanno diventando sempre più rare, quindi in molti casi è meglio affrontare il problema in modo EFI piuttosto che reinstallare ciecamente GRUB.


1
l'avvio manuale di una volta in Linux (fedora28 nel mio caso) tramite il boot manager integrato EFI mi ha permesso efibootmgrdi riordinare l'ordine di avvio (come descritto da Rod -> grazie!) che è stato rovinato da una win10 aggiornare. Successivamente il bootmanager di GRUB appare come prima prima dell'aggiornamento, quindi posso confermare che la soluzione fornita ha funzionato per me. Non sono riuscito a trovare la versione base di EasyUEFI ma solo una versione di prova della versione pro non gratuita offerta.
antiplex

5

Ora esiste una soluzione più semplice:

  1. Riavvia e inserisci le opzioni del BIOS del tuo computer (F2 o talvolta F11).
  2. Vai al menu Boot e seleziona Boot Device Priority
  3. Controlla se Windows Boot Manager si trova sopra l'unità di avvio principale (di solito SATA HDD ... o IDE HDD ... ). In tal caso, spostare la priorità del disco di avvio sopra quella di Boot Manager di Windows.
  4. Salvare le opzioni del BIOS ed uscire (in genere F10).

Questo è stato testato su un laptop Chronos Samsung Series 7 con doppio avvio di Windows 8 e Ubuntu 13.10, avvio sicuro disabilitato, UEFI e avvio legacy abilitato.


Questa è stata l'opzione più pulita per me. Sono alcuni altri tasti, ma ehi, funziona. Ho un mix di dispositivi legacy e UEFI avviati. Se gli utenti eseguono l'avvio di un sistema operativo molto più di un assortimento di altri, questo può essere più veloce (e più sicuro) nel lungo periodo.
Analisi fuzzy il

Questo ha funzionato anche per me, dopo che Windows 10 si è auto-aggiornato.
luis_js

Questa soluzione ha funzionato per me quando ho eliminato Ubuntu da Windows 10.
Vikas Gupta

3

Boot-Repair ha funzionato per me. È molto facile da usare l'applicazione grafica, non è necessario utilizzare la riga di comando, è sufficiente fare clic su un pulsante :)

Tutte le opzioni di riparazione disponibili sono descritte nella documentazione di Ubuntu e c'è una pagina separata che spiega come avviare Boot-Repair (creando un disco di avvio o installandolo in un disco live di Ubuntu esistente) e come usarlo.

Basta avviare un CD live di Ubuntu, installare Boot-Repair ed eseguirlo.


Sarebbe bello se ci fosse un modo più semplice per ottenere Boot Repair, però. È più veloce impostare una chrootriparazione che su Google in giro per qualche altro strumento da installare.
Scott Severance,

2

Quando GRUB viene interrotto, l'utente generalmente non ha accesso ai sistemi, quindi la riparazione deve essere eseguita da una sessione live (live-CD o live-USB).

Esistono molte cause possibili per un'interruzione di GRUB: Windows scrive su MBR, DRM impedisce a GRUB di installarsi correttamente, bug del programma di installazione, modifica dell'hardware ... L'aggiornamento di GRUB come proposto inizialmente da Scott non è generalmente sufficiente, reinstallare GRUB come proposto da Marco è più efficiente, ma ci sono ancora diverse situazioni che richiedono altre modifiche (aggiunta di opzioni al kernel, scoperta del menu di GRUB, modifica delle opzioni di GRUB, scelta dell'architettura host corretta ...). Altre difficoltà per riparare GRUB sono l'uso di chroot e la scelta delle partizioni / dischi giusti.

Tutto questo è stato semplificato in un piccolo strumento grafico: Boot-Repair . Deve essere integrato nel CD di Ubuntu 12.04 per un uso più semplice, ma per le persone che ne hanno bisogno ora, ci sono già alcune distro che lo integrano: Ubuntu-Secured-Remix (CD di Ubuntu che integra Boot-Repair), Boot-Repair-Disk (CD che esegue Boot -Ripara all'avvio), ...

Spero che sia di aiuto.


1

Le risposte fornite da Scott e Web-E sono abbastanza buone e hanno aiutato molte volte. Ma molte volte, lo strumento di riparazione di avvio non è in grado di riparare grub a causa di problemi relativi alla piattaforma i386 e amd64 o a quelli in cui grub non riesce a trovare la efidirectory.
Ciò che ha risolto il mio problema più di 10 volte è eliminare manualmente le vecchie installazioni di grub e installarne una nuova.

Quindi, prima esegui i primi 6 passaggi dalla risposta di Scott in cui puoi saltare il 5 ° passaggio se dà un errore:

  1. Avvia dal CD live o USB live, in modalità "Prova Ubuntu".
  2. Determina il numero di partizione della partizione principale. sudo fdisk -l, sudo blkidO GParted (che dovrebbe essere già installato, per impostazione predefinita, sulla sessione dal vivo) può aiutare qui. In questa risposta suppongo che lo sia /dev/sda2, ma assicurati di usare il numero di partizione corretto per il tuo sistema!

    Se la partizione principale si trova in un LVM , il dispositivo sarà invece localizzato /dev/mapper/, molto probabilmente, /dev/mapper/{volume}--{os}-rootdove si {volume}trova il nome del volume LVM ed {os}è il sistema operativo. Eseguire ls /dev/mapperil nome esatto.

  3. Monta la tua partizione:

    sudo mount /dev/sda2 /mnt  #Replace sda2 with the partition from step 2
    

    Se si dispone di un separato /boot, /varo /usrpartizioni , ripetere i passaggi 2 e 3 per montare queste partizioni a /mnt/boot, /mnt/vare /mnt/usr, rispettivamente. Per esempio,

    sudo mount /dev/sdXW /mnt/boot
    sudo mount /dev/sdXY /mnt/var
    sudo mount /dev/sdXZ /mnt/usr
    

    sostituendo sdXW, sdXYe sdXZcon i rispettivi numeri di partizione.

  4. Bind mount alcune altre cose necessarie:

    for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
    
  5. Se Ubuntu è installato in modalità EFI ([vedi questa risposta se non sei sicuro] [efi]), usa sudo fdisk -l | grep -i efio GParted per trovare la tua partizione EFI. Avrà un'etichetta di EFI. Montare questa partizione, sostituendo sdXYcon il numero di partizione effettivo per il proprio sistema:

    sudo mount /dev/sdXY /mnt/boot/efi
    
  6. chroot nella tua installazione di Ubuntu:

    sudo chroot /mnt
    

Quindi procedere come segue:

  1. Configura tutti i pacchetti in sospeso.
    sudo dpkg --configure -a
  2. Risolvi i pacchetti rotti.
    sudo apt install -fy
  3. Rimuovere l'attuale grub.
    sudo apt purge -y grub*-common grub-common:i386 shim-signed
    Questo potrebbe avvisarti che il tuo dispositivo non avrà bootloader e potrebbe non essere in grado di avviarsi la volta successiva. Vai avanti e accettalo.
  4. sudo apt install -y grub-pc
    Dopo aver eseguito questo comando, ti verrà chiesto di puntare la corrente sdXYper installare il bootloader. Trova dove è installato il tuo attuale sistema operativo usando il sudo fdisk -lcomando. Sarà etichettato come Linux. Navigare in quella finestra usando il Tabtasto e selezionare un'opzione usando il Spacetasto.
  5. Se tutto va bene, grub verrà installato correttamente. Puoi anche fare sudo grub-updateun doppio controllo.

Se il problema persiste, puoi leggere la wiki di Arch per capire veramente di grub per affrontare molte altre varietà di problemi. (Sì, aiuta anche per Ubuntu!).


0

Windows non vede le partizioni formattate Linux. È necessario utilizzare gparted da un liveCD e creare una partizione primaria formattata NTFS con il flag di avvio.

Alcuni hanno avuto problemi se la nuova partizione primaria è dopo la partizione estesa poiché Windows non ripristina sempre correttamente la tabella delle partizioni. Meglio avere buoni backup e un backup separato della tabella delle partizioni.

Eseguire il backup della tabella delle partizioni in un file di testo e salvarlo su un dispositivo esterno.

sudo sfdisk -d /dev/sda > PTsda.txt

Questo è solo per i sistemi MBR (msdos). Se l'installazione di Ubuntu è nell'unità di partizione GPT, è possibile installare Windows solo in modalità UEFI o riconvertire l'unità in MBR (msdos).


Le nuove versioni di sfdisk e fdisk che funzionano con le unità partizionate gpt in 16.04 o successive, eseguiranno anche il backup delle unità partizionate gpt con il comando sopra. oldfred non ricorda cosa ha mangiato per cena la scorsa notte, quindi non sono sicuro di ciò che ha pubblicato nel 2013. :)
oldfred

Ciao Fred, quando cucino dimenticando la cena della scorsa notte è una benedizione. Abbiamo eliminato i nostri commenti precedenti.
WinEunuuchs2Unix

0

Solo il fsckcomando ha riparato lo grub-rescueschermo per me.

Utilizzare Boot-Repair per avviare da Live-CD, quindi aprire Terminale

Ottieni il dispositivo corretto:

sudo fdisk -l

È necessario trovare il dispositivo di avvio, il dispositivo di avvio ha *nella categoria Boot come qui:

Device     Boot   Start       End   Sectors  Size Id Type
/dev/sda1          2048   2000895   1998848  976M 82 Linux swap / Solaris
/dev/sda2  *    2000896 943716351 941715456  449G 83 Linux

Ora ripara il disco usando:

sudo fsck /dev/sda2 -y

Nota: / dev / sda2 è il dispositivo di avvio in questo esempio.

Riavvia al termine. Fatto.


0

La risposta di Scott Severance è valida e dettagliata, ma esiste una risoluzione che non richiede alcun dispositivo di avvio esterno e quindi non è necessario identificare e montare manualmente tutte le partizioni Ubuntu che portano al chroot.

In Windows 10, è possibile utilizzare Advanced Recoveryper selezionare un dispositivo (partizione?) Da cui avviare.

Vai a Settingse scegli Update & Security:

inserisci qui la descrizione dell'immagine

Vai a Recovery:

inserisci qui la descrizione dell'immagine

Da Advanced StartupscegliereRestart Now

inserisci qui la descrizione dell'immagine

Quindi scegliere Use a Devicee tutte le opzioni di avvio dovrebbero essere presentate a voi. Scegli la partizione 'Ubuntu' e il tuo PC dovrebbe quindi avviarsi da quella partizione.

Una volta avviato nel mio solito ambiente Ubuntu, ho provato a correre grub-updatema questo non ha fatto cambiamenti.

Ho quindi trovato la mia /boot/efipartizione che era /dev/nvme0n1p1e funzionava sudo grub-install /dev/nvme0n1p1e poi sudo update-grub.

Questo ha ripristinato più volte il mio record di avvio principale poiché sembra che ci sia una nuova politica di Windows 10 di sovrascrivere l'MBR su aggiornamenti minori .


0

Ho avuto un problema diverso, causato (probabilmente) boot-repaircancellando i miei /etc/grub.d/modelli, delineato nella mia domanda qui: Ubuntu 18.04 non si avvia dopo l'installazione di Windows 10

Come sottolineato dal commento di @karels, la configurazione di grub viene generata usando i file in /etc/grub.d. La mia directory conteneva solo /etc/grub.d/25_custom, che conteneva strane voci di menu che puntavano a immagini .efi inesistenti. Sembrava che /etc/grub.dforse i miei modelli fossero stati eliminati boot-repair.

Ho risolto questo problema con:

  1. Avvio con Live CD (probabilmente importante usare la stessa versione di Ubuntu)
  2. sudo mount /dev/sdxx /mnt
  3. sudo cp /etc/grub.d/* /mnt/etc/grub.d/
  4. sudo update-grub
  5. Riavvia e rilassa dopo 48 ore di dolore
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.