Un array RAID con un disco guasto è una delle situazioni più stressanti per un amministratore di sistema o per il titolare di una piccola impresa. Il RAID è progettato per garantire la continuità operativa, ma non è un'assicurazione assoluta contro la perdita di dati: esistono scenari in cui anche un array RAID ridondante può perdere tutti i suoi dati. Questa guida spiega come funziona ogni livello RAID, cosa fare immediatamente quando un disco si guasta, quali strumenti usare per il recupero e quando è il momento di chiamare un professionista specializzato.

Cos'è il RAID: Redundant Array of Independent Disks

RAID è l'acronimo di Redundant Array of Independent Disks (in origine “Inexpensive Disks”). È una tecnologia che permette di combinare più dischi rigidi fisici in un unico volume logico, con obiettivi diversi a seconda del livello scelto: prestazioni, ridondanza (protezione dai guasti), o un compromesso tra le due cose.

Il RAID non è un backup. Questa distinzione è fondamentale e spesso fraintesa. Il RAID protegge dalla perdita di dati causata dal guasto fisico di uno o più dischi. Non protegge da cancellazioni accidentali, ransomware, corruzioni logiche del file system o errori umani. Se cancelli un file su un RAID 5, quel file è cancellato su tutti i dischi simultaneamente. Per questo, anche con il RAID, è indispensabile avere una strategia di backup separata. Leggi la nostra guida al backup aziendale per approfondire.

RAID 0: striping senza ridondanza

Nel RAID 0, i dati vengono distribuiti (“striped”) su tutti i dischi dell'array in blocchi alternati. Un file da 100 MB su un RAID 0 con due dischi viene diviso: 50 MB su un disco e 50 MB sull'altro. Il risultato è prestazioni in lettura e scrittura molto elevate (la velocità teorica è la somma di quella dei singoli dischi) e capacità totale pari alla somma di tutti i dischi.

Il RAID 0 non offre nessuna ridondanza. Se uno qualsiasi dei dischi si guasta, tutti i dati dell'array sono inaccessibili. Con due dischi il rischio di guasto è già doppio rispetto a un singolo disco; con quattro dischi è quadruplo. Il RAID 0 è adatto solo per dati temporanei, ambienti di test o situazioni in cui le prestazioni sono critiche e la perdita dei dati è accettabile.

Il recupero dati da RAID 0 è tra i più complessi che esistano. Per ricostruire il volume è necessario conoscere: il numero di dischi, la dimensione del blocco di stripe (chunk size, tipicamente 64 KB, 128 KB o 256 KB), l'ordine dei dischi nell'array, e la posizione di inizio dei dati. Se anche un solo disco è irrecuperabile, i dati dell'intero array sono compromessi. I professionisti usano strumenti come ReclaiMe Free RAID Recovery per determinare automaticamente questi parametri attraverso l'analisi dei pattern di dati.

RAID 1: mirroring e recupero facile

Il RAID 1 è il più semplice dei livelli ridondanti: ogni disco dell'array contiene una copia identica degli stessi dati (mirroring). Con due dischi da 1 TB in RAID 1, la capacità totale utilizzabile è 1 TB (non 2 TB), ma si può perdere uno dei due dischi senza perdere nessun dato.

Il recupero da un RAID 1 con un disco guasto è il più semplice possibile: il disco sopravvissuto contiene una copia completa e aggiornata di tutti i dati. Basta rimuovere il disco guasto, collegare il disco sano a un sistema funzionante e copiare i dati. Non servono strumenti speciali di recupero RAID.

Attenzione però: se anche il secondo disco si guasta prima di aver completato il rebuild (la ricopiatura dei dati su un nuovo disco sostitutivo), tutti i dati sono persi. La finestra di vulnerabilità durante il rebuild è un momento critico: approfondiremo questo punto parlando del RAID 5.

RAID 4: parità dedicata (poco usato)

Il RAID 4 usa lo stesso principio di striping del RAID 0, ma aggiunge un disco dedicato esclusivamente alla parità: un insieme di bit calcolati matematicamente dai dati degli altri dischi che permette di ricostruire i dati di qualsiasi disco guasto. Con N dischi in RAID 4, la capacità utilizzabile è N-1 dischi, e si può tollerare il guasto di un qualsiasi singolo disco (incluso quello di parità).

