Home Guide Avviare Raspberry 4 da SSD / hard disk esterno

Avviare Raspberry 4 da SSD / hard disk esterno

10575
0

Di default, il firmware dei Raspberry 4 è impostato di fabbrica per recuperare i dati e avviare tutto il sistema dalla microSD.

Ma non tutti sanno che questo “limite” può essere aggirato per poter avviare il vostro Raspberry 4 anche da SSD. Attualmente infatti il Raspberry 4 non è predisposto per avviarsi da altre fonti diverse da microSD (la Raspberry Pi Foundation ha però promesso di implementare la funzione nei prossimi aggiornamenti del firmware) e sarà necessario istruire il sistema operativo a fare questa operazione. Resta quindi necessario avere sempre una microSD inserita la quale conterrà il comando per ricercare il boot da SSD.

raspberry-4-kit-domoticadiy-ssd

Ma quali sono i vantaggi di effettuare tale modifica ed avviare il sistema operativo da SSD?

I principali miglioramenti che si possono ottenere sono 2: aumento della velocità nello scambio di dati/informazioni e minor rischio di rotture. Infatti le microSD hanno un ciclo di vita basato sul numero di scritture effettuate su di esse: con il passare del tempo le prestazioni tendono a calare con un rischio di rottura improvviso. E’ per questo che è consigliato (oltre che effettuare un backup periodico della microSD), utilizzare microSD di qualità e che siano di categoria A1 o A2 (app performance ready) come ad esempio la Sandisk Extreme A2 da 64GB (160MB/s) o la Sandisk Extreme PLUS A2 da 64GB (170MB/s).

Premettiamo subito una cosa: in queste guide facciamo riferimento al Raspberry per l’utilizzo esclusivo per Home Assistant, per cui se state pensando di migrare da microSD a SSD per trarne giovamento aspettate un attimo. Certamente ci sono dei miglioramenti come descritto in precedenza in termini di velocità, ma appunto, se il Raspberry lo usate solamente per Home Assistant l’utilizzo di microSD è più che sufficente. Se invece oltre ad Home Assistant fate esegurie al sistema operativo altre operazioni secondarie allora si che ha un senso l’utilizzo obbligatorio di un SSD.

Dopo questa premessa siamo pronti per iniziare la guida su come copiare il contenuto della nostra microSD su supporto esterno ed avviare il nostro Raspberry 4 da SSD. Se invece cercate la procedura per Raspberry 3, ecco qui la guida (ancora più semplice rispetto a Raspberry 4)

Cominciamo con il collegare il nostro dispositivo esterno (SSD) ad una porta USB del Raspberry.

Come SSD consiglio di acquistare quelli interni con attacco SATA e usare un case con supporto USB 3.0 come questo: POSUGEAR Case Esterno per Disco Rigido 2.5″, USB 3.0. Il vantaggio è che se vi stancate di utilizzare un SSD per il Raspberry lo potete reciclare all’interno di un PC fisso o portatile senza problemi!

Successivamente apriamo il terminale direttamente da Raspbian oppure se preferite potete effettuare le stesse operazioni da Windows o MAC tramite SSH.

Mandiamo il comando:

sudo fdisk -l

per visualizzare tutte le unità esterne collegate al Raspberry:

Come potete vedere dall’ immagine, /dev/mmcblk0p2 di tipo Linux è la partizione contenente tutti i dati della microSD.

Invece /dev/sda è la periferica esterna (SSD) trovata. Di solito l’identificazione è progressiva del tipo sda, sdb, sdc, … in base a quanti dispositivi collegati avete. Nel caso ne aveste più di uno, potete stabilire quale sia quello corretto verificando la dimensione e il nome da Disk Model.

Avviamo ora il comando:

sudo fdisk/dev/sda

Ricordandovi di sostituire da ora in poi sda con quello che il vostro Raspberry vi ha restituito al punto precedente, se diverso.

Ora vi apparirà il prompt dedicato di fdisk.

Digitiamo:

p

Apparirà una lista di partizioni presenti sull’ SSD:

Nell’esempio appare solo una partizione /dev/sda1, ma può accadere che ne appaiano più di una. In ogni caso è necessario eliminarle tutte, digitando d e dando invio per ogni partizione da eliminare:

d

Ora creiamo una nuova partizione con la sequenza di comandi:

n
p
1

E dare 2 volte INVIO.

Salviamo tutto confermando con:

w

Possiamo ora formattare in ext4 la nuova partizione appena creata con il comando:

sudo mkfs.ext4 /dev/sda1

Creiamo la cartella:

sudo mkdir /media/newdrive

montiamo la partizione e copiamo tutta la SD in questa cartella:

sudo mount /dev/sda1 /media/newdrive
sudo rsync -avx / /media/newdrive

Terminata l’operazione, che potrebbe impiegare anche più di un’ora in base ai vostri dati presenti sulla microSD, digitiamo il comando:

sudo nano /boot/cmdline.txt

e inserite questa stringa alla fine del file di testo:

root=/dev/sda1 rootfstype=ext4 rootwait

Salvate ed uscite con CTRL+X e Y

Ora il vostro Raspberry è “istruito” per avviarsi da fonte esterna. E’ necessario però mantenere la microSD all’interno del Raspberry 4 in quando questo file di testo verrà sempre letto da qui: sarà lui a comunicare dove trovare tutti i dati di avvio.

Riavviate per rendere le modifiche effettive ed effettuare il vostro primo avvio da SSD:

sudo reboot