Partizione EFI vs / partizione di avvio


41

Mi sono appena seduto per installare debian 7, che contiene qualcosa chiamato "EFI" che è completamente nuovo per me.

Ho eseguito l'installazione come al solito;

  • 256 MB / partizione di avvio, avviabile, non crittografato
  • Dimensione disco rimanente come / partizione, crittografata

Il programma di installazione mi ha avvertito che "non è stata trovata alcuna partizione EFI", ma l'ho ignorato, perché mi piace vivere pericolosamente.

Ma quell'installazione non è avviabile, grub si lamenta di "ELF magic" e mi porta in modalità di salvataggio.

Quindi ora sto eseguendo di nuovo l'installazione e ho trovato l'opzione per creare una partizione EFI. Le mie domande sono le seguenti;

  • Che cos'è?
  • Perché mi sembra di richiederne uno adesso?
  • Ho ancora bisogno di una partizione separata / avvio?
  • Ho Windows 7 installato sullo stesso disco, che ha sempre funzionato bene con grub2 da mbr, è possibile salvare anche quell'installazione?

Risposte:


47

Il tuo computer ha un firmware UEFI, un sostituto per il vecchio BIOS (anche se ha ancora il supporto per i sistemi operativi solo BIOS, con il nome "CSM").

  • Nei sistemi BIOS, il bootloader (o "stage1" di un bootloader di grandi dimensioni) è archiviato all'interno dell'MBR , nel settore zeroth del disco. (L'MBR a 512 byte riserva 446 byte per il codice bootstrap, il resto viene utilizzato per le informazioni sulla partizione.) Se il bootloader è troppo grande, il suo codice MBR "stage1" di solito cerca di trovare i file "stage2" nella partizione / boot.

  • Nei sistemi EFI o UEFI, l'area del codice bootstrap in MBR è generalmente vuota (la maggior parte dei sistemi UEFI non usa nemmeno MBR per il partizionamento, preferendo GPT ). Invece, tutti i bootloader sono archiviati come normali .efiprogrammi in una "partizione di sistema EFI", che è una normale partizione FAT32 con uno speciale "tipo di partizione" nella tabella delle partizioni. Se si dispone di più sistemi operativi, condividono la stessa partizione di sistema EFI.

    / Boot / efi
    ├── EFI
    │ ├── arch
    │ │ ├── initramfs-linux.img
    │ │ └── vmlinuz-linux.efi
    │ └── gummiboot
    │ └── gummiboot.efi
    ├── caricatore
    │ ├── voci
    │ │ └── arch.conf
    │ └── loader.conf
    └── SHELLX64.EFI
    

    Alcuni utenti scelgono di impostare la partizione EFI /boot, rendendo la configurazione un po 'più semplice per i sistemi solo Linux. Ma quando il dualbooting - anche se si tratta di due distro Linux differenti - suggerisco di avere la partizione EFI in /boot/efi. Un separato di /bootsolito non è necessario.)

La partizione EFI è necessaria se si desidera avviare il sistema in modalità UEFI. Tuttavia, se si desidera Debian avviabile UEFI, potrebbe essere necessario reinstallare anche Windows, poiché il mixaggio dei due metodi di avvio è nella migliore delle ipotesi scomodo.

Sia Windows 7 che Debian 7 supportano sia BIOS che UEFI e installano il bootloader appropriato a seconda della modalità in cui è stato avviato il programma di installazione . Spesso, i sistemi UEFI hanno un interruttore "modalità di avvio" nella schermata delle impostazioni, con opzioni come "UEFI solo "," UEFI e CSM "," Legacy (BIOS) only "," BIOS, then UEFI "o qualcosa di simile. (CSM è Compatibility Support Module, l'emulazione del BIOS.)

Probabilmente il tuo sistema Windows 7 è stato installato in modalità BIOS, ma il programma di installazione Debian ora si avvia in modalità UEFI e offre l'installazione di un bootloader compatibile UEFI. (Forse hai girato l'interruttore "UEFI / BIOS" da qualche parte. Non lo so.)

Per ora, puoi ignorare completamente EFI e installare nuovamente GRUB2 nell'MBR, possibilmente usando grub-install --target=i386-pc.


1
Bella risposta! Quindi, se uso GPT ed EFI, ho solo bisogno di separare "EFI boot partition", "/" (root), "swap", "/ home" e va bene?
Timur Fayzrakhmanov,

2
@TimurFayzrakhmanov: il minimo richiesto è "/ boot (partizione di sistema EFI)" e "/ (root)".
Grawity

1

Non è lo stesso sistema operativo ma era un problema simile, avevo Ubuntu 13.04 installato su un PC con Windows 8 e mi ha dato l'opzione di avvio che va direttamente a Windows 8. Quindi avevo bisogno di usare la riparazione di avvio ma non riconosceva il mio scheda wireless, quindi seguo i passaggi su questo link per riparare il problema con la scheda wireless: posso abilitare il WiFi su un Live CD di Ubuntu?

Fondamentalmente quello che ho fatto per abilitare il wireless è stato:

  1. Vai a Impostazioni di sistema → Sorgenti software → Driver aggiuntivi
  2. Seleziona un'opzione disponibile diversa da "Non utilizzare il dispositivo"
  3. Premi "Applica modifiche"

Quindi ho seguito i passaggi da https://help.ubuntu.com/community/Boot-Repair

Fondamentalmente quello che ho fatto è stato:

  1. avviare Boot-Repair da: 1.the Dash (il logo Ubuntu nella parte superiore sinistra dello schermo)

    1. o Sistema-> Amministrazione-> menu Ripristino avvio (solo Ubuntu 10.04)

    2. o digitando "boot-repair" in un terminale

  2. Quindi fare clic sul pulsante "Riparazione consigliata". Al termine della riparazione, annotare l'URL (paste.ubuntu.com/XXXXX) visualizzato su un foglio, quindi riavviare e verificare se è stato ripristinato l'accesso ai sistemi operativi.

  3. Se la riparazione non è andata a buon fine, indica l'URL alle persone che ti aiutano tramite e-mail o forum.

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.