Differenze tra le versioni di "UEFI e GPT"

Da GolemWiki.
Jump to navigation Jump to search
Riga 1: Riga 1:
 
=Introduzione a UEFI e GPT=
 
=Introduzione a UEFI e GPT=
  
UEFI è il nuovo standard che sostituirà il BIOS, ovvero quel programma di base che viene lanciato all'avvio del computer e ne consente la configurazione base e l'avvio dei sistemi operativi. UEFI ha destato attenzione nel mondo Linux per tre motivi:
+
UEFI è il nuovo standard che sostituirà il BIOS, ovvero quel programma di base che viene lanciato all'avvio del computer e ne consente la configurazione base e l'avvio dei sistemi operativi. UEFI ha destato attenzione nel mondo '''Linux''' per tre motivi:
  
# adotta nuovi metodi di avvio e di partizionamento, infatti non è più presente la scelta di avvio dal primo/secondo disco o dal CD, bensì è UEFI a rilevare i supporti avviabili. Anche i CD e le pennine di installazione devono quindi essere UEFI-compatibili, ma la maggior parte lo è (Ubuntu, Debian, ArchLinux...);
+
# adotta nuovi metodi di '''avvio''' e di '''partizionamento''', infatti non è più presente la scelta di avvio dal primo/secondo disco o dal CD, bensì è UEFI a rilevare i supporti avviabili. Anche i CD e le pennine di installazione devono quindi essere '''UEFI-compatibili''', ma la maggior parte lo è (Ubuntu, Debian, ArchLinux...);
# il sistema di partizionamento MBR è stato soppiantato da GPT, quindi bisogna imparare a partizionare i dischi seguendo questo standard: la nuova tabella partizioni consente di creare più di 4 partizioni primarie (non esiste più il concetto di partizione estesa). Inoltre è necessaria una partizione di avvio (Partizione GPT), che contiene i file di avvio dei sistemi installati. Infine, al posto di fdisk e cfdisk si usano rispettivamente gdisk e cgdisk;
+
# il sistema di partizionamento MBR è stato soppiantato da '''GPT''', quindi bisogna imparare a partizionare i dischi seguendo questo standard: la nuova tabella partizioni consente di creare più di 4 partizioni primarie (non esiste più il concetto di partizione estesa). Inoltre è necessaria una partizione di avvio ('''Partizione GPT'''), che contiene i file di avvio dei sistemi installati. Infine, al posto di fdisk e cfdisk si usano rispettivamente '''gdisk''' e '''cgdisk''';
# Microsoft ha messo lo zampino nella tecnologia del secure boot: un controllo che consente di bloccare l'installazione di sistemi non autorizzati (opzione che sulla maggior parte dei dispositivi venduti è disabilitabile)
+
# '''Microsoft''' ha messo lo zampino nella tecnologia del '''secure boot''': un controllo che consente di bloccare l'installazione di sistemi non autorizzati (opzione che sulla maggior parte dei dispositivi venduti è disabilitabile)
  
In questa pagina si cerca di riassumere tutto quello che c'è da sapere su UEFI prendendo come obiettivo l'installazione della distribuzione ArchLinux.
+
In questa pagina si cerca di riassumere tutto quello che c'è da sapere su UEFI prendendo come obiettivo l'installazione della distribuzione '''ArchLinux'''.
  
 
=Configurare UEFI=
 