Il RAID 4 è oggi quasi completamente obsoleto perché il disco di parità diventa un collo di bottiglia: ogni operazione di scrittura richiede di aggiornare il disco di parità, che diventa il punto più sollecitato dell'array. Il RAID 5, che distribuisce la parità su tutti i dischi, risolve questo problema ed ha praticamente sostituito il RAID 4 in tutti i contesti.

RAID 5: parità distribuita e il guasto singolo

Il RAID 5 è il livello RAID più diffuso in assoluto per i NAS domestici, aziendali e i server di medie dimensioni. Come il RAID 4, usa la parità per la ridondanza, ma distribuisce i blocchi di parità su tutti i dischi dell'array invece di dedicarne uno. Richiede almeno 3 dischi, tolera il guasto di 1 disco e ha una capacità utilizzabile di N-1 dischi.

Con un RAID 5 in stato normale (“healthy”), il sistema legge e scrive normalmente su tutti i dischi. Quando un disco si guasta, il sistema entra inmodalità degradata: continua a funzionare, ma usando i blocchi di parità per ricostruire al volo i dati del disco mancante. Le prestazioni calano significativamente perché ogni lettura richiede calcoli aggiuntivi.

Il rebuild è il processo di ricostruzione dei dati del disco guasto su un nuovo disco sostitutivo. Durante il rebuild, l'array rimane vulnerabile: se un secondo disco si guasta prima che il rebuild sia completato, tutti i dati sono persi senza possibilità di recupero tramite la sola logica RAID.

Il doppio guasto: l'incubo del RAID 5

Il fenomeno degli URE (Unrecoverable Read Errors) è uno dei rischi meno conosciuti ma più reali del RAID 5. Un URE è un errore di lettura permanente su un settore del disco: il disco non riesce a leggere quel settore e non può recuperarlo nemmeno con i suoi meccanismi interni di correzione degli errori.

I produttori di dischi SATA consumer (non enterprise) specificano tipicamente un tasso di URE di 1 errore ogni 10^14 bit letti. Con dischi da 4 TB, questo significa statisticamente un URE ogni 12,5 TB di dati letti. Un rebuild di un RAID 5 con 4 dischi da 4 TB richiede la lettura di circa 12 TB di dati: la probabilità di incontrare un URE durante il rebuild è tutt'altro che trascurabile.

Questo è il motivo per cui molti esperti sconsigliano il RAID 5 con dischi consumer di grandi dimensioni, preferendo il RAID 6 (che tollera due guasti contemporanei) o il RAID 10 (che offre prestazioni migliori).

RAID 6: doppia parità per massima sicurezza

Il RAID 6 estende il concetto del RAID 5 aggiungendo un secondo blocco di parità indipendente per ogni stripe. Questo significa che l'array può tollerare il guasto simultaneo di due dischi senza perdita di dati. Richiede almeno 4 dischi e ha una capacità utilizzabile di N-2 dischi.

Il RAID 6 è significativamente più sicuro del RAID 5, specialmente con dischi grandi, perché può sopravvivere a un secondo guasto durante il rebuild. Lo svantaggio principale è la maggiore complessità dei calcoli di parità (il doppio rispetto al RAID 5), che si traduce in prestazioni in scrittura leggermente inferiori e un carico maggiore sul controller RAID.

Il recupero da RAID 6 con due dischi guasti è tecnicamente possibile ma richiede strumenti avanzati come UFS Explorer RAID Recovery o R-Studio, che devono ricostruire matematicamente i dati usando i due set di parità indipendenti.

RAID 10: mirror e stripe, il compromesso ottimale

Il RAID 10 (anche scritto RAID 1+0) combina il mirroring del RAID 1 con lo striping del RAID 0. Richiede un numero pari di dischi (minimo 4) e funziona così: i dischi vengono prima accoppiati in mirror (RAID 1), poi i mirror vengono uniti in stripe (RAID 0). Con 4 dischi da 1 TB in RAID 10, la capacità utilizzabile è 2 TB.

Il RAID 10 offre eccellenti prestazioni (grazie allo striping) e buona ridondanza (grazie al mirroring): può tollerare il guasto di un disco per ogni coppia in mirror, quindi potenzialmente fino a N/2 dischi purché non siano entrambi dello stesso mirror. Il rebuild è molto più veloce del RAID 5 o 6 perché basta ricopiare il contenuto del disco mirror sopravvissuto: non sono necessari calcoli di parità.

Il principale svantaggio è il costo: si usa solo il 50% della capacità totale. Per approfondire la scelta tra i vari livelli RAID, consulta la nostra guida alla scelta del livello RAID.

Software RAID vs hardware RAID

