Doppio avvio UEFI Windows 7 e Ubuntu 12.04 (entrambi a 64 bit). La voce W7 non appare in GRUB


8

Dopo aver provato a installare entrambi i sistemi operativi per 2 giorni, sono confuso e mi arrabbio ... Ho SSD da 128 GB e HDD da 500 GB entrambi vuoti. Il mio laptop è Asus K55VM. Supporto BIOS UEFI.

Cosa ho fatto:

  1. Installa nuovo SSD (Samsung 830 128GB)

  2. Usa GParted su liveCD per creare una nuova tabella di partizioni (GPT) e creare 3 partizioni (nell'SSD) per scopi diversi:

    • Partizione 1: 80 GB (w7);
    • Partizione 2: 30 GB (Ubuntu 12.04 -Just / -);
    • Partizione 3: 10 GB inutilizzati (per estensioni future delle altre partizioni)
  3. Installa Windows 7 (con UEFI) nella partizione 1. Questo crea:

    • / dev / sda1 -> 100 MB per il sistema (avvio UEFI immagino) - FAT32
    • / dev / sda2 -> 100 MB circa. per MSR
    • / dev / sda3 -> 79.800 MB circa. per i dati di Windows 7

A questo punto tutto funziona bene. Ho W7. Ora installo Ubuntu 12.04 amd64 (con UEFI) come segue:

  1. Installa / nella partizione 2 -> / dev / sda4 ext4 da 30 GB e nell'hdd installo / home e scambio.

  2. Seleziono bootloader in / dev / sda1 (dove dovrebbe essere l'avvio UEFI).

  3. Installo gli aggiornamenti e riavvio.

Problema: ora appare solo il menu di grub con voci Ubuntu e non Windows 7.

Soluzione alternativa trovata : quando accendo il laptop, prima di caricare GRUB premo il tasto ESC e visualizzo l'avvio del BIOS, quindi posso selezionare per avviare la partizione Windows, la partizione Ubuntu, DVD, USB, ecc ... ma penso che non sia il migliore modo per avviare diversi sistemi operativi.

Ho provato: sudo update-grub2 senza successo.

Cosa posso fare??

Risposte:


6

Trova dove risiede il bootloader di Windows montando la partizione efi:

sudo mount -t vfat /dev/sdx1 /mnt/efi/

E cerca bootmgfw.efi. Quindi, trova l'UUID dell'unità:

sudo grub-probe --target=fs_uuid /mnt/efi/EFI/Microsoft/Boot/bootmgfw.efi

Aggiungi questo UUID a /etc/grub.d/40_custom:

menuentry "Windows x86_64 UEFI-GPT" {
    search --fs-uuid --no-floppy --set=root UUID
    chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

Finalmente corri update-grub.


Sei il mio eroe insanguinato !! Grazie mille che ha funzionato abbastanza bene. Mi hai reso felice =)
Joe,

1
Per informazioni, Boot-Repair avrebbe aggiunto la voce in 1 clic. help.ubuntu.com/community/Boot-Repair
LovinBuntu il

Tranne che Boot-repair non funziona sul mio sistema ...
fccoelho,

3

La soluzione di Jarondl è perfettamente valida, ma un'altra è utilizzare un programma di boot manager separato per selezionare tra GRUB e il boot loader di Windows. Conosco tre gestori di avvio EFI che è possibile installare:

  • rEFIt , che è disponibile nei repository di Ubuntu. Si noti che la versione dal sito rEFIt non funzionerà su PC basati su UEFI, poiché utilizza un formato file specifico per Mac. Perfino la versione di Ubuntu presenta una serie di piccoli difetti sui PC basati su UEFI. Idealmente, rEF Presenta un grazioso menu di avvio della GUI (anche se ha anche una modalità di testo).
  • rEFInd , che è una versione aggiornata di rEFIt con correzioni affinché i vari glitch ed estensioni UEFI funzionino con un boot loader EFI incorporato nel kernel 3.3.0. Si noti che ho biforcato / mantenuto la ricerca.
  • gummiboot, che è un boot manager di solo testo. (Questo sito continua a dimenticare chi sono e di conseguenza mi rifiuta di pubblicare più di due collegamenti ipertestuali, altrimenti ne avrei fornito uno.)

Sia rEFIt che rEFInd rilevano automaticamente altri caricatori di avvio, quindi una volta configurati, dovrebbero rilevare qualsiasi caricatore di avvio del sistema operativo e fornire un menu. Non ho ancora provato gummiboot, quindi non so quanto sia semplice da configurare, ma è concettualmente simile a rEFIt / rEFInd. L'uso di uno di questi programmi aggiunge complessità al processo di avvio, quindi se GRUB funziona e ne sei soddisfatto, non ha molto senso utilizzare uno di questi programmi. Sono molto utili se GRUB è di carattere o semplicemente non funziona, come spesso accade con GRUB 2 sui sistemi UEFI, nella mia esperienza. In tale situazione, è possibile abbandonare GRUB 2 a favore di ELILO o di un caricatore di stub EFI del kernel 3.3.0 o successivo. Questi caricatori di avvio non possono reindirizzare il processo di avvio a Windows, rendendo molto utile un gestore di avvio separato.


Refind non supporta le partizioni ntfs ...
fccoelho,

1
Il fatto che rEFInd non venga fornito con un driver NTFS è irrilevante. Il boot loader EFI di Windows risiede su EFI System Partition (ESP), che è FAT, quindi rEFInd non ha bisogno di accedere a un volume NTFS. Inoltre, non è giusto individuare la ricerca su questo punteggio; né rEFIt né gummiboot vengono forniti con un driver NTFS.
Rod Smith,

0

ATTENZIONE: solo per x64

grub-probe --target=fs_uuid /boot/efi/efi/Microsoft/Boot/bootmgfw.efi

Aggiungi questo a /etc/grub.d/40_custom:

menuentry "Boot bootx64.efi, generated by Boot-Repair" {
search --fs-uuid --no-floppy --set=root UUID

**chainloader (${root})/EFI/Boot/bootx64.efi**
}

L'altro codice non funziona.

Testato su ASUS N56V

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.