Newsgroup: it.comp.os.linux.sys
Titolo: RAID 5 degradato - ho tolto il disco sbagliato :-(

Ciao a tutti,
ho un antico NAS della Thecus (N3200PRO), sul quale ho installato una Ubuntu server 10.04.4, con tre dischi da 2TB configurati in RAID5. Il sistema operativo è installato su USB esterna. Premetto che non sono un “ninja raid”.
 
Qualche giorno fa mi si è degradato il RAID… magari dopo circa dieci anni di attività è normale (in verità era già successo una volta). “vabbè”, penso io… tolgo il disco rotto (già sentivo da un po’ un sinistro “clac-clac”), ne compro un altro uguale e tutto torna come prima.
 
Purtroppo, mannaggia alle mie manine frettolose, vado a togliere il disco sbagliato, forse proprio mentre mdadm stava facendo qualcosa.
 
Fatto sta che il RAID non si monta più. Il sistema si avvia; all’inizio mi dice che il RAID non si può montare, e mi propone di entrare in una a me sconosciuta “modalità manteinement” oppure di saltarla e avviare l’SO. 
 
Un fdisk -l da root mi dice quanto segue: 
 
root@thecus:~# fdisk -l
 
Disco /dev/sda: 2000.4 GB, 2000398934016 byte
255 testine, 63 settori/tracce, 243201 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Identificativo disco: 0x0b4f7f28
 
Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sda1               1      243201  1953512001   83  Linux
Partition 1 does not start on physical sector boundary.
 
WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.
 
So che fdisk non gestisce GPT, ma con parted non saprei cosa fare se non altri danni.
 
Nel frattempo ho ordinato un altro disco WD uguale agli altri due (o quasi, quelli originali non li trovo più), sempre da 2TB.
 
Non sapendo cosa fare, sto toccando meno possibile il sistema, ma sono qui umilmente (e con non poca paura di aver rotto qualcosa) a chiedervi qualche illuminante consiglio.
 
Grazie in anticipo per le risposte

 Non sapendo cosa fare, sto toccando meno possibile il sistema, ma sono qui umilmente (e con non poca paura di aver rotto qualcosa) a chiedervi qualche illuminante consiglio.
 
Non vorrei dare il consiglio sbagliato, ma di solito
togliere due dischi da un RAID-5 e` un'operazione
catastrofica.
 
Nel senso che e` andato per sempre.
 
Forse qui c'e` piu` aiuto:
 
https://raid.wiki.kernel.org/index.php/Linux_Raid#When_Things_Go_Wrogn
 
 
L'unica possibilita` sarebbe assemblare il RAID
con i due dischi non-rotti, che contenevano i dati.
 
Per i dettagli, pero`, sarebbe meglio chiedere
alla mailing list (che dovrebbe essere nel link
di cui sopra).
 
Ad ogni modo, non toccare niente, e fai una copia
"dd", se possibile, di ogni disco da un'altra parte.
Questo per poter poter fare esperimenti, senza
perdere niente.
 
bye,
 
-- 
 
piergiorgio

 Un fdisk -l da root mi dice quanto segue:
[cut]
 
Che dicono:
 
mdadm --detail /dev/your_raid_name
 
cat /proc/mdstat
 
 

 piergiorgio
 
grazie mille per la risposta :-)
 

 cat /proc/mdstat
 
root@thecus:~# cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md50 : inactive sdb3[1](S)
      524276 blocks super 1.2
 
md0 : inactive sda1[3](S) sdb2[1](S)
      3904385465 blocks super 1.2
 
md10 : inactive sdb1[1](S)
      2096128 blocks super 1.2
 
grazie mille anche a te, Andrea :-)
 
 
 

 eh... ma a 'sto punto, forse, di non-rotti ce n'è soltanto uno...
 
Il disco che hai tolto per sbaglio dovrebbe
essere ancora intatto, oppure ha subito modifiche?
 
Operando su copie, ovviamente, forse e` possibile
usare quel disco, piu` quello rimasto nel NAS,
per assemblare il RAID-5 degraded.
 
C'e` l'opzione "--force" di mdadm per forzare la
cosa, se non vi sono troppe differenze.
 
Chiaramente, potrebbe funzionare, oppure no, oppure
fare piu` danni, per cui bisogna sempre provare
sul backup.
 
bye,
 
-- 
 
piergiorgio

 eh... ma a 'sto punto, forse, di non-rotti ce n'è soltanto uno...
 
Sempre assumendo che il disco tolto per sbaglio
sia come era, assumendo anche che si sappia il
ruolo dei dischi (cioe` quale era primo, quale
secondo, quale terzo), forse e` possibile
ri-creare il RAID (--create), dando l'ordine
giusto ed evitando il sync iniziale.
 
Considerando che le combinazioni sarebbero 6,
forse si possono anche provare tutte, finche`
"fsck" non e` contento.
 
Cioe`, assumendo /dev/sdX e /dev/sdY come il
disco sano e quello rimosso per sbaglio.
 
