5.1. Avvio dell'installatore su ARM 64 bit

[Nota] Nota

Le istruzioni per l'avvio della versione grafica dell'installatore sono in Sezione 5.1.6, «Installatore grafico».

5.1.1. Configurazione della console

L'installatore grafico non è disponibile nelle immagini arm64 del installatore Debian per stretch e quindi occorre usare una console seriale. Il device della console dovrebbe essere rilevato automaticamente dal firmware ma se non lo fosse dopo l'avvio di linux dal menu di GRUB appare il messaggio «Booting Linux» e nulla più.

Nel caso si verifichi questo problema occorre passare la configurazione della console nella riga di comando del kernel. Nel menu di GRUB premere e per «Edit Kernel command-line» e modificare

--- quiet

in

console=<device>,<speed>

per esempio

console=ttyAMA0,115200n8

. Fatta la modifica premere Control+x per continuare l'avvio con la nuova configurazione.

5.1.2. Installazione su Juno

Juno dispone di UEFI quindi l'installazione è diretta. Il modo più pratico è l'installare da una chiavetta USB. Per eseguire l'avvio da dispositivo USB è necessario aggiornare il firmware. I firmware in http://releases.linaro.org/members/arm/platforms/latest/ creati dopo Marzo 2015 sono stati verificati e funzionano. Consultare la documentazione di Juno su come aggiornare il firmware.

Preparare un'immagine CD/DVD arm64 su una chiavetta USB. Inserirla in una delle porte USB sul retro e collegare un cavo seriale nella porta a 9 pin in alto. Se è necessario accedere alla rete (con l'immagine netboot) inserire il cavo Ethernet nel connettore sul davanti della macchina.

Attivare la console seriale a 115200, 8 bit, senza parità e poi avviare Juno. Dovrebbe avviarsi dalla chiavetta USB e mostrare il menu di GRUB. La configurazione della console non è rilevata correttamente quindi premere Invio per vedere l'output del kernel. Per impostare la console

console=ttyAMA0,115200n8

come descritto in Sezione 5.1.1, «Configurazione della console». Per avviare il installatore Debian premere Control+x e continuare con l'installazione standard.

5.1.3. Installazione su Applied Micro Mustang

Per queste macchine è possibile usare UEFI e normalmente sono equipaggiate con U-Boot quindi sarà possibile installare prima il firmware UEFI e poi usare i metodi d'avvio e d'installazione standard, oppure usare uno dei metodi d'avvio con U-Boot. È necessario usare una console seriale per controllare l'installazione perché l'installatore grafico non è disponibile sull'architettura arm64.

Il metodo d'installazione raccomandato è copiare il kernel e l'initrd del installatore Debian sul disco fisso utilizzando il sistema openembedded fornito insieme alla macchina poi avviare ed eseguire l'installatore. In alternativa usare TFTP per copiare e avviare kernel/dtb/initrd (Sezione 5.1.4.1, «Avvio da TFTP con U-Boot»). Dopo l'installazione occorre modificare manualmente la configurazione per l'avvio.

Attivare la console seriale a 115200, 8 bit, senza parità e poi avviare la macchina. Riavviare la macchina e quando appare «Hit any key to stop autoboot:» premere un tasto qualsiasi per avere il prompt Mustang#. Poi usare i comandi U-Boot per caricare e avviare kernel, dtb e initrd.

5.1.4. Avvio con TFTP

L'avvio da rete richiede una connessione di rete e un boot server TFTP (e probabilmente anche un server DHCP, RARP o BOOTP per la configurazione automatica della rete).

La configurazione lato server per effettuare l'avvio dalla rete è descritto in Sezione 4.4, «Preparazione dei file per l'avvio TFTP da rete».

5.1.4.1. Avvio da TFTP con U-Boot

L'avvio da rete per i sistemi che usano il firmware U-Boot consiste di tre passi: a) configurazione della rete b) caricamento delle immagini (kernel, ramdisk e dtb) in memoria c) l'esecuzione del codice appena caricato.

Il primo passo è configurare la rete, automaticamente tramite DHCP con

setenv autoload no
dhcp

oppure manualmente impostando alcune variabili d'ambiente

setenv ipaddr <indirizzo ip del client>
setenv netmask <maschera di rete>
setenv serverip <indirizzo ip del server tftp>
setenv dnsip <indirizzo ip del nameserver>
setenv gatewayip <indirizzo ip del gateway predefinito>

È possibile salvare in modo permanente queste impostazioni eseguendo

saveenv

Dopodiché è necessario caricare le immagini (kernel, ramdisk iniziale e dtb) in memoria. Per questa operazione occorre usare il comando tftpboot passando l'indirizzo di memoria al quale deve deve caricata l'immagine. Sfortunatamente la mappa di memoria varia da sistema a sistema e non esiste una regola generale su quale indirizzo utilizzare.

