FUSS 9 su Raspberry Pi 3

Montare una Raspberry Pi su uno schermo

Applicazione della scheda allo schermo

Avvitare le quattro viti più corte nei quattro fori agli angoli della piastra ponendo i distanziatori tra piastra e schermo come nell’immagine.

../_images/piastra_metallica.jpg

Avvitare adesso le quattro viti più lunghe nei quattro fori presenti sul Raspberry Pi. Applicare il Raspberry Pi alla piastra metallica avvitando le viti nei fori segnati:

../_images/fori_viti.jpg

Cablaggio

Utilizzare un cavo come quello in figura per collegare il Raspberry Pi allo schermo.

../_images/cavo_per_monitor.jpg

Utilizzare le prese USB presenti sulla scheda per collegare tastiera e mouse. Collegare infine i cavi di alimentazione di schermo e scheda.

../_images/cablaggi.jpg

Download e decompressione del pacchetto Raspbian

Download del file

Scaricare il file zip «RASPBIAN STRETCH WITH DESKTOP» dal seguente link:

https://www.raspberrypi.org/downloads/raspbian/

Una volta completato il download sarà necessario estrarre il file zip.

Estrazione del file zip

Per prima cosa è necessario aprire il terminare ed entrare nella directory dove è stato salvato il file.

../_images/directory_file_raspbian.png

Quindi utilizzare il comando unzip seguito dal nome del file per iniziare la decompressione

../_images/unzip_raspbian.png

Copia dell’immagine su microSD

Inserire la scheda di memoria nel Computer. Aprire poi nuovamente un terminale e utilizzare il comando lsblk per visualizzare il nome della scheda SD.

../_images/lsblk.png

A questo punto utilizzare il comando dd per copiare il file immagine sulla scheda SD:

dd if=/percorso_file_da_copiare of=/dev/nome_del_device bs=4M
../_images/comando_dd.png

Completata questa operazione sarà sufficiente inserire la scheda microSD all’interno del Raspberry Pi collegato al computer e avviare.

Attivazione dell’utente-root e cambio password

Avviata la scheda si aprirà automaticamente la pagina desktop dell’utente pi senza bisogno di eseguire il login. Questo è un utente di default già presente nel pacchetto Raspbian. Per attivare l’utente root aprire un terminale ed eseguire il comando:

sudo passwd root

A questo punto verrà chiesto di digitare la password dell’utente pi che è:

raspberry

Quindi inserire la nuova password per l’utente root.

È poi opportuno cambiare anche la password dell’utente pi:

passwd pi

Modificare la lingua della tastiera

Eseguire il comando:

sudo nano /etc/default/keyboard

Alla variabile:

XKBLAYOUT="gb"

sostituire it a gb

../_images/modifica_lingua.png

Uscire quindi dal file ricordandosi di salvare le modifiche. Per rendere attive le modifiche scollegare e ricollegare la tastiera. In caso non dovesse funzionare riavviare il computer.

Modificare il tipo di accesso

Aprire un terminale e autenticarsi come root. Digitare quindi il comando

raspi-config

Si apre una finestra cove viene presentato un menu di configurazione, come nella immagine seguente:

../_images/config_1.png

Selezionare l’la voce 3 Boot Options. Si apre quindi una nuova finestra, come quella nell’immagine seguente:

../_images/config_2.png

Selezionare l’opzione B1: Desktop / CLI e alla successiva finestra l’opzione B3 Desktop.

Questa operazione fa in modo che non ci sia l’accesso automatico al desktop, ma che questo avvenga tramite autenticazione.

Ora dobbiamo fare in modo che nella finestra di login non compaia la lista dei nominativi di tutti gli utenti. Per raggiungere questo scopo modificare il file /etc/lightdm/lightdm.conf:

nano /etc/lightdm/lightdm.conf

Modificare la riga greeter-hide-users = false nella seguente greeter-hide-users = true

Qualora il desktop dovesse mostrare un bordo nero dobbiamo modificare il file /boot/config.txt. Per fare questo digitiamo:

nano /boot/config.txt

Fare però questa operazione solo nel caso in cui esso si presenti dopo l’installazione.

Scommentare la riga #disable_overscan=1 togliendo il carattere cancelletto

disable_overscan=1

Modificare la swap (opzionale)