mdadm --create .... /dev/sdX /dev/sdY missing
mdadm --create .... /dev/sdX missing /dev/sdY
 
...e cosi` via...
 
Questo potrebbe anche salvare l'array.
 
Il problema e` che, nel corso degli anni, l'offset
dei dati e` cambiato, per cui bisognerebbe essere
sicuri di usare lo stesso dei componenti dell'array
originale.
 
Credo mdadm -E /dev/sdX o forse -X, dovrebbe riportare
tale informazione.
 
Versioni recenti di mdadm consentono anche di dichiarare
l'offset in modo esplicito (per disco).
 
Il tutto sempre su copie, ovviamente.
 
bye,
 
-- 
 
piergiorgio

 sul backup.
 
sacrosanto... però leggevo, sul Linux Raid Wiki:
 
A "stop" followed by an "assemble" can never do any harm, and may well fix the problem. Be very careful with "--force", though, as it may trigger a resync which could destroy the contents of a drive and make recovery difficult or impossible.
 
uhm...
ri-grazie

 tale informazione.
 
et voilà... sono più terrorizzato di prima. i due dischi rimasti (quello rotto è fisicamente fuori, anche perché il suo simpatico clac-clac blocca il sistema all'avvio). I due rimasti sono /dev/sda e /dev/sdb, ecco l'output di mdadm -E e mdadm -X
 
root@thecus:~# mdadm -E /dev/sdb1
/dev/sdb1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 3f7c6079:b69c27eb:8e4344e4:a3403434
           Name : thecus:10  (local to host thecus)
  Creation Time : Sun Nov  6 12:27:14 2011
     Raid Level : raid1
   Raid Devices : 3
 
 Avail Dev Size : 4192256 (2047.34 MiB 2146.44 MB)
     Array Size : 4192232 (2047.33 MiB 2146.42 MB)
  Used Dev Size : 4192232 (2047.33 MiB 2146.42 MB)
    Data Offset : 2048 sectors
   Super Offset : 8 sectors
          State : clean
    Device UUID : 19dbe832:b6c96752:770ba051:d7569302
 
    Update Time : Sun Jun 19 19:17:54 2016
       Checksum : 3a2e0b5a - correct
         Events : 110
 
 
    Array Slot : 1 (0, 1, 2, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed)
   Array State : uUu 381 failed
root@thecus:~# mdadm -X /dev/sdb1
Errore di virgola mobile
root@thecus:~# 

 et voilà... sono più terrorizzato di prima. i due dischi rimasti (quello rotto è fisicamente fuori, anche perché il suo simpatico clac-clac blocca il sistema all'avvio). I due rimasti sono /dev/sda e /dev/sdb, ecco l'output di mdadm -E e mdadm -X
 
chiedo scusa, ho incollato soltanto il risultato del secondo disco. eccoli entrambi.
 
 
root@thecus:~# mdadm -E /dev/sda1
/dev/sda1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 3115aed7:e283c89f:4407bf04:b1c52771
           Name : thecus:0  (local to host thecus)
  Creation Time : Sun Nov  6 12:27:15 2011
     Raid Level : raid5
   Raid Devices : 3
 
 Avail Dev Size : 3907023730 (1863.01 GiB 2000.40 GB)
     Array Size : 
7803486208
 (3720.99 GiB 3995.38 GB)
  Used Dev Size : 3901743104 (1860.50 GiB 1997.69 GB)
    Data Offset : 272 sectors
   Super Offset : 8 sectors
          State : clean
    Device UUID : 97707fac:738775ea:c9bc41e2:43f46b2c
 
    Update Time : Mon May 28 16:39:36 2018
       Checksum : 4a45df11 - correct
         Events : 44021
 
         Layout : left-symmetric
     Chunk Size : 4096K
 
    Array Slot : 3 (failed, 1, failed, 2, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed, failed)
   Array State : _uU 382 failed
 
root@thecus:~# mdadm -X /dev/sda1
        Filename : /dev/sda1
           Magic : a92b4efc
mdadm: invalid bitmap magic 0xa92b4efc, the bitmap file appears to be corrupted
         Version : 1
mdadm: unknown bitmap version 1, either the bitmap file is corrupted or you need to upgrade your tools


 et voilà... sono più terrorizzato di prima. i due dischi rimasti (quello rotto è fisicamente fuori, anche perché il suo simpatico clac-clac blocca il sistema all'avvio). I due rimasti sono /dev/sda e /dev/sdb, ecco l'output di mdadm -E e mdadm -X
 
Mah, credo "-X" non sia rilevante.
"-E" mostra un offset di 2048 (e 272?) settori, che
va considerato in caso di "create".
 
In generale, pero`, come scritto prima, non credo
ci sia da avere paura, perche` l'array e` perso.
 
