Guida: come costruire un NAS server perfetto con Raspberry Pi

Guida: come costruire un NAS server perfetto con Raspberry Pi

Conservare i propri dati digitali e potervi accedere in qualsiasi momento da qualsiasi parte del mondo, senza il bisogno di un hard disk esterno, è grandioso. Scegliere se abbonarsi ad un servizio di cloud storage oppure acquistare un NAS già assemblato e configurato dipende dalle proprie esigenze, ma noi non parleremo di questo.
Oggi si parla di NAS, strumenti utilissimi dei quali nell’era digitale non si può più fare a meno.

Non proveremo a fare nessun confronto tra dei prodotti commerciali: questo è un sito per gente che ha voglia di mettersi in gioco e di complicarsi la vita, pur di poter ammirare le proprie creazioni con orgoglio. Anche se non sono sempre esteticamente aggraziate.
Quindi vediamo subito come assemblare un NAS partendo da una scheda Raspberry Pi, come scegliere i giusti supporti di memoria e come configurare l’intero sistema.

Per la realizzazione di un NAS, servono davvero pochi elementi: un computer, degli hard disk (e/o SSD) ed il software giusto.

Hardware

Scegliere il PC

Che si tratti di un vecchio PC fisso o un mini PC embedded, quasi sicuramente sarà possibile farlo diventare un NAS.
Un NAS server è un sistema al quale dovrebbe essere possibile collegarvisi in qualsiasi momento senza riscontrare alcun problema. Quindi anche se è vero quanto detto prima, bisogna trovare un compromesso tra la potenza di calcolo necessaria, un corretto (e fluido) funzionamento ed un basso consumo energetico.

Vi sono anche degli altri parametri che dovrebbero essere presi in considerazione, come ad esempio la velocità e la stabilità della connessione di rete, che principalmente dipende dalla scheda di rete del PC e dal proprio abbonamento internet.
Ma anche la velocità di lettura e scrittura dei supporti di memoria che si scelgono è importante, specialmente nel caso in cui si ha intenzione di memorizzare dei file di grandi dimensioni.

Prima scelta: Raspberry Pi 4

Raspberry Pi 4 con raffreddamento GeeekPi Ice Tower

Una buona scelta low cost ma anche high yield, è quella di assemblare un NAS partendo da una scheda Raspberry Pi 4: in pochi e semplici passi è possibile rendere operativo il proprio dispositivo di archiviazione intelligente.

Il Raspberry Pi è un mini PC sviluppato nel Regno Unito dalla Raspberry Pi Foundation, pensato per invogliare ed accompagnare gli insegnamenti relativi all’informatica e alla programmazione.
Dal 2012 ad oggi ne sono stati prodotti diversi modelli, migliorati e potenziati esponenzialmente.

Se non ne hai mai sentito parlare, oppure se ti serve aiuto per eseguire la prima configurazione, puoi trovare maggiori informazioni in questo articolo. <articolo mancante all’interno del sito.. che fare?>

Alternative più performanti e versatili

Come primo approccio o nel caso in cui non si hanno molte pretese, la prima scelta è un ottimo compromesso tra costo e beneficio, ma nel caso in cui si voglia essere sicuri di ottenere un NAS performante e più sicuro in termini di funzionamento, utilizzare un Raspberry Pi 4 non è una scelta ottimale.

Infatti per questo tipo di applicazione, limitarsi ad utilizzare le porte USB integrate per collegare degli HDD e/o SSD tramite degli appositi convertitori SATA/USB, non è il massimo. Infatti potrebbero verificarsi dei malfunzionamenti improvvisi che non permetterebbero di accedere più ai propri file.
Inoltre non sarà possibile sfruttare la configurazione in RAID dei dischi per proteggere i propri dati. In linea di massima si potrebbe fare, ma è una configurazione instabile e sconsigliata quando si utilizzano dei convertitori SATA/USB.

Quindi nel caso in cui l’asticella delle esigenze e quella del budget siano più alte, l’ideale è utilizzare un Raspberry Pi 4 compute module oppure un altro mini PC embedded, come il Rock Pi 4.

Raspberry Pi Compute Module 4
Rock Pi 4


Questo perché entrambi hanno un’interfaccia PCIe accessibile, a differenza del Raspberry Pi 4. Così basta installare direttamente un controller SATA per collegare e gestire in modo ottimale i propri supporti di memoria.

Un ottimo punto di riferimento se si sta cercando come in questo caso, un controller SATA compatibile con il Raspberry Pi, è stato creato da Jeff Geerling: giorno dopo giorno testa delle nuove schede PCIe con il Raspberry Pi compute module 4 ed aggiorna un elenco, fornendo delle indicazioni sul loro funzionamento ed utilizzo.