La swap su Raspbian è nel file /var/swap. Per modificare la sua dimensione bisogna modificare il file /etc/dphys-swapfile:

nano /etc/dphys-swapfile

cambiando la variabile:

CONF_SWAPSIZE=100

a:

CONF_SWAPSIZE=500

In questo modo la swap si modifica da 100 MB a 500 MB.

Salvato il file, bisogna riavviare il servizio dphys-swapfile:

systemctl restart dphys-swapfile

Eseguire l’upgrade alla versione più recente

Seguire le istruzioni contenute nella pagina al seguente link per aggiungere la sorgente da cui scaricare i pacchetti:

https://archive.fuss.bz.it/

Eseguire quindi il comando:

apt update

E successivamente:

apt upgrade

Modificare il nome della scheda

Si consiglia di eseguire le seguenti operazioni accedendo come utente root.

Aprire un terminale ed eseguire il comando:

nano /etc/hostname

Sostituire il nome presente all’interno del file con un nome a scelta.

../_images/hostname.png

Chiudere il file ricordandosi di salvare le modifiche.

Eseguire quindi il comando:

nano /etc/hosts

Sostituire il nome presente all’ultima riga della colonna di destra con lo stesso nome assegnato precedentemente, sia seguito dal dominio che da solo:

127.0.0.1        localhost
::1              localhost ip6-localhost ip6-loopback
ff02::1          ip6-allnodes
ff02::2          ip6-allrouters

127.0.1.1        NomeRaspberry.dominio NomeRaspberry

Connettere la scheda ad una rete

Si consiglia di eseguire le seguenti operazioni accedendo come utente root.

Utilizzando l’apposita porta collegare la Raspberry Pi ad un cavo di rete.

../_images/collegamento_a_rete.png

Per prima cosa sarà necessario scaricare dal seguente link le chiavi di accesso dei pacchetti Debian.

https://packages.debian.org/stretch/all/debian-archive-keyring/download

Cliccare su uno dei pacchetti nella sezione Europe per scaricarlo (nel nostro caso abbiamo scaricato ftp.de.debian.org/debian).

Installazione del pacchetto di chiavi

Aprire un terminale e digitare il comando dpkg -i seguito dal percorso file del pacchetto chiavi appena scaricato. Ad esempio:

dpkg -i Downloads/debian-archive-keyring_2017.5_all.deb

Modifica della sources list

Adesso bisognerà modificare la sources list fornita dal pacchetto Raspbian con quella fornita da Debian. La seguente pagina genera automaticamente la sources list in base alle preferenze indicate:

https://debgen.simplylinux.ch/

Nel menu Release selezionare «Stable(Stretch)». Nel menu Mirror selezionare un paese tra «Germania» e «Italia» (nel nostro caso abbiamo scelto di utilizzare il Mirror «Germania»)

../_images/source_list.png

Cliccare poi sul tasto «Generate» in fondo alla pagina.

Generata la sources list bisognerà copiarla e sostituirla a quella presente nel file sources.list. Per fare questo aprire un terminale e digitare il comando:

nano /etc/apt/sources.list

Nel file appena aperto cancellare tutte le repository presenti eccetto:

deb http://archive.fuss.bz.it/ stretch main contrib

e sostituirle con quelle copiate precedentemente. Chiudere poi il file ricordandosi di salvare le modifiche.

Adesso bisognerà modificare una seconda sources list. Aprire quindi un terminale e digitare:

nano /etc/apt/sources-list.d/raspi.list

All’interno del file porre un cancelletto davanti ad ognuno dei link di sorgente. Facendo questo si trasformeranno i link in righe di commento che la macchina non andrà a leggere.

../_images/raspi-list.png

Chiudere quindi il file ricordandosi di salvare.

Si consiglia adesso di eseguire un Update aprendo un terminale ed eseguendo il comando:

apt update

E successivamente un Upgrade eseguendo il comando:

apt upgrade

Operazione preliminare sul server

Accedere come amministratori al server della rete didattica e controllare che nel file /etc/squid3/squid.conf siano presenti le seguenti righe:

acl repositories url_regex ^http://archive.raspberrypi.org/
acl repositories url_regex ^http://raspbian.raspberrypi.org/
acl repositories url_regex ^http://raspbian.mirror.garr.it/
acl repositories url_regex ^http://*.raspbian.org/