Se si riesce a salvare, allora bene, ma non vedo
una soluzione generale.
So possono provare alcune cose (sempre sulle copie),
ma sono tentativi, nulla e` garantito.
Non c'e` una procedura standard.
 
bye,
 
-- 
 
piergiorgio

 giusto ed evitando il sync iniziale.
 
FERMO! Se ha il set di dischi, e funzionano, con --create li reinizializza.
Se vuole tentare un recupero, deve usare --assemble
 
Enrico

 Non c'e` una procedura standard.
 
sempre ringraziandoti per la tua pazienza e disponibilità, 
 
notavo che: 
 
root@thecus:~# mdadm -E /dev/sda1
.....
  Creation Time : Sun Nov  6 12:27:15 2011
     Raid Level : raid5
.....
 
root@thecus:~# mdadm -E /dev/sdb1
.....
  Creation Time : Sun Nov  6 12:27:14 2011
     Raid Level : raid1
.....
 
eh?!?!? raid5 e raid1? 
lo so, sono ignorante ma assai assai... però non dovrebbero essere entrambi raid5?

 Enrico
 
grazie anche a te Enrico

 cosa dovrebbe succedere?
 
Nulla. Linux non sa a cosa serve quel disco, e finché non lo riagganci ai raid
non lo tocca. Per riagganciarlo, ovviamente devi prima partizionarlo e poi puoi
riaggiungerlo
 
Enrico

 Se vuole tentare un recupero, deve usare --assemble
 
Non necessariamente.
 
Quello e` il primo tentativo, poi con "--force" e poi,
se non funziona neanche quello, "--create".
 
bye,
 
-- 
 
piergiorgio

       3904385465 blocks super 1.2
 
Prova un:
mdadm --stop /dev/md0
mdadm --force -assemble /dev/md0 /dev/sda1 /dev/sdb2
 
Ma c'è qualcosa che non va, ad esempio in /dev/md50 non vengono riportati tutti
i dischi. Prova a verificarne con mdadm -E /dev/md50 lo stato. In ogni caso,
preparati a dover ripristinare dal backup
 
Enrico

 riaggiungerlo
 
cosa che però non sarebbe sufficiente a far tornare tutto ok, compresa la mia sudorazione/palpitazione/ansia/ecc/ecc..
 
è che a parte il disco nuovo che arriverà spero presto, altri 2TB per il backup in dd non li ho... compro due dischi anziché uno? 
 
mannaggia a me mannaggia...
 
grazie ancora
 

 raid5?
 
Non necessariamente. Considera che ogni partizione del disco può essere
trattata in modo differente, e quindi può essere usata per usare livelli di
RAID differenti. Un motivo per cui potresti avere una situazione del genere è
perché per qualche motivo c'è stato "un mischione" delle partizioni durante
l'installazione
 
Enrico

 lo so, sono ignorante ma assai assai... però non dovrebbero essere entrambi raid5?
 
Uhm, strano, forse qualcosa e` realmente andato
storto, oppure, forse, nel 2011, il sistema ha
creato un RAID-1 (con due dischi) e poi lo ha
trasformato in RAID-5, procedura possibile.
 
E` pero` assai strano che, nell'ipotesi precedente,
abbia mantenuto la dicitura RAID-1.
 
Pero`, di nuovo, puo` anche essere che nel 2011 vi
fossero bug che abbiano causato quel mismatch.
 
Non saprei, forse quelli della mailing list hanno
piu` informazioni al riguardo.
 
bye,
 
-- 
 
piergiorgio

 preparati a dover ripristinare dal backup
 
ehm... non so come dirlo... ma ERA LUI il mio backup... :(

 ehm... non so come dirlo... ma ERA LUI il mio backup... :(
 
Vabbe`, ma questo vuol dire che avrai i
dati originali nel / nei PC di cui quello
era il backup...
 
Oppure intendi altro con "backup"?
 
bye,
 
-- 
 
piergiorgio

 Oppure intendi altro con "backup"?
 
il NAS si tira giù nottetempo, con rsync, dati da un mio server su dreamhost dove ho alcuni siti, oltre a "un paio" di cartelle con software e altro di cui non ho backup...
 
mi è venuto in mente che il RAID, nel 2011, potrebbe esser stato creato dal firmware originale Thecus (una cosa immonda "finto Linux", senza ssh e altro), poi la Ubuntu 10.04.4 lo aveva letto quasi in automatico. Ma son passati troppi anni e potrei ricordare male.
 
Se spengo e tolgo la USB dove sta il sistema operativo, parte il firmware originale, ma non vorrei che quello vede i dischi e azzera tutto per dispetto... o magari risolve (seeeeeeeeeeee)
 