Scegliere le unità di memoria: HDD o SSD

Ormai non si fa altro che parlare di SSD, di quanto siano “veloci” e di quanto consumino poco.
Tutto verissimo, ma in fin dei conti se non si hanno delle esigenze particolari, per un NAS è meglio utilizzare degli HDD, magari configurati in RAID. Costano meno degli SSD e funzionano bene.


Naturalmente bisogna scegliere la capienza dei dischi da acquistare in base alle proprie necessità.
Per quanto sia vero che in futuro è sempre possibile espandere la memoria del proprio NAS aggiungendo dei nuovi dischi, nel caso in cui si preveda una configurazione RAID bisogna sin da subito scegliere dei supporti di memoria abbastanza capienti per durare diverso tempo prima di riempirsi.

In breve, il RAID (Reduntant Array of Inexpensive Disks), è una tecnologia che prevede il collegamento di più hard disk in parallelo, che permette di aumentare la velocità di trasferimento dei dati e di garantirne l’integrità, nel caso in cui uno degli HDD dovesse smettere di funzionare.
Le diverse configurazioni RAID che è possibile ottenere sono: RAID 0, RAID 1, RAID 5 e RAID 10.

Per maggiori informazioni sulla tecnologia RAID ti consiglio questa lettura.

Rispetto ai classici HDD è indispensabile utilizzarne uno che sia stato progettato per operare senza sosta e che si faccia apprezzare nel quotidiano.

Un HDD progettato appositamente per i NAS è il Seagate IronWolf, che rispetto ad altri marchi, in base a diverse recensioni sembrerebbe essere più robusto e longevo, risultando quindi la scelta giusta per dei NAS che richiedono prestazioni elevate e possibilità di espansione.

Queste unità disco forniscono una cache fino a 256MB, offrendo un’ottima capacità di memorizzazione e prestazioni elevate, oltre ad un livello di usura inferiore e rumore acustico pressoché nullo. Il tutto con un ottimo rapporto qualità-prezzo in diversi formati.

Attenzione ai dischi usati

Cercare di acquistare dei supporti di memoria usati (HDD o SSD che siano) in alcuni casi potrebbe essere una buona idea, ma soltanto nel caso in cui si riescano a trovare ad un ottimo prezzo e se si ha la possibilità di testarli con degli strumenti opportuni.

Questo perché prima di tutto sull’usato non si ha alcun periodo di garanzia ed inoltre perché moltissime persone per del tempo si sono dedicate a farmare delle cryptovalute dette proof of space-time (es. CHIA), che in sintesi, non servono ad altro che danneggiare in pochissimo tempo i supporti di memoria utilizzati.

Convertitore SATA USB

Se hai scelto di continuare ad assemblare il tuo NAS con un Raspberry Pi 4, avrai bisogno di un convertitore SATA/USB per collegare i supporti di memoria.
Che tu abbia optato per il formato da 3,5” o 2,5”, non importa: con questo convertitore potrai utilizzare entrambi i formati ed alimentarli correttamente dato che è possibile collegare un alimentatore esterno da 12V per alimentare gli HDD da 3,5”.
Ne servirà uno per ogni HDD e SSD che si decide di utilizzare.

Si tratta di un convertitore con USB 3.0, con il quale i trasferimenti dei dati avvengono velocemente: esattamente fino a a 5 Gbp / s grazie al supporto UASP.

Box Raspberry Pi NAS

Prevedere un apposito alloggiamento per tutti i componenti del NAS realizzato con una scheda Raspberry Pi, è indispensabile. Meglio non rischiare che qualche cavo si scolleghi o che il gatto ci passeggi sopra.

Naturalmente si potrebbero acquistare dei prodotti semilavorati adatti allo scopo, come degli alloggiamenti a scorrimento per i supporti di memoria, ma non sono propriamente economici, il che potrebbe far pensare ad altre soluzioni.

Un’idea potrebbe essere quella di riciclare e adattare il box di qualche vecchio dispositivo, oppure se si ha una stampante 3D quella di stampare il proprio case personalizzato fatto su misura.
Per quest’ultima possibilità, ecco alcune idee da cui prendere spunto.

Software

Esistono diversi software per la gestione di un NAS server, alcuni dei quali sono più o meno completi rispetto ad altri.
Uno tra i più diffusi, completi e facili da usare è OpenMediaVault (OMV).

Si tratta di un software open source interamente gestibile da un’unica interfaccia web, attraverso la quale è possibile configurare ogni singolo componente ed aggiungere i plugin dei quali si ha bisogno.

