Aggiungi Windows 10 all'elenco di GRUB OS

17

Recentemente ho preso un computer da scuola. È arrivato con Windows 8.1 installato. Ho quindi installato un'altra copia di Windows 8.1 (in modo che utilizzasse la licenza Windows Pro integrata) e l'ho aggiornata a Windows 10. Ho quindi installato Ubuntu accanto a Windows 8 e 10.

Nota che ho creato una partizione separata da 255 MB per / boot.

Ora, quando avvio il computer, prima vedo un prompt di GRUB (ho già nascosto il prompt di grub "perchè mi piace così) con Windows 8 e le opzioni di Ubuntu. Tuttavia, non esiste l'opzione di Windows 10. Se seleziono Ubuntu, il computer si avvia in Ubuntu. Tuttavia, se seleziono l'opzione Windows 8, vengono quindi inviati al bootloader di Windows, dove poi mi danno le opzioni per avviare Windows 8 o Windows 10. (Tuttavia, a questo punto, il computer ha già caricato il kernel e tutto Apparentemente Microsoft ha frainteso il concetto di caricatore boot e ha deciso che ciò significava "avviare praticamente l'intero sistema prima di mostrare effettivamente il bootloader". Tipico Microsoft.)

Come posso disattivare il bootloader di Windows e aggiungere un'opzione di Windows 10 a GRUB? EDIT: qualcuno ha risposto dicendomi di disabilitare il bootloader di Windows. Tuttavia, non so ancora come aggiungere Windows all'elenco dei GRUB OS. Qualcuno può aiutare con questo?

EDIT 2: Dopo aver rimosso Windows 10 dal bootloader di Windows con EasyBCD, sembrava che, dopo alcuni riavvii, avrebbe continuamente scoperto se stesso e Windows 10 sarebbe riapparso. Tuttavia, in seguito ho eliminato Windows 10 dall'elenco dei sistemi operativi in ​​msconfig e sembra che sia rimasto cancellato.

Tuttavia, ANCORA non sono riuscito a far apparire Windows 10 in GRUB. È come se GRUB semplicemente non lo rilevasse.

Inoltre, inserirò questo nella domanda in modo che le persone lo vedano: ho provato a usare boot-repair , tuttavia NON ha aiutato nessuno.

    
posta Hitechcomputergeek 16.08.2015 - 00:09

6 risposte

17

Usa:

sudo update-grub
sudo grub-install /dev/[BOOT PARTITION eg. Sda6]

comandi nel terminale di Ubuntu, probabilmente risolverà il tuo problema.

Con questo comando il sistema rileva automaticamente l'installazione della finestra e la aggiunge alla lista grub.

    
risposta data Neel Shah 16.08.2015 - 04:20
7

A volte os-prober è sbagliato.

Guarda l'UUID della partizione di Windows 10, ad esempio:

sudo blkid /dev/sda2

Quindi modifica /etc/grub.d/40_custom e alla fine del file aggiungi:

menuentry "Windows 10" --class windows --class os {
   insmod ntfs
   search --no-floppy --set=root --fs-uuid $your_uuid_here$
   ntldr /bootmgr
}

Non dimenticare di cambiare l'UUID.

Infine aggiorna il tuo file di configurazione di grub:

sudo update-grub

Source

    
risposta data noraj 07.03.2017 - 17:08
5

usa questa app EasyBCD per windows link scarica la versione gratuita e installala.

quando lo apri vedrai una voce per windows 8 e una per windows 10.

cancella la voce di Windows 8 e sarai a posto.

Aggiorna dopo aver eseguito i passaggi precedenti torna a Ubuntu,

apri il terminale premendo ctrl + alt + T

quindi copialo sopra questi comandi uno dopo l'altro,

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

e con questo installerai uno strumento chiamato boot-repair.

apri la riparazione di avvio da dash e otterrai questa finestra

scegli la riparazione consigliata e segui i passaggi.

Nota devi essere connesso a Internet quando usi boot-repair.

    
risposta data RonnieDroid 16.08.2015 - 00:31
3

Per quanto ho capito la tua domanda, hai due diverse installazioni di Windows su uno o più hard disk e non vuoi che il caricatore di Windows interferisca o che gestisca entrambe le installazioni di Windows. Ricordo che era possibile su configurazioni legacy avviare direttamente il kernel di Windows da Grub (potrei sbagliarmi qui) ma non sono stato in grado di farlo su configurazioni UEFI. Avere due configurazioni di bootloader Windows indipendenti che possono essere chiamate da Grub in modo indipendente dovrebbe essere molto vicino a ciò che stai cercando.

  

È arrivato con Windows 8.1 installato.

Suppongo che questo sia un computer con capacità UEFI.

  1. Verificare che il computer sia effettivamente compatibile con UEFI (rimuoverò la mia risposta se non lo è) e familiarizzare con le differenze tra BIOS e UEFI ( diverse modalità di avvio , efibootmgr, diverse tabelle delle partizioni, partizione di sistema EFI (ESP), caricatori EFI ...).
  2. Quindi verifica che tutti i SO siano installati in modalità UEFI e controlli di avere una tabella delle partizioni GPT. È possibile utilizzare Windows ' dism per eseguire il backup e ripristinare le partizioni in un nuovo layout della tabella delle partizioni e utilizzare il prompt dei comandi dal più recente supporto di installazione di Windows per reinstallare il bootloader, maggiori dettagli al riguardo nel prossimo punto.
    • Dato che ti è stato consigliato di provare vari altri strumenti che non risolvono il tuo problema devi ripristinare queste modifiche in una condizione incontaminata, altrimenti questo diventerà sempre più confuso. Mi dispiace per quello : (
  3. Puoi usare la mia risposta da Come avviare Windows 8 da una partizione MBR legacy in modalità UEFI tramite GRUB?
    • Questa risposta installa una configurazione del caricatore di avvio Windows indipendente tramite bcdboot in una posizione diversa in cui Grub la chiamerà. Per comodità ho scelto la partizione di root di Windows. Dovrai farlo per l'installazione di ogni di Windows, in modo che ogni installazione di Windows abbia il proprio e si avvii solo da solo (pulisci i singoli menu di avvio di Windows da altre voci).
    • Ricorda che devi creare una singola voce per ogni installazione di Windows che vuoi avviare in /etc/grub.d/40_custom e seguire le istruzioni e le spiegazioni su UUID, partizioni e tabelle delle partizioni.
    • Probabilmente disabilita tutte le funzionalità semi-intelligenti che rilevano diversi SO come OS-prober in Grub ( GRUB_DISABLE_OS_PROBER ) o risoluzione dei problemi di avvio con Windows o riparazione di avvio (o pulizia manuale dopo di essi).

N.B .: La tua richiesta era di essere in grado di gestire tutti i sistemi operativi con Grub, tuttavia con UEFI, il tradizionale termine "dualboot" diventa quasi un termine improprio. UEFI consente la coesistenza di diversi bootloader sull'ESP ed è possibile scegliere quale avviare (se sono stati registrati nel firmware UEFI e il firmware del produttore non funziona con le caratteristiche specifiche come solo l'avvio di Windows). La cosa triste qui è che solo pochissime persone possono pensare di installare più di una versione (indipendente) di Windows , Linux o una versione di Ubuntu su un computer (o un hard disk che viene utilizzato con diversi computer e avvia una diversa installazione della stessa versione del sistema operativo su ciascun computer). La maggior parte di questo è già possibile, ma i meccanismi in Windows e Ubuntu (Fedora, ...) scelgono chiaramente di sovrascrivere ciò che è nel loro spazio dei nomi sotto falso presupposto che non ci può essere uno solo.

(avvio Windows8 / 10, Ubuntu, Ubuntu LTS e Fedora su un computer one e ho armeggiato un paio di volte con l'avvio UEFI in base a requisiti diversi.)

    
risposta data LiveWireBT 14.11.2015 - 15:13
3

Questa soluzione fornisce una voce corretta nel menu grub2 e un chainload diretto in Windows 10 senza riferimento al BIOS. Viene dal link quindi non reclamerò alcun credito. È stato un sollievo trovare una soluzione funzionante

In breve, modifica /etc/grub.d/40_custom e aggiungi:

menuentry 'Windows 10' {
    search --fs-uuid --no-floppy --set=root CC66-4B02
    chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

Per trovare l'UUID per --set = root line (CC66-4B02 nell'esempio) si usa sudo fdisk -l per identificare la partizione EFI quindi sudo blkid / dev / sda1 (o qualsiasi altra cosa) per trovare l'UUID di la partizione EFI. Nota che non è la partizione Windows ma quella EFI di cui hai bisogno. Dopo aver salvato la modifica, esegui sudo update-grub per generare il file /boot/grub/menu.cfg e poi riavvia il test.

    
risposta data peterthevicar 17.11.2017 - 01:50
1

Accedi al tuo sistema operativo Ubuntu, apri un terminale:

sudo update-grub

riavvio

    
risposta data Nidhan 15.05.2017 - 14:33

Leggi altre domande sui tag