Un aspetto critico per il recupero dati da RAID è capire se si tratta di unRAID hardware o di un RAID software:

Nel RAID hardware, la logica RAID è gestita da un controller dedicato (una scheda PCIe o integrata nella scheda madre del server). I controller hardware più comuni sono prodotti da LSI/Avago (oggi Broadcom), Adaptec, HP Smart Array, Dell PERC. Il controller scrive metadati proprietari sui dischi: se il controller si guasta, i dischi non sono leggibili da un controller diverso o dal sistema operativo senza uno strumento di recupero. In caso di guasto del controller, è fondamentale procurarsi un controller identico (stesso modello e firmware) prima di tentare il recupero.

Nel RAID software, la logica RAID è gestita dal sistema operativo. Su Linux, lo strumento standard è mdadm, che gestisce i cosiddetti “Linux Software RAID” (md devices). Su Windows Server è disponibile tramite “Spazi di archiviazione”. Il vantaggio del RAID software è che i metadati sono standardizzati: un array mdadm può essere riassemblato su qualsiasi sistema Linux, indipendentemente dall'hardware.

I NAS consumer (Synology, QNAP, Western Digital) usano tipicamente il RAID software (spesso basato su mdadm o su stack proprietari compatibili). I dischi di un NAS Synology in RAID 5 possono essere riassemblati con mdadm su qualsiasi sistema Linux, anche senza il NAS originale.

Ricostruire un RAID Linux con mdadm

Su sistemi Linux che usano mdadm per il RAID software, il recupero di un array degradato segue questa procedura generale:

  1. Identificare lo stato dell'array: cat /proc/mdstat mostra lo stato di tutti gli array md attivi, inclusi quelli degradati. mdadm --detail /dev/md0 mostra i dettagli dell'array specifico.
  2. Identificare il disco guasto: controllare i log con dmesg | grep -i error e i dati S.M.A.R.T. con smartctl -a /dev/sdX.
  3. Rimuovere il disco guasto dall'array: mdadm /dev/md0 --fail /dev/sdX seguito da mdadm /dev/md0 --remove /dev/sdX.
  4. Sostituire il disco fisico con uno di capacità uguale o superiore.
  5. Aggiungere il nuovo disco all'array: mdadm /dev/md0 --add /dev/sdY. Il rebuild inizia automaticamente.
  6. Monitorare il rebuild: watch cat /proc/mdstat mostra l'avanzamento in tempo reale. Un rebuild su dischi grandi può richiedere molte ore.

Se l'array non si assembla automaticamente al riavvio, è necessario assemblarlo manualmente: mdadm --assemble --scan o specificando i dischi componenti con mdadm --assemble /dev/md0 /dev/sda /dev/sdb /dev/sdc.

Tool di recupero RAID professionale

Quando gli strumenti nativi non bastano — array completamente offline, multipli dischi guasti, controller bruciato, metadati RAID corrotti — esistono software specializzati:

  • ReclaiMe Free RAID Recovery: strumento gratuito, eccellente per determinare automaticamente i parametri di un RAID 0 o RAID 5 sconosciuti (chunk size, ordine dei dischi, offset). Funziona su Windows e supporta tutti i principali tipi di RAID.
  • R-Studio (R-Tools Technology): software commerciale completo per il recupero RAID. Supporta RAID 0, 1, 4, 5, 6, 10 e varianti. Eccellente per recupero su array con metadati corrotti o controller guasti. Include un modulo di recupero virtuale che permette di ricostruire logicamente l'array prima di estrarre i dati.
  • UFS Explorer RAID Recovery: specializzato in array complessi, inclusi RAID su NAS Synology, QNAP e sistemi proprietari. Supporta oltre 30 tipi di configurazioni RAID e può lavorare con immagini dei dischi invece che sui dischi fisici originali.
  • GetDataBack RAID: strumento consolidato, particolarmente efficace su NTFS e FAT32, con supporto per RAID 0 e RAID 5.

Una pratica fondamentale prima di usare qualsiasi strumento di recupero è creare unaimmagine bitwise di ciascun disco usando dd su Linux o strumenti come Clonezilla. Lavora sempre sulle immagini, non sui dischi originali: se qualcosa va storto, puoi ricominciare dall'immagine.

Quando serve un professionista: multipli guasti e controller bruciato