Se non ci fossero aggiungerle o aggiungere quelle tra queste che mancano. Queste permettono di fare uscire direttamente le richieste ai suddetti server in fase di installazione dei pacchetti. Dopo eventuali modifiche al file /etc/squid3/squid3.conf bisogna riavviare il servizio squid3 sul server:

systemctl restart squid3

Connessione al server di rete

Per prima cosa sarà necessario installare il pacchetto fuss-client-rpi che permette di connettere la scheda ad un server Fuss. Il pacchetto è una versione specifica del pacchetto fuss-client adattato per le schede Raspberry. Aprire un terminale ed eseguire il comando:

apt install fuss-client-rpi

Creare la cartella /usr/local/share/applications , che servirà in fase di connessione alla rete didattica con fuss-client-rpi:

mkdir /usr/local/share/applications

Per connettere la scheda Raspberry al server di rete aprire un terminal e digitare il comando fuss-client -a, selezionando quando richiesto il cluster a cui associare l’host (es. aula-01, aula-insegnanti, ecc.) ed inserendo se richiesto la password di root.

Elenco dei pacchetti didattici

Software Contenuto Pacchetti da installare
Istantanea Software per scattare screenshot xfce4-screenshooter
Geogebra Software di geometria dinamica in 3D geogebra
Catfish Software cercare file nel Pc catfish
Kturtle Primi passi per la programmazione con Logo kturtle
Arduino Ambiente di sviluppo per programmazione schede Arduino arduino; arduino-core
Kicad Suite di software per il disegno di schemi elettrici e circuiti stampati kicad
Firefox Browser internet firefox-esr
Vlc Riproduttore audio e video vlc
Network manager   network-manager
Libreoffice-pdfimport Gestione di pdf libreoffice-pdfimport
Cups Common UNIX Printing System: gestore stampe cups
Cups-pdf Gestione PDF per la stampa cups-pdf
HP Printing System Control Center Software di gestione per stampanti HP hpijs-ppds; hplip-gui; hplip
Utilità per la rete Pacchetti per controllare rete e harware gnome-nettool
Elemento pannello per scelta della lingua   task-italian; task-italian-desktop
Gestore di file   thunar

Per installare un pacchetto aprire il terminale ed eseguire il comando apt install seguito dal nome del pacchetto. Ad esempio:

apt install firefox-esr

RIDURRE LA DIMENSIONE DI UNA IMMAGINE

Dopo aver inserito la microSD visualizziamo col comando lsblk il device e le partizioni. Supponiamo che il nostro device compaia con /dev/mmcblk0 e che abbia la seconda partizione /dev/mmcblk0p2 che occupa tulla la memoria della microSD. Se, per ipotesi, abbiamo una MMC della dimensione di 16 GB, la seconda partizione avrà una dimensione di circa 15 GB. Se il sistema che abbiamo installato, per esempio, occupa 5 GB, la dimensione dell’immagine della MMC sarà comunque di 16 GB. Vediamo quindi le operazioni da fare per ridurre la partizione sulla microSD, utilizzando come esempio la partizione /dev/mmcblk0p2.

Accedere a un terminale come root

Lanciare il comando:

e2fsck -f /dev/mmcblk0p2

(se non lo si fa, il sistema ci obbliga a farlo prima di lanciare il comando al punto 2)

Per ridurre al minimo la dimensione del filesystem lanciare il comando:

resize2fs -M /dev/mmcblk0p2

Con GParted ridimensionare la partizione. Verificare che la posizione del blocco iniziale rimanga invariata, in caso contrario potrebbero esserci problemi.

L’alternativa a quanto detto sinora è fare tutto con GParted.

Supponiamo che alla fine la partizione abbia una dimensione di 7 GiB. Per ricreare l’immagine partendo da schedina e salvarla su disco fisso, ad esempio nella cartella /opt lanciare il comando:

dd  if=/dev/mmcblk0  of=/opt/image-name.img bs=1M count=xyz status= progress

Il valore xyz deve essere più grande del numero dell’ultimo settore della partizione diviso per 2 (i settori sono da 512 B) e poi per 1024 per trasformare il numero di settori in MB. Ovviamente il bs deve essere impostato su 1M.

In questo modo creare altre microSDcol sistema diventa più veloce.