La guida di oggi vuole aiutarvi ad installare il sistema operativo Raspbian su una chiavetta o su un HDD esterno. Perchè? Beh una delle cose che non ci è mai piaciuta troppo di questo fantastico mini-pc è appunto la memoria su cui è installato il sistema operativo. I costruttori infatti, per i più disparati motivi, hanno utilizzato una una micro-sd – o una SD a seconda del modello – come storage di massa. Per l'utilizzo originale, ossia quello istruttivo, va più che bene. Se però dobbiamo utilizzare il nostro lampone preferito per qualcosa di più impegnativo non è sufficiente. Il motivo principe è che le memorie flash soffrono le scritture ripetute, abbassandone notevolmente il ciclo di vita. Per questo motivo abbiamo deciso di utilizzare il Raspberry con l'ausilio di un HardDisk connesso via usb, su cui girerà il sistema operativo.
PASSAGGI PRELIMINARI
Per questa guida abbiamo utilizzato il Raspberry Pi 2, ma è perfettamente compatibile con le altre versioni in commercio. Per chi non ne avesse uno, noi abbiamo acquistato lo starter kit per poter iniziare subito con tutto il necessario: cavi, case, memoria e caricatore. Piacevole sorpresa è la presenza di NOOBS, l'installatore ufficiale di Raspbian, già preinstallato nella scheda di memoria.
Una volta spacchettato il tutto installiamo Raspbian sul nostro Raspberry, utilizzando il già citato NOOBS.
Si può facilmente installare direttamente Raspbian seguendo questa guida di Daniele.
Il passo successivo è quello di impostare la lingua del sistema – system locale in gergo – la disposizione e la lingua della tastiera. Per farlo seguiamo questa guida.
Ora siamo a cavallo. Abbiamo tutto il necessario e non ci resta che iniziare. La procedura durerà dai 15 ai 30 minuti a seconda di quanto “grande” è il sistema operativo e di quanto è “veloce” la vostra periferica di archiviazione.
Apriamo il terminale del nostro Raspberry e ci appropriamo innanzitutto dei privilegi di root con:
sudo -i
a questo punto, dopo aver collegato il nostro Hard Disk, lanciamo il comando:
lsblk
fdisk /dev/sda
nel dialogo inseriamo d e premiamo su invio, per eliminare il contenuto. Poi diamo n e p per creare una nuova partizione primaria. Naturalmente è possibile utilizzare un numero diverso di partizioni, ad esempio dedicandone una solo al sistema operativo – / o root che dir si voglia – e un'altra dedicata solo allo storage dei dati – assegnandogli la partizione /home. Ora noi abbiamo creato solo una partizione, se avete intenzione di fare qualcosa di più complesso vi rimandiamo alla guida avanzata al partizionamento da terminale.
Una volta che siamo soddisfatti digitiamo w per scrivere su disco le modifiche. L'ultimo passo è la formattazione delle partizioni in ext4. Diamo così il comando:
mke2fs -t ext4 -L rootfs /dev/sda1
Arrivati a questo punto ridiamo il comando:
lsblk
mount /dev/sda /mnt
ovviamente se abbiamo più partizioni da montare basterà creare alcune tante cartelle quanto bastano per poi montarci dentro le nostre partizioni.
Ora non ci resta che copiare tutto il contenuto della partizione / (root) con il comando rsync:
rsync -axv / /mnt
Utilizziamo rsync al posto di dd per il semplice fatto che il primo comando è più rapido dato che non copia anche lo spazio libero.
La faccenda durerà molto, quindi apriamo un'altra finestra del terminale e, una volta che abbiamo riacquistato i privilegi di root, proseguiamo.
È giunta l'ora di informare il nostro sistema operativo che è stato sfrattato dalla scheda sd e da ora in poi risiederà all'interno di /dev/sda1. Come fare? Dato che, per come è stato costruito, il Raspberry lancerà sempre qualunque sistema operativo dalla scheda sd, /boot dovrà restare per forza lì dov'è. Per prima cosa notifichiamo l'avvenuto spostamento modificando il file cmdline.txt. Facciamo prima una copia di backup con:
cp /boot/cmdline.txt /boot/cmdline.orig
Apriamo il file con:
nano /boot/cmdline.txt
e cerchiamo una stringa simile a root=/dev/mmcblk0p2, che rappresenta la vecchia partizione. Ora la dobbiamo sostituire con root=/dev/sda1
Il risultato finale dovrà essere simile a questo:
Salviamo e chiudiamo con ctrl-x e andiamo avanti. Ora dobbiamo modificare l'ultima entry all'interno di /mnt/etc/fstab con:
nano /mnt/etc/fstab
Anche qui al posto di /dev/mmcblk0p2 dobbiamo inserire /dev/sda1 per notificare al sistema la nuova posizione della root.
Salviamo di nuovo con ctrl-x e riavviamo il sistema con:
reboot
Al riavvio, una volta fatto il login, verifichiamo con:
lsblk
che sia andato tutto bene, ossia che le partizioni siano state montate correttamente, ma sinceramente se avete fatto il login era già segno che era andato tutto per il meglio.
Al prossimo post ;)
Fonti:
- Immagini di Joel Garia.
- Raspberry Pi Forum.
- Wikipedia - Memoria flash.
- Structured Computer Organization – Tanembaum. Flash Memory Pag 173, Par 2.
Nessun commento:
Posta un commento