Esistono situazioni che vanno chiaramente oltre le capacità di un intervento fai-da-te o anche di un amministratore di sistema esperto:

  • Multipli dischi guasti fisicamente: se due o più dischi hanno guasti hardware (testine rotte, piatti graffiati, elettronica bruciata), è necessario un laboratorio con camera bianca per riparare fisicamente i dischi prima di tentare il recupero logico del RAID.
  • Controller RAID hardware guasto: se il controller ha bruciato la logica o corrotto la configurazione interna (il “foreign configuration”), recuperare l'accesso ai dischi richiede strumenti specializzati o un controller sostitutivo identico.
  • RAID proprietario non standard: alcuni NAS e storage array aziendali usano implementazioni RAID proprietarie (es. Drobo BeyondRAID, alcuni sistemi EMC/NetApp) che richiedono conoscenza specifica dell'implementazione del produttore.
  • Array con tutti i metadati corrotti: se i metadati di configurazione del RAID sono stati corrotti su tutti i dischi, ricostruire i parametri dell'array (ordine dischi, chunk size, livello, offset) richiede analisi forense specializzata.

Costi del recupero RAID professionale

Il recupero dati da array RAID è tra le operazioni più costose in ambito di recupero dati, per la complessità tecnica e il tempo richiesto. Le tariffe variano molto in base alla gravità del guasto:

  • RAID logicamente guasto (array degradato, metadati parzialmente corrotti, controller software): 300-800€ per interventi su sistemi standard.
  • RAID con un disco fisicamente guasto (riparazione disco + recupero array): 800-2.000€ in base alla complessità del disco e dell'array.
  • RAID con multipli dischi guasti o controller hardware guasto: 2.000-5.000€ o più. I costi della camera bianca da soli possono essere di 500-1.500€ per disco.
  • Array RAID enterprise con sistemi proprietari complessi: possono superare i 10.000€ per i casi più critici.

Questi costi evidenziano perché la prevenzione — e in particolare il backup regolare dei dati anche da sistemi RAID ridondanti — sia sempre la scelta economicamente più sensata.

Prevenzione: monitoring S.M.A.R.T., spare disk e backup

La gestione proattiva di un array RAID riduce drasticamente il rischio di perdita di dati:

  • Monitoraggio S.M.A.R.T. continuo: configura il tuo sistema per inviare email di allarme quando i valori S.M.A.R.T. dei dischi raggiungono soglie critiche (Reallocated Sectors, Pending Sectors, CRC Errors). Su Linux, smartd gestisce automaticamente questo monitoring. I NAS Synology e QNAP hanno questa funzione integrata.
  • Hot spare disk: configura almeno un disco di riserva “hot spare” nell'array. Quando un disco si guasta, il rebuild inizia automaticamente sul disco spare senza intervento manuale, riducendo la finestra di vulnerabilità.
  • Test di consistenza periodici: la maggior parte dei controller RAID hardware e il mdadm di Linux supportano i “consistency checks” periodici, che verificano l'integrità della parità e correggono eventuali discrepanze prima che diventino problemi seri. Pianificali mensilmente.
  • Backup separato dal RAID: implementa sempre una strategia di backup separata dal RAID. Il RAID protegge dal guasto hardware, il backup protegge da tutto il resto. La regola 3-2-1 si applica anche ai sistemi RAID.
  • Sostituisci i dischi in anticipo: non aspettare che un disco si guasti. Monitora l'età e i valori S.M.A.R.T. e pianifica la sostituzione preventiva dei dischi che si avvicinano alla fine del loro ciclo di vita (tipicamente 3-5 anni per uso continuo 24/7).

Hai un RAID in stato degradato? Agisci subito

Se stai leggendo questa guida perché hai un array RAID in stato degradato o offline, il tempo è il fattore critico. Ogni ora che passa con un array degradato in produzione è un'ora di rischio aggiuntivo. Ogni operazione di scrittura su un array degradato aumenta leggermente il rischio di un secondo guasto durante il rebuild.

La prima cosa da fare è fare un backup immediato di tutti i dati accessibili dall'array degradato, prima di avviare il rebuild. Se il sistema è ancora online e i dati sono accessibili (l'array è in modalità degradata ma funzionante), copia i dati critici su un sistema separato prima di qualsiasi altra operazione.

Se il RAID è completamente offline e non sai come procedere, contattaci: il nostro team ha esperienza nella gestione di emergenze RAID e può guidarti nelle operazioni da eseguire (e da evitare) per massimizzare le possibilità di recupero. Una consulenza preliminare non ha costi: ti diciamo subito cosa possiamo fare e con quali probabilità di successo.