Table of Contents

Debian GNU/Linux su Acer Aspire ES 11/ES 14 con UEFI

Su questi portatili con disco SSD è necessario installare una versione recente di Debian, altrimenti il disco non viene riconosciuto.

La prima installazione (fallita) è stata tentata avendo impostato nel BIOS il Boot Mode Legacy.

Si avvia con una chiavetta USB Netinst di Stretch e si sceglie l'opzione Graphical Install. È necessario passare il parametro edd=off, altrimenti il programma di installazione non parte: premere TAB sul menu di avvio e quindi aggiungere il parametro alla fine della riga di comando kernel.

L'installazione va a buon fine senza errori, ma al primo riavvio tutto si blocca al caricamento della ramdisk iniziale:

Loading initial ramdisk ...

Sembra proprio che ci sia una incompatibilità con il software e la Boot Mode Legacy. Si deve attivare quindi la modalità UEFI seguendo questa procedura piuttosto intricata:

Prima dell'installazione

Bisogna attivare il Boot Mode UEFI, ma con il Secure Boot disabilitato:

  1. Accendere il PC e premere F2 per entrare nel BIOS
  2. Boot ⇒ Boot ModeUEFI
  3. Se si riavvia otteniamo il messaggio Secure Boot Fail, non è possibile avviare né da hard disk né da chiavetta USB.
  4. Spengere, riaccendre e premere F2 per entrare nel BIOS
  5. Security ⇒ Set Supervisor Password (impostare una password del BIOS, altrimenti è impossibile disabilitare il Secure Boot).
  6. Boot ⇒ Secure BootDisabled
  7. Verificare che la priorità di boot sia USB HDD.
  8. Riavviare. Parte il programma di installazione da USB, non è necessaria l'opzione edd=off.

Durante l'installazione si sceglie di utilizzare il metodo EFI per il partizionamento del disco. Al reboot del sistema si ottiene però l'errore No Bootable Device dal BIOS. È necessario aggiungere il sistema appena installato al menu UEFI:

Dopo l'installazione

Si deve indicare il nuovo sistema come fidato, il Secure Boot va comunque disabilitato:

  1. Accendere il PC e premere F2 per entrare nel BIOS (viene richiesta la password).
  2. Boot ⇒ Secure BootEnabled (è necessario per poter accedere alla voce di menu seguente).
  3. Security ⇒ Select an UEFI file as trusted
    • Navigare nel filesystem UEFI fino a debian grub64.efi.
  4. Boot ⇒ Secure BootDisabled (è necessario altrimenti il file grub64.efi non viene accettato come valido).

Vedere il paragrafo più avanti sullo schema di partizioni creato dal programma di installazione.

In caso di reinstallazione

Si deve resettare l'indice dei sistemi fidati e aggiungere quello reinstallato:

  1. Accendere il PC e premere F2 per entrare nel BIOS
  2. Boot ⇒ Secure BootEnabled (è necessario per poter accedere alla voce di menu seguente).
  3. Security ⇒ Erase all Secure Boot Settings
  4. Riavviare ed accedere nuovamente al BIOS.
  5. Security ⇒ Select an UEFI file as trusted
    • Navigare nel filesystem UEFI fino a debian grub64.efi.
  6. Boot ⇒ Secure BootDisabled

Preparare le partizioni manualmente

Per partizionare e formattare le partizioni manualmente (in modo simile al programma di installazione Debian) ecco le ricetta parted:

parted --script /dev/mmcblk0 \
  mklabel gpt \
  mkpart boot   fat32         1MB 540MB \
  mkpart swap   linux-swap  540MB 4.8GB \
  mkpart rootfs ext4        4.8GB  100% \
  set 1 boot on

e quindi i comandi di formattazione:

mkfs.fat -F 32 /dev/mmcblk0p1
mkswap         /dev/mmcblk0p2
mkfs.ext4      /dev/mmcblk0p3

Clonazione di una installazione UEFI

Supponiamo di aver avviato un PC nuovo con GRML ed aver partizionato e formattato il disco con le istruzioni del paragrafo precedente. È possibile clonare una installazione remota con questi passaggi:

mount /dev/mmcblk0p3 /mnt
cd /mnt
ssh remote "dump -0 -a -b 64 -f - /dev/mmcblk0p3" | restore -r -b 64 -f -
mkdir /mnt/boot/efi
mount /dev/mmcblk0p1 /mnt/boot/efi
mkdir /mnt/boot/efi/EFI

mount -o bind /dev      /mnt/dev
mount -o bind /dev/pts  /mnt/dev/pts
mount -o bind /proc     /mnt/proc
mount -o bind /sys      /mnt/sys

chroot /mnt /bin/bash

Dentro l'ambiente chroot verificare che sia installato il pacchetto grub-efi, si deve verificare che /etc/fstab contenga nomi di device validi e quindi eseguire:

vi /etc/fstab
grub-install /dev/mmcblk0
update-grub
update-initramfs -k all -u

ATTENZIONE: Con il kernel 6 è probabile ottenere un errore durante il grub-install:

EFI variables are not supported on this system

In questo caso è probabile che si debba montare nel chroot anche il seguente pseudo filesystem:

mount -o bind /sys/firmware/efi/efivars  /mnt/sys/firmware/efi/efivars

Immagine Netinst su chiavetta USB

Invece di usare Unetbootin (che può causare diversi problemi) è preferibile copiare l'immagine ISO direttamente su una chiavetta USB. Si copia sul device intero, non su una partizione:

cp image.iso /dev/sdX