Installazione OMV su Raspberry Pi 4

Per installare e configurare OMV sul Raspberry Pi 4, basta seguire pochi e semplici passaggi che permetteranno di realizzare un server NAS funzionante ed altamente personalizzato.

Prima di tutto, se non è ancora stato fatto, è indispensabile installare il sistema operativo (Raspberry Pi OS va benissimo) su una scheda micro SD oppure su un SSD, cosa che consiglio vivamente di fare per rendere il proprio Raspberry Pi velocissimo e molto fluido.

Inoltre consiglio di eseguire un leggero overclock del processore e l’utilizzo di un sistema di raffreddamento, dato che già di base il Raspberry Pi 4 tende a riscaldare parecchio. Personalmente consiglio il GeeekPi Ice Tower con ventola incorporata, che funziona benissimo e non costa molto.

Naturalmente il Raspberry Pi deve essere stato collegato in rete, meglio se tramite rete cablata per una maggiore stabilità e velocità di connessione.

Iniziamo!

Aggiornamento OS:

sudo apt update
sudo apt upgrade -y

Riavvio del sistema:

sudo reboot

Installazione di OMV:

wget -O - https://raw.githubusercontent.com/OpenMediaVault-Plugin-Developers/installScript/master/install | sudo bash

Una volta completata la fase di installazione, bisogna riavviare il sistema.

Una volta riavviato, si potrà accedere direttamente alla web GUI tramite un web browser collegandosi all’indirizzo IP del Raspberry Pi.
In seguito sarà possibile assegnare un indirizzo IP statico, in modo tale da sapere sempre a quale indirizzo raggiungere il nostro NAS DIY.

Per conoscere l’indirizzo IP assegnato al Raspberry Pi, da terminale digitare il comando:

hostname -I

Configurazione di OMV

Dopo aver aperto l’interfaccia utente, per accedere al sistema bisogna inserire i dati di accesso predefiniti: [user] = admin e [password] = openmediavault.

Cambiare i dati di accesso

Una volta eseguito il primo accesso, prima di tutto è indispensabile cambiare i dati di accesso, recandosi semplicemente nella sezione Impostazioni => cambia Password, digitare i nuovi dati di accesso e salvare le modifiche.

Gestione disconnessione automatica

Per evitare di dover rieseguire l’accesso molto spesso, specialmente durante la fase di configurazione, l’ideale è disabilitare la disconnessione automatica o aumentare il tempo prima della disconnessione.
Per farlo bisogna navigare fino alla sezione Sistema => Workbench.

Assegnare un indirizzo IP statico

Per impostare un indirizzo IP statico tramite la stessa interfaccia, si deve:

  1. Visitare la sezione Rete => Interfacce.
  2. Selezionare la modalità di collegamento alla rete internet (eth0 se la connessione è cablata oppure wlan0 se il dispositivo è collegato tramite Wi-Fi).
  3. Cliccare sull’interfaccia di rete che si sta utilizzando per selezionarla ed una volta apertasi la finestra di configurazione, procedere come segue.
    1. Nella sezione IPV4 impostate IP come statico.
    1. Nella voce indirizzo digitare l’indirizzo IP attuale del Raspberry Pi.
    1. In NetMask digitare l’IP della maschera di rete (in genere 255.255.255.0)
    1. In GateWay inserire l’indirizzo IP del proprio router.
  4. Salvare ed in seguito applicare le modifiche tramite gli appositi pulsanti.

Gestione dei supporti di memoria

Una volta collegati al Raspberry Pi i propri supporti di memoria tramite gli appositi convertitori SATA/USB, possiamo visualizzarli e gestirli tramite l’apposita sezione Dischi della web GUI.

In questa sezione vengono mostrati tutti i dispositivi di archiviazione riconosciuti dal sistema, compresa la micro SD se è presente nell’apposito slot ed è possibile gestirli.

Le informazioni ricavabili direttamente dalla tabella generata in questa pagina sono: indirizzo del dispositivo (es. /dev/sda1), etichetta (es. HDD1), tipo di filesystem, spazio totale, spazio disponibile, spazio utilizzato, montato, citato, stato.

Per utilizzare con OpenMediaVault uno dei supporti di memoria collegati al Raspberry Pi, prima di tutto bisogna selezionarlo dalla tabella ed in seguito cliccare sul tasto Ripristina Dati di Fabbrica e confermare l’operazione con metodo rapido per formattarlo.

Questa operazione richiederà del tempo, quindi meglio non stare a fissare lo schermo e dedicarsi ad altro.

