Stavo cercando di eseguire il dual boot del sistema operativo elementare con Windows sul mio laptop (Asus Zenbook UX305). Per farlo ho ridotto la partizione di Windows utilizzando il gestore del disco di Windows, quindi ho utilizzato lopzione “s” installa insieme a Windows “del programma di installazione elementare per impostare automaticamente le partizioni di Linux. Quando ho riavviato dopo linstallazione sono stato messo nella console di grub. è stato in grado di avviare Linux manualmente con i comandi
grub> set root=(hd0,gpt4) grub> linux /boot/vmlinuz-3.19.0-26-generic root=/dev/sda4 grub> initrd /boot/initrd.img-3.19.0-26-generic grub> boot
e ho scoperto che eseguendo il comando
grub> configfile (hd0,gpt4)/boot/grub/grub.cfg
carica il normale menu di grub come dovrebbe accadere, quindi non sembrano esserci problemi con il file di configurazione stesso. Ho anche scoperto che la radice e il prefisso sono su (hd0, gpt1), quindi eseguendo
grub> set root=(hd0,gpt4) grub> set prefix=(hd0,gpt4)/boot/grub grub> insmod normal grub> normal
viene anche caricato il normale menu di grub. Quindi forse il problema è che grub sta cercando sulla partizione sbagliata?
Nel mio BIOS, ho la possibilità di scegliere tra lutilizzo di grub e il bootloader di Windows per lavvio. La selezione del bootloader di Windows mi avvia direttamente in Windows senza problemi.
Tuttavia, non riesco a trovare alcun modo per ottenere alcuna correzione da applicare dopo un riavvio. Ho provato a rieseguire grub-install /dev/sda
, ricreando il file di configurazione con grub-mkconfig
e utilizzando lo strumento GUI di riparazione di avvio di Ubuntu – nessuno di questi ha funzionato. Cè un modo per risolvere questo problema di reinstallare uno o entrambi i sistemi operativi? Preferisco non dover reinstallare Windows, se possibile.
Risposta
Sembra che il menu di GRUB non si carichi perché sta leggendo un file efi non corretto in /boot/efi/EFI/grub/
.
Dopo aver avviato elementaryOS, esegui i seguenti comandi per sostituire grubx64.efi
allinterno di quella cartella.
cd /boot/efi/EFI/grub sudo cp grubx64.efi grubx64.efi.backup (just in case) sudo rm grubx64.efi sudo cp /boot/grub/x86_64-efi/grub.efi /boot/efi/EFI/grub/grubx64.efi
Questa soluzione proviene da utenti che discutono di un bug segnalato in elementaryOS. Vedi i dettagli su: https://bugs.launchpad.net/elementaryos/+bug/1492801
Ho affrontato il tuo stesso identico problema (ho installato elementaryOS Freya 0.3.1 insieme a Windows 10) e ho seguito i passaggi descritti prima di trovare questa soluzione.
Vale la pena notare che prima di applicare la correzione, avevo disabilitato lavvio rapido in Windows 10 che potrebbe o meno avere avuto effetto. Vedere http://www.tenforums.com/tutorials/4189-fast-startup-turn-off-windows-10-a.html
Inoltre, ho dovuto disabilitare lavvio protetto affinché funzionasse . Con lavvio sicuro abilitato, il mio UX305 non è riuscito a caricare completamente grub. Premere il tasto Esc nella prima schermata allavvio, quindi accedere alla configurazione e disattivare lavvio protetto da lì. In alternativa, potrebbe esserci un modo per far funzionare lavvio sicuro, ma per ora sono soddisfatto di questa soluzione: il mio UX305 ora carica il menu GRUB completo di unopzione di Windows!
Risposta
Ho riscontrato lo stesso problema e ho trovato la soluzione:
1) nella modalità di ripristino di grub, esegui “set”
2) mostrami il prefisso = (hd1, gp1) / boot / efi / EFI / ubuntu /
3) Nel mio caso, dato che ho KDE NEON la cartella / boot / efi / EFI / ubuntu / non esiste, ma la cartella / / boot / efi / EFI / neon / Esiste. Quindi il problema è che punta a una cartella non esistente
4) Quindi ho copiato tutta la cartella / boot / efi / EFI / neon / in / boot / efi / EFI / ubuntu /. Questo ha funzionato
NEL mio caso è sbagliato anche (hd1, gp1) perché dovrebbe puntare a hd1, gpt5. Ma io DINDT lho cambiato e ha funzionato.
Quello che ho cambiato è il file /boot/efi/EFI/ubuntu/grub.cfg, per utilizzare il formato msdos:
search.fs_uuid xkjdiw-18e9-4d0a-ac55-2skjdh8425f root hd1,gpt5 set prefix=($root)"/grub" configfile $prefix/grub.cfg