La rinascita di un RAID
Finalmente ti racconto l’epilogo di questa avventura iniziata qualche mese fa.
Se ti sei perso gli articoli precedenti ti rimando a:
- Configurare un RAID software con mdadm su Linux
- Uno dei dischi del RAID si è già rotto
- Perchè i dischi di un RAID devono essere della stessa marca e modello?
Per risolvere il problema ho optato per la scelta più costosa ma più sicura: comprare un disco di taglia superiore, questa volta ho preso un WD Gold da 12 TB.

Aggiungo manualmente il disco al RAID
Dopo averlo collegato non sapevo bene cosa aspettarmi. Speravo di non dover toccare nulla e che tutto avrebbe iniziato automagicamente a funzionare.
Così non è stato ma almeno il disco sembra funzionare correttamente perchè il sistema operativo
lo vede come /dev/sdb
.
Decido quindi di aggiungere manualmente sdb
al RAID.
progressify@progressify-server:~$ sudo mdadm --add /dev/md0 /dev/sdb
mdadm: added /dev/sdb
L’output del comando parla da solo, sta funzionando!
Emozionato come un bambino, lancio subito il comando detail per capire cosa stesse succedendo:
progressify@progressify-server:~$ sudo mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Sat Sep 14 13:47:54 2024
Raid Level : raid5
Array Size : 29325628416 (27.31 TiB 30.03 TB)
Used Dev Size : 9775209472 (9.10 TiB 10.01 TB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Mon Jun 30 13:20:34 2025
State : clean, degraded, recovering
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : bitmap
Rebuild Status : 0% complete
Name : progressify-server:0 (local to host progressify-server)
UUID : a7a90558:afa35433:81a887fd:7f897739
Events : 615203
Number Major Minor RaidDevice State
0 8 49 0 active sync /dev/sdd1
1 8 33 1 active sync /dev/sdc1
2 8 1 2 active sync /dev/sda1
4 8 16 3 spare rebuilding /dev/sdb
Il RAID si sta ricostruendo… bene! Ora c’è da attendere qualche ora.
Ho atteso con ansia il completamento con il terrore che qualcosa potesse andare storto anche questa volta. Ho monitorato periodicamente l’avanzamento del processo, ti lascio un po' di output.
All’inizio del processo:
progressify@progressify-server:~$ cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [raid0] [raid1] [raid10]
md0 : active raid5 sdb[4] sdd1[0] sdc1[1] sda1[2]
29325628416 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
[>....................] recovery = 0.5% (52326792/9775209472) finish=801.5min speed=202169K/sec
bitmap: 9/73 pages [36KB], 65536KB chunk
unused devices: <none>
Dopo circa un paio di ore:
progressify@progressify-server:~$ cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [raid0] [raid1] [raid10]
md0 : active raid5 sdb[4] sdd1[0] sdc1[1] sda1[2]
29325628416 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
[===>.................] recovery = 15.2% (1489642628/9775209472) finish=673.3min speed=205080K/sec
bitmap: 8/73 pages [32KB], 65536KB chunk
unused devices: <none>
E dopo quasi 5 o 6 ore:
progressify@progressify-server:~$ cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [raid0] [raid1] [raid10]
md0 : active raid5 sdb[4] sdd1[0] sdc1[1] sda1[2]
29325628416 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
[=============>.......] recovery = 66.3% (6485585196/9775209472) finish=425.9min speed=128699K/sec
bitmap: 5/73 pages [20KB], 65536KB chunk
unused devices: <none>
Poi sono andato a dormire. Il giorno successivo ricontrollo e l’output è il seguente:
progressify@progressify-server:~$ cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [raid0] [raid1] [raid10]
md0 : active raid5 sdb[4] sdd1[0] sdc1[1] sda1[2]
29325628416 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
bitmap: 3/73 pages [12KB], 65536KB chunk
unused devices: <none>
Tutti i dischi sono up: [4/4] [UUUU]
Sembrava che tutto stesse funzionando bene. Ma per essere sicuro ho riavviato il sistema e controllato che non ci fossero problemi.
progressify@progressify-server:~$ sudo mdadm --detail /dev/md0
[sudo] password di progressify:
/dev/md0:
Version : 1.2
Creation Time : Sat Sep 14 13:47:54 2024
Raid Level : raid5
Array Size : 29325628416 (27.31 TiB 30.03 TB)
Used Dev Size : 9775209472 (9.10 TiB 10.01 TB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Tue Jul 1 09:32:06 2025
State : active
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : bitmap
Name : progressify-server:0 (local to host progressify-server)
UUID : a7a90558:afa35433:81a887fd:7f897739
Events : 644002
Number Major Minor RaidDevice State
0 8 49 0 active sync /dev/sdd1
1 8 33 1 active sync /dev/sdc1
2 8 1 2 active sync /dev/sda1
4 8 16 3 active sync /dev/sdb
Il RAID si è ricostruito correttamente, tutto funziona come previsto.
Ero super emozionato. Quasi piangevo.
Prossimi step che attuerò per preservare il RAID
In questo periodo mi sono informato e ho letto che esistono software per monitorare lo stato di salute dei dischi. Non si possono prevenire eventi di rottura straordinaria, ma sicuramente posso monitorare meglio i dischi per capire se e quando qualcosa non sta funzionando come dovrebbe.
Vorrei organizzare una strategia di backup, almeno per i dati importanti, così da avere accesso almeno a quelli indispensabili in caso di rotture o periodi di offline.
Infine, dato che all’inizio dell’estate si sono verificati sbalzi di corrente e addirittura periodi di blackout per diverse ore, vorrei prevenire danni installando un UPS.
Continuerò a documentare le mie esperienze
Sto riscuotendo ottimi feedback da questi articoli e ne sono contento! Più di una persona mi ha scritto per chiedermi consigli e aggiornamenti, quindi anche tu continua a seguirmi e ti ricordo che puoi contattarmi nel canale Telegram e nei commenti.
Immagine di copertina generata con Microsoft Designer.
AP