Una volta terminato questo primo passaggio, si può passare all’ottimizzazione della configurazione del disco, facendo doppio click sul disco formattato e modificare alcune opzioni, tra le quali:

  • Gestione Avanzata dei Consumi: Impostare il consumo di Energia Minimo in Stand by (opzione 1).
  • Gestione Automatica della Rumorosità: impostare l’opzione su Prestazioni Minime, Rumore Minimo se si vuole abbassare il rumore prodotto dagli HDD.
  • Impostare il Tempo di Arresto a 30 Minuti per aumentare la durata del vostro Hard Disk.
  • Abilitare la cache di scrittura.

Per confermare le modifiche appena effettuate, basta cliccare su Salva ed in seguito sul pulsante Applica

Per la segnalazione di eventuali anomalie che possono verificarsi negli HDD, si può attivare l’impostazione S.M.A.R.T.  nella sezione Storage => Smart.

Creazione File System e mount

Adesso non resta che creare il file system andando nella sezione Storage => File System.

Per farlo basta cliccare sul tasto crea, selezionare il disco per il quale si intende eseguire l’operazione impostare un’etichetta di riconoscimento, salvare ed applicare le modifiche tramite l’apposito tasto.

Appena comparirà il messaggio di conferma della conclusione dell’operazione, per montare il disco basterà semplicemente cliccare sul supporto di memoria sul quale abbiamo effettuato le operazioni, cliccare sul tasto Mount ed in seguito applicare come al solito le modifiche.

Creazione di un utente per l’accesso ai File + Abilitazione Servizi

Sempre attraverso la web GUI di OpenMediaVault, è possibile aggiungere dei nuovi utenti.
Per eseguire questa operazione, basta seguire i passaggi seguenti:

  • Tramite menù recarsi nella sezione Gestione Permessi di Accesso => Utente.
  • Cliccare sul tasto +Aggiungi ed una volta che si sarà aperta la finestra dedita allo scopo, basta assegnare un nuovo nome utente ed una password, oltre ad alcuni dati non indispensabili.
  • Spostarsi nella sezione Gruppi e spuntare il checkbox Nome per selezionare tutti i Gruppi appartenenti all’utente che si sta creando.
  • Salvare ed applicare le modifiche.

Creazione di una cartella condivisa

  • Tramite menù recarsi nella sezione Gestione Permessi di Accesso => Cartelle condivise.
  • Cliccare sul pulsante +Aggiungi.
  • Scegliere un nome per la nuova cartella.
  • Selezionare la partizione che si intende utilizzare, (più banalmente: su quale partizione di quale supporto di memoria).
  • Salvare ed applicare le modifiche.

Gestione permessi della cartella condivisa

Per accedere alle cartelle condivise create, bisogna fare l’accesso utilizzando un utente e la relativa password.
Si può decidere cosa può fare o meno un utente, impostando i permessi di lettura e scrittura di una determinata cartella, cliccando sulla stessa per selezionarla ed in seguito cliccare sul pulsante ACL.

Abilitazione SMB/CIFS

L’uso principale di Samba, in ambito multi sistema o di rete, è quello di far interagire Windows con altri sistemi operativi non Microsoft, fornendo così una piattaforma comune per l’impiego condiviso di risorse (server, client, gruppi, utenti, dischi, cartelle, stampanti e altri dispositivi hardware, ecc).

Wikipedia.org

Per abilitare i servizi, si deve:

  • Tramite menù recarsi nella sezione Servizi =>SMB/CIFS
  • Cliccare sul pulsante abilita
  • Salvare le modifiche

Le cartelle condivise che sono state create, non verranno condivise automaticamente attraverso i servizi appena abilitati, ma bisogna aggiungerle manualmente come segue:

  • Fare clic sulla scheda Condivisioni.
  • Cliccare sul pulsante Aggiungi.
  • Selezionare la cartella che si vuole “abilitare” ed impostare eventuali parametri (es. cartella pubblica).
  • Salvare ed applicare le modifiche.

Adesso sarà possibile accedere alle cartelle condivise appena create, da qualsiasi dispositivo collegato alla stessa rete del proprio NAS fai da te con Raspberry Pi 4.

Accesso remoto da altre reti

Nel caso in cui si dovesse avere la necessità di potere accedere ai dati del proprio NAS, anche quando non si è collegati alla stessa rete, bisogna con molta cautela eseguire una configurazione che permette di farlo.
Vedremo la procedura completa, con un occhio di riguardo verso la sicurezza, nel prossimo articolo di gestione della rete.

Video


Stuffs

https://www.crowdsupply.com/wiretrustee/wiretrustee-sata