grazie davvero a tutti voi per la pazienza... 
faccio un corso di yoga accelerato per calmarmi, un paio di docce fredde e poi vedo di rompere le scatole anche alla mailing list che mi indicavi :-D
 
p.s.:
non avevo mai pensato di dover fare il backup del backup
 
 

 non avevo mai pensato di dover fare il backup del backup
 
Non devi, ma e` una strategia possibile.
 
Per esempio, conosco gente che fa il backup giornaliero,
di notte, su un dispositivo.
Poi settimanale da quel dispositivo ad un altro, poi
mensile dal secondo ad un terzo.
Con, persino, cura che i tre dispositivi siano in
luoghi diversi (tipo casa-ufficio-cloud, tanto per
fare un esempio).
 
E` una questione di quanto si voglia investire, in
funzione di quanta sicurezza si voglia avere.
 
Io ho un backup primario su NAS, in RAID-6 (questa
e` un'altra cosa, mai usare RAID-5 per NAS), e poi
un'altra copia su un (o piu`) disco esterno USB.
 
bye,
 
-- 
 
piergiorgio

 
 
Buongiorno,
posto soltanto per ringraziarvi ancora una volta.
Continuo a fare ricerche in giro, ma sto buonino e non faccio nulla finchè non arriveranno i dischi. Magari vi disturberò ancora oppure, meglio, posterò la eventuale soluzione [speranza mode on] :-)
 
un saluto.
Piero


si ma se in quel RAID5 c'era solo backup, che senso ha spendere soldi e tempo per cercare di recuperare dei dati che comunque esistono da un'altra parte?
Cambia l'HD rotto, formatta gli altri due, ricrea il RAID e rifai i backup...
 
Ciao Jack

 un'altra copia su un (o piu`) disco esterno USB.
 
Anche io uso lo stesso criterio.

 non avevo mai pensato di dover fare il backup del backup
 
Un backup mensile o semestrale su AWS Glacier costa pochissimo e ti può salvare la vita in casi come questi.

 salvare la vita in casi come questi.
 
Questo finché non infarti quando vuoi recuperare i dati ;)
 
Enrico

 per cercare di recuperare dei dati che comunque esistono da un'altra parte?
 
Perché, magari, alcuni dati li hai spostati solo nel backup[1]. Oppure perché
vuole capire se è possibile e come fare
 
Enrico
[1] sì, lo so, sarebbe stupido, però...

 vuole capire se è possibile e come fare
 
eh ok, allora non ordini N dischi nuovi per farci un dd e poi fare prove.
tiri su una macchina virtuale e ci fai tutte le prove che vuoi con dischi virtuali...
 
Ciao Jack

 [1] sì, lo so, sarebbe stupido, però...
 
Non e` detto.
 
Se ha backup dal 2011, allora sicuramente nel
nas ci sono file, magari inutili, che sono
presenti solo in quello storage.
 
bye,
 
-- 
 
piergiorgio

 presenti solo in quello storage.
 
ecco, è esattamente questo il punto.
 
Magari vi parrà strano, ma se avessi perso qualche foto mi sarebbe bruciato meno del fatto di aver perso la mia "collezione" di software...
su quei dischi c'erano, che so.. i primi siti fatti a fine anni 90, i primi DOS e Win, oppure robe tipo BEOS e HAIKU, le immagini dei miei primi PC che per nostalgia un tempo mettevo su virtual machine, e decine e decine di cose "potenzialmente inutili" ma che sapevo essere lì alla - anche remota - occorrenza, oltre che.. boh... i backup delle immagini dei raspberry e orangepi che ho e che magari ho backuppato un mese fa e poi non ho fatto in tempo a mettere sul mio piccolo disco USB... e chissà cos'altro...
 
anche io nel mio piccolo ho il mio modesto owncloud (usato anche sul NAS) remoto sul mio servericchio dreamhost, il mio - appunto piccolo, troppo piccolo - disco USB esterno su cui conservo le cose e vado di backup "a più non posso". ma mica tutti hanno la possibilità di avere altri 4TB pronti per "backuppare il backup"..
pensate che il mio pc principale è un coso di dieci anni che è meglio non dire com'è messo,  ma visto che in fondo la cosa più tosta che faccio è compilare sketch di Arduino può andar bene così...
 
non volevo certo avviare un flame eh... mi scuso se è parso questo.
 
e non dimenticate la mia premessa iniziale: non sono di certo un ninja raid o un ninja altro...
io sono soltanto un appassionato smanettone che ha fatto di google la sua università, e sono pure un tantino fuori corso ;-)
 
grazie ancora a tutti,
Piero


stessa cosa dopo che un paio d'anni fa il NAS sembrava essersi rotto, 
per fortuna non era così