Su alcuni sistemi, U-Boot predefinisce una serie di varibili d'ambiente con gli indirizzi da usare: kernel_addr_r, ramdisk_addr_r e fdt_addr_r. È possibile verificare se tali variabili sono state definite con

printenv kernel_addr_r ramdisk_addr_r fdt_addr_r

Se non sono state definite, è necessario trovare nella documentazione i valori adatti al proprio sistema e impostarli manualmente. Per i sistemi basati sui SOC Allwinner SunXi (per esempio per Allwinner A10 nome dell'architettura «sun4i», o Allwinner A20, nome dell'architettura «sun7i») è possibile usare i seguenti valori:

setenv kernel_addr_r 0x46000000
setenv fdt_addr_r 0x47000000
setenv ramdisk_addr_r 0x48000000

Dopo aver impostato gli indirizzi, è possibile caricare le immagini in memoria dal server tftp definito in precedenza con

tftpboot ${kernel_addr_r} <nome file dell'immagine del kernel>
tftpboot ${fdt_addr_r} <nome file del dtb>
tftpboot ${ramdisk_addr_r} <nome file del ramdisk iniziale>

Il terzo passo è impostare la riga di comando per il kernel e avviare l'esecuzione del codice appena caricato. U-boot passa il contenuto della variabile d'ambiente «bootargs» come riga di comando al kernel, quindi tutti parametri per il kernel e per l'installatore, come il device della console (vedere Sezione 5.3.1, «Avvio da console») oppure le opzioni di preconfigurazione (vedere Sezione 5.3.2, «Parametri dell'Installatore Debian» e Appendice B, Installazione automatica tramite preconfigurazione), possono essere impostati con un comando simile a

setenv bootargs console=ttyS0,115200 rootwait panic=10

Il comando per eseguire il codice caricato in precedenza dipende dal formato delle immagini usato. Con uImage/uInitrd, usare il comando

bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

e con le immagini native Linux usare

bootz ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r}

Nota: quando si avviano immagini linux è importante caricare l'immagine del ramdisk iniziale dopo il kernel e il dtb poiché U-Boot imposta il valore della variabile filesize pari alla dimensione dell'ultimo file caricato e il comando bootz ha bisogno di conoscere la dimensione dell'immagine del ramdisk per funzionare correttamente. Per avviare un kernel specifico per una piattaforma, vale a dire un kernel senza il device-tree, è sufficiente omettere il parametro ${fdt_addr_r}.

5.1.5. Avvio da chiavetta USB con UEFI

Se il proprio computer può effettuare l'avvio da USB, probabilmente questo sarà il modo più semplice per far partire l'installazione. Supponendo di aver seguito le indicazioni contenute in Sezione 3.6.1, «Selezione del dispositivo di avvio» e Sezione 4.3, «Preparazione dei file per l'avvio da chiavetta USB», inserire la chiavetta USB in uno qualsiasi dei connetori USB liberi e riavviare il computer. Il sistema partirà e se non è stato usato il metodo flessibile di preparazione della chiavetta e non è stato attivato, dovrebbe apparire il menu grafico d'avvio (se supportato dall'hardware ). Dal menu è possibile scegliere una delle varie opzioni dell'installatore oppure premere semplicemente Invio.

5.1.6. Installatore grafico

La versione grafica dell'installatore è disponibile soltanto su un numero limitato di architetture, fra le quali ARM 64 bit . La funzionalità dell'installatore grafico è quasi identica a quella dell'installatore testuale dato che entrambe le versioni hanno come base gli stessi programmi e differiscono soltanto per l'interfaccia.

Nonostante la funzionalità sia identica, l'installatore grafico ha alcuni piccoli ma significativi vantaggi. Il vantaggio principale è che può supportare un numero maggiore di lingue, cioè le lingue che usano un set di caratteri che non può essere visualizzato con l'interfaccia testuale «newt». Ha anche vantaggi di usabilità, infatti è possibile usare il mouse e, in alcuni casi, le domande possono mostrate all'interno di un'unica schermata.

Come per l'installatore testuale è possibile aggiungere dei parametri d'avvio anche per l'installatore grafico.

[Nota] Nota

L'uso dell'installatore grafico richiede molta più memoria rispetto all'installatore testuale: almeno 640MB. Se la memoria disponibile non è sufficiente, viene automaticamente attivata l'interfaccia testuale «newt».

Se la quantità di memoria presente sul sistema è inferiore a 260MB, può risultare impossibile avviare la versione grafica dell'installatore invece la versione testuale potrebbe funzionare. Sui sistemi con poca memoria si raccomanda l'uso della versione testuale dell'installatore.