venerdì 14 marzo 2014

Installare Linux con UEFI e GPT, il nuovo standard che sostituirà il BIOS.

Maria Susana Diaz | 10:42 |
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...);
  • 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;
  • (non) dulcis in fundo, Microsoft ha messo lo zampino nella tecnologia del secure boot: un controllo che consente di bloccare l'installazione di sistemi non autorizzati (cosa che a loro fa molto comodo), cosa che sulla maggior parte dei dispositivi venduti è disabilitabile.
In questa pagina cerco di fare una summa di quello che c'è da sapere su UEFI e compagnia, prendendo come obiettivo l'installazione della distribuzione ArchLinux. La procedura dovrebbe valere anche per altre distribuzioni e su tutti i computer, ma avendo testato solo sul mio (ASUS S56CM) non do una certezza del 100%. Spippola se sai quello che fai.
archlinux uefi3Configurare 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.
UEFI grafico UEFI standard
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).
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
Se ti è piaciuto l'articolo, iscriviti al feed per tenerti sempre aggiornato sui nuovi contenuti del blog:

GOOGLE+

LINKEDIN

Xtreme Download Manager, XDMAN Ubuntu, audio, Linux opera mini, browser internet Chromium Linux, Chrome, browsers tux collection, mascote Linux LibreCAD, Grafica, Disegno vim, editor, linux, ubuntu Ardour, audio, Ubuntu Unity, deskyop, Gnome, Ubuntu grafica 3d, Linux, Blender