====== 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:
- Accendere il PC e premere F2 per entrare nel **BIOS**
- Boot => **Boot Mode** => **UEFI**
- Se si riavvia otteniamo il messaggio **Secure Boot Fail**, non è possibile avviare né da hard disk né da chiavetta USB.
- Spengere, riaccendre e premere F2 per entrare nel **BIOS**
- Security => **Set Supervisor Password** (impostare una password del BIOS, altrimenti è impossibile disabilitare il //Secure Boot//).
- Boot => **Secure Boot** => **Disabled**
- Verificare che la priorità di boot sia **USB HDD**.
- 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:
- Accendere il PC e premere F2 per entrare nel **BIOS** (viene richiesta la password).
- Boot => **Secure Boot** => **Enabled** (è necessario per poter accedere alla voce di menu seguente).
- Security => **Select an UEFI file as trusted**
* Navigare nel filesystem UEFI fino a debian **grub64.efi**.
- Boot => **Secure Boot** => **Disabled** (è 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:
- Accendere il PC e premere F2 per entrare nel **BIOS**
- Boot => **Secure Boot** => **Enabled** (è necessario per poter accedere alla voce di menu seguente).
- Security => **Erase all Secure Boot Settings**
- **Riavviare** ed accedere nuovamente al BIOS.
- Security => **Select an UEFI file as trusted**
* Navigare nel filesystem UEFI fino a debian **grub64.efi**.
- Boot => **Secure Boot** => **Disabled**
====== 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