=Configurare UEFI=
Il primo passo da compiere è entrare nel menù di UEFI, premendo il tasto giusto all'avvio (di solito CANC o F2, ma varia in base al modello). L'interfaccia grafica non è identica su tutti i computer: alcuni produttori usano quella simile al vecchio bios (blu e bianca), altri aggiungono a questa una versione più intuitiva e grafica dove è possibile usare il mouse.
+
Il primo passo da compiere è entrare nel menù di UEFI, premendo il tasto giusto all'avvio (di solito '''CANC''' o '''F2''', ma varia in base al modello). L'interfaccia grafica non è identica su tutti i computer: alcuni produttori usano quella simile al vecchio bios (blu e bianca), altri aggiungono a questa una versione più intuitiva e grafica dove è possibile usare il mouse.
  
 
   
 
   
Per installare sistemi diversamente Windows vanno disabilitati i parametri Fast Boot e Secure Boot, dopodiché è possibile inserire il cd di installazione, da cui fare il boot (a volte è necessario riavviare per far rilevare il disco a UEFI).
+
Per installare sistemi ''diversi da Windows'' vanno disabilitati i parametri '''Fast Boot''' e '''Secure Boot''', dopodiché è possibile inserire il cd di installazione, da cui fare il boot (a volte è necessario riavviare per far rilevare il disco a UEFI).
  
 
=Partizionamento=
 
=Partizionamento=
Fatto il boot con il live CD, apri il terminale e verifica che i tool per GPT siano installati (per esempio gdisk), altrimenti installali con:
+
Fatto il boot con il '''live CD''', apri il '''terminale''' e verifica che i tool per GPT siano installati (per esempio gdisk), altrimenti installali con:
  
 
  # pacman -S gptfdisk              # ArchLinux
 
  # pacman -S gptfdisk              # ArchLinux
 
  # apt-get install cgdisk gdisk    # Ubuntu/Debian
 
  # apt-get install cgdisk gdisk    # Ubuntu/Debian
Con il comando ls /dev/sd* sono mostrati tutti i dischi e le relative partizioni presenti sul disco. Solitamente è presente solo sda con varie partizioni, anche se alcuni computer sono dotati di dischi ibridi (sia meccanici che a stato solido) o di doppio disco, quindi verrà mostrato anche sdb.
+
Con il comando ls /dev/sd* sono mostrati tutti i '''dischi''' e le relative '''partizioni''' presenti sul disco. Solitamente è presente solo sda con varie partizioni, anche se alcuni computer sono dotati di dischi ibridi (sia meccanici che a stato solido) o di doppio disco, quindi verrà mostrato anche sdb.
 
Per saperne di più sui singoli dischi digita gdisk -l /dev/disco
 
Per saperne di più sui singoli dischi digita gdisk -l /dev/disco
  
Riga 29: Riga 29:
 
  Disk identifier (GUID): XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
 
  Disk identifier (GUID): XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
 
  [...]
 
  [...]
Individuato il disco, è possibile passare al partizionamento (è bene sottolineare: la procedura seguente eliminerà ogni dato già presente sul disco, ma a nessuno importa...): utilizzando il comando cgdisk /dev/sda (molto simile a cfdisk) è possibile eliminare tutte le partizioni, tenendo a mente le dimensioni della prima, contrassegnata dal codice EF00. Tale partizione va ricreata, preferibilmente della stessa dimensione, dopodiché è possibile creare le altre partizioni (root, home, windows-dedicata) seguendo la medesima procedura:
 
  
# Nello spazio libero (inizialmente tutto il disco) crea una nuova partizione (New);
+
Individuato il disco, è possibile passare al '''partizionamento''' (è bene sottolineare: la procedura seguente eliminerà ogni dato già presente sul disco, ma a nessuno importa...): utilizzando il comando cgdisk /dev/sda (molto simile a cfdisk) è possibile eliminare tutte le partizioni, tenendo a mente le '''dimensioni della prima''', contrassegnata dal codice EF00. Tale partizione va ricreata, preferibilmente della stessa dimensione, dopodiché è possibile creare le altre partizioni (root, home, windows-dedicata) seguendo la medesima procedura:
# Richiesta del primo settore (First sector): premi invio per lasciare quello di default, ovvero a seguito della precedente partizione;
+
 
# Dimensione della partizione: questo è a scelta libera, il valore può essere inserito nelle unità comuni (Kilo, Mega, Giga), mentre dando invio usa il massimo spazio disponibile. Tieni sempre conto delle seguenti soglie minime
+
# Nello '''spazio libero''' (inizialmente tutto il disco) crea una ''nuova partizione'' (New);
#*EFI - come detto prima, è bene ricrearla della dimensione originaria, nel mio caso era 300M
+
# Richiesta del '''primo settore''' (First sector): premi invio per lasciare quello di default, ovvero a seguito della precedente partizione;
#*Root - senza la home, ovvero solo i file di sistema Linux, occupa al massimo una decina di Gb, quindi per lasciare un margine è bene assegnare 15G
+
# '''Dimensione''' della partizione: questo è a scelta libera, il valore può essere inserito nelle unità comuni (Kilo, Mega, Giga), mentre dando invio usa il massimo spazio disponibile. Tieni sempre conto delle seguenti soglie minime
#*/home - i dati utente hanno dimensione variabile, quindi è a propria discrezione
+
#*'''EFI''' - come detto prima, è bene ricrearla della dimensione originaria, nel mio caso era 300M
# Inserisci il tipo di partizione: EF00 per la EFI, 8300 per Linux, 0700 per Windows;
+
#*'''Root''' - senza la home, ovvero solo i file di sistema Linux, occupa al massimo una decina di Gb, quindi per lasciare un margine è bene assegnare 15G
# Etichetta: sempre utile per identificare a occhio una partizione, è a discrezione dell'utente (esempio LinuxHome per la home);
+
#*'''/home''' - i dati utente hanno dimensione variabile, quindi è a propria discrezione
 +
# Inserisci il tipo di partizione: '''EF00''' per la EFI, '''8300''' per Linux, '''0700''' per Windows;
 +
# Etichetta: sempre utile per identificare a occhio una partizione, è a discrezione dell'utente (esempio ''LinuxHome'' per la home);
 
# Ripeti dal punto 1 per tutte le partizioni necessarie
 
# Ripeti dal punto 1 per tutte le partizioni necessarie
Le partizioni possono essere formattate normalmente (mkfs.ext4 /dev/sdy), eccetto la partizione EFI, che va formattata in FAT con mkfs.vfat -T32 /dev/sda1. Nel caso tu voglia installare anche Windows è preferibile installarlo dopo il partizionamento e prima di installare Linux.
+
 
 +
Le partizioni possono essere formattate normalmente (mkfs.ext4 /dev/sdy), eccetto la partizione '''EFI''', che va formattata in '''FAT''' con mkfs.vfat -T32 /dev/sda1. Nel caso tu voglia installare anche Windows è preferibile installarlo dopo il partizionamento e prima di installare Linux.
  
 
=Configurazione di GRUB=
 
=Configurazione di GRUB=
Installato il sistema, bisogna configurare il bootloader per funzionare con EFI. GRUB ha una versione compatibile, da installare mentre si è chrootati. Per prima cosa la partizione EFI (in questo caso /dev/sda1) deve essere montata in una qualsiasi cartella, in modo da consentirne la scrittura dei file di avvio. Successivamente si può installare GRUB e creare il file di configurazione relativo. In caso di dual-boot gli altri sistemi installati saranno rilevati automaticamente soltanto se la partizione EFI è montata.
+
Installato il sistema, bisogna configurare il '''bootloader''' per funzionare con EFI. GRUB ha una versione compatibile, da installare mentre si è chrootati. Per prima cosa la partizione EFI (in questo caso /dev/sda1) deve essere montata in una qualsiasi cartella, in modo da consentirne la '''scrittura''' dei ''file di avvio''. Successivamente si può '''installare GRUB''' e creare il file di configurazione relativo. In caso di '''dual-boot''' gli altri sistemi installati saranno rilevati automaticamente soltanto se la partizione EFI è montata.
  
 
  # mkdir /boot/EFI
 
  # mkdir /boot/EFI

Versione delle 23:04, 23 gen 2014

Introduzione a UEFI e GPT

UEFI è il nuovo standard che sostituirà il BIOS, ovvero quel programma di base che viene lanciato all'avvio del computer e ne consente la configurazione base e l'avvio dei sistemi operativi. UEFI ha destato attenzione nel mondo Linux per tre motivi:

  1. adotta nuovi metodi di avvio e di partizionamento, infatti non è più presente la scelta di avvio dal primo/secondo disco o dal CD, bensì è UEFI a rilevare i supporti avviabili. Anche i CD e le pennine di installazione devono quindi essere UEFI-compatibili, ma la maggior parte lo è (Ubuntu, Debian, ArchLinux...);
  2. il sistema di partizionamento MBR è stato soppiantato da GPT, quindi bisogna imparare a partizionare i dischi seguendo questo standard: la nuova tabella partizioni consente di creare più di 4 partizioni primarie (non esiste più il concetto di partizione estesa). Inoltre è necessaria una partizione di avvio (Partizione GPT), che contiene i file di avvio dei sistemi installati. Infine, al posto di fdisk e cfdisk si usano rispettivamente gdisk e cgdisk;
  3. Microsoft ha messo lo zampino nella tecnologia del secure boot: un controllo che consente di bloccare l'installazione di sistemi non autorizzati (opzione che sulla maggior parte dei dispositivi venduti è disabilitabile)

In questa pagina si cerca di riassumere tutto quello che c'è da sapere su UEFI prendendo come obiettivo l'installazione della distribuzione ArchLinux.

Configurare UEFI

Il primo passo da compiere è entrare nel menù di UEFI, premendo il tasto giusto all'avvio (di solito CANC o F2, ma varia in base al modello). L'interfaccia grafica non è identica su tutti i computer: alcuni produttori usano quella simile al vecchio bios (blu e bianca), altri aggiungono a questa una versione più intuitiva e grafica dove è possibile usare il mouse.


Per installare sistemi diversi da Windows vanno disabilitati i parametri Fast Boot e Secure Boot, dopodiché è possibile inserire il cd di installazione, da cui fare il boot (a volte è necessario riavviare per far rilevare il disco a UEFI).

Partizionamento

Fatto il boot con il live CD, apri il terminale e verifica che i tool per GPT siano installati (per esempio gdisk), altrimenti installali con:

# pacman -S gptfdisk              # ArchLinux
# apt-get install cgdisk gdisk    # Ubuntu/Debian

Con il comando ls /dev/sd* sono mostrati tutti i dischi e le relative partizioni presenti sul disco. Solitamente è presente solo sda con varie partizioni, anche se alcuni computer sono dotati di dischi ibridi (sia meccanici che a stato solido) o di doppio disco, quindi verrà mostrato anche sdb. Per saperne di più sui singoli dischi digita gdisk -l /dev/disco

# gdisk -l /dev/sda
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 976773168 sectors, 465.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
[...]

Individuato il disco, è possibile passare al partizionamento (è bene sottolineare: la procedura seguente eliminerà ogni dato già presente sul disco, ma a nessuno importa...): utilizzando il comando cgdisk /dev/sda (molto simile a cfdisk) è possibile eliminare tutte le partizioni, tenendo a mente le dimensioni della prima, contrassegnata dal codice EF00. Tale partizione va ricreata, preferibilmente della stessa dimensione, dopodiché è possibile creare le altre partizioni (root, home, windows-dedicata) seguendo la medesima procedura:

  1. Nello spazio libero (inizialmente tutto il disco) crea una nuova partizione (New);
  2. Richiesta del primo settore (First sector): premi invio per lasciare quello di default, ovvero a seguito della precedente partizione;
  3. Dimensione della partizione: questo è a scelta libera, il valore può essere inserito nelle unità comuni (Kilo, Mega, Giga), mentre dando invio usa il massimo spazio disponibile. Tieni sempre conto delle seguenti soglie minime
    • EFI - come detto prima, è bene ricrearla della dimensione originaria, nel mio caso era 300M
    • Root - senza la home, ovvero solo i file di sistema Linux, occupa al massimo una decina di Gb, quindi per lasciare un margine è bene assegnare 15G
    • /home - i dati utente hanno dimensione variabile, quindi è a propria discrezione
  4. Inserisci il tipo di partizione: EF00 per la EFI, 8300 per Linux, 0700 per Windows;
  5. Etichetta: sempre utile per identificare a occhio una partizione, è a discrezione dell'utente (esempio LinuxHome per la home);
  6. Ripeti dal punto 1 per tutte le partizioni necessarie

Le partizioni possono essere formattate normalmente (mkfs.ext4 /dev/sdy), eccetto la partizione EFI, che va formattata in FAT con mkfs.vfat -T32 /dev/sda1. Nel caso tu voglia installare anche Windows è preferibile installarlo dopo il partizionamento e prima di installare Linux.

Configurazione di GRUB

Installato il sistema, bisogna configurare il bootloader per funzionare con EFI. GRUB ha una versione compatibile, da installare mentre si è chrootati. Per prima cosa la partizione EFI (in questo caso /dev/sda1) deve essere montata in una qualsiasi cartella, in modo da consentirne la scrittura dei file di avvio. Successivamente si può installare GRUB e creare il file di configurazione relativo. In caso di dual-boot gli altri sistemi installati saranno rilevati automaticamente soltanto se la partizione EFI è montata.

# mkdir /boot/EFI
# mount /dev/sda1 /boot/EFI
# grub-install --target=x86_64-efi --efi-directory=$esp --bootloader-id=grub --recheck --debug
# grub-mkconfig -o /boot/grub/grub.cfg