Clonazione di una scheda SD Raspberry Pi
Il sistema operativo del Raspberry (Raspbian) viene installato su una scheda SD.
Questo consente di clonare la scheda e di avere una configurazione di base sempre a disposizione qualora qualcosa dovesse andare storto o se la scheda si dovesse corrompere per qualche motivo.
Esistono vari programmi su diversi sistemi operativi per effettuare l’operazione di clonazione. Tutti questi programmi creno una scheda delle dimensioni identiche a quella di partenza indipendentemente da quanto questa è effettivamente occupata.
Questo potrebbe essere un problema se non si dispone di una scheda SD di dimensione superiore.
Alla fine di questo articolo vedremo come ridurre l’immagine creata, utilizzando lo script linux Pishrink.
Clonazione su Raspbian e distribuzioni Linux
Se siamo in una versione desktop di Raspbian, possiamo utilizzare la comoda app “Copier app” che si trova nel menu “accessori”
Questa app non fa altro che copiare la scheda SD interna del Raspberry su una SD Card vuota. In questo caso occorre solo far attenzione a scegliere la SD card come origine e la SD card vuota come destinazione.
Se invece preferiamo la linea di comando, possiamo utilizzare i comandi dati via terminale.
Occorre anzitutto identificare l’ID della scheda da clonare mediante il comando
diskutil list
Verrà presentata la lista di tutte le partizioni montate. In questo caso ci si può aiutare identificando quella che ha la dimensione pari alla scheda SD.
Una volta identificata (supponiamo che nel nostro caso sia /dev/sdb), smontiamola con il comando
diskutil unmountDisk /dev/sdb
In alternativa a diskutil possiamo utilizzare i seguenti comandi per fare le stesse operazioni:
sudo fdisk -l sudo umount /dev/sdb
Andiamo quindi a creare un’immagine di questa scheda con il comando
sudo dd if=/dev/sdb of=~/raspbian_backup.img
Questo creerà l’immagine nella directory in cui abbiamo eseguito il comando.
Smontiamo la scheda la cui immagine è stata appena copiata, inseriamo la scheda SD vuota, identifichiamola (supponiamo che sia di nuovo sdb) e smontiamola come abbiamo visto prima.
Fatto questo, passiamo a scrivere l’immagine creata in precedenza su questa scheda vuota:
sudo dd if=~/raspbian_backup.img of=/dev/sdb
Occorre fare molta attenzione prima di immettere questo comando poichè se si sbaglia ad identificare la scheda si perderanno i dati sul device erroneamente selezionato.
Clonazione su Windows
Su Windows possiamo usare Win32DiskImager
In questo caso l’utilizzo è piuttosto intuitivo.
In una prima fase andremo a selezionare il device di cui fare copia dal menu a tendina “device” e in “image file” la posizione in cui verrà scritta l’immagine. Dopo aver fatto questo, basterà cliccare su “Read” e il programma scriverà l’immagine nella posizione selezionata.
In un secondo momento, dopo aver inserito nel lettore la scheda SD vuota, selezionamola in device, scegliamo l’immagine cliccando in “image file” e quindi clicchiamo su “Write”.
Ridimensionamento dell’immagine
Vediamo adesso come possiamo ridurre su Linux l’immagine prodotta mediante lo script PiShrink
Per l’installazione dello script eseguiamo i seguenti passi.
Anzitutto scarichiamolo:
wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh
procediamo con il renderlo eseguibile e spostiamolo nella cartella bin
chmod +x pishrink.sh
sudo mv pishrink.sh /usr/local/bin
Fatto questo, possiamo utilizzarlo.
Spostiamoci nella cartella dove è presente l’immagine da ridimensionare (nel nostro caso pi.img) e diamo il seguente comando.
sudo pishrink.sh pi.img
Lo script potrebbe metterci fino a qualche minuto per finire il suo lavoro e alla fine ci dirà anche di quanto è stata ridotta l’immagine.