Newsgroup: it.comp.os.linux.sys
Titolo: [Semi-OT] Recupero dati da raid 5

OT, ma quasi, dal momento che voglio utilizzare linux a tale scopo. :-)
Dunque riepiloghiamo. Si tratta di un raid 5 hardware su windows NT
realizzato con controller compaq pci smart 221, con tre dischi, su
un server abbandonato a se stesso, ed il backup dei dati affidato
unicamente agli utilizzatori, sulle stazioni di lavoro (!), che
ovviamente non facevano salvataggi dei propri dati da mesi...
Si e' sputtanato il disco con id 0, sostituito dallo spare (id 2).
Poi si e' mezzo sputtanato lo spare (e' moribondo), e a quel punto
ovviamente e' andato tutto in palla. Anche il disco id 1 ha qualche
problema. Il disco con id 0 e' proprio bloccato, e la sua presenza
manda in palla il controller. Neturalmente a nulla e' valso il
tentativo di rimpiazzare il disco 0 con uno nuovo (seppure diverso
ma di capacita' simile: ammesso che possa cosi' funzionare...), e
ricostruire l'array con l'apposita utility.
Cosi', ho pensato di piazzare una macchina linux con un normale
controller adaptec 2940UW, e creare le immagini dei dischi 1 e 2
con:
# dd input=/dev/sda of=arraydisk1 bs=512 conv=noerror
# dd input=/dev/sdb of=arraydisk2 bs=512 conv=noerror
Un sacco di errori di I/O, ma sto ancora aspettando, visto che
va avanti... magari avremo in quei casi blocchi tutti a zero (in
caso di errore davvero irrecuperabile), ma voglio comunque provare.
Il tentativo e' disperato, lo so, ma supponendo che lo spare (disco 2)
abbia totalmente rimpiazzato il disco 0, e supponendo di sapere cosa
faceva il software (o meglio, firmware) del controller, ho modo di
ricostruire in una immagine il "disco logico" dalle immagini dei due
dischi fisici? Poi mi arrangero' con i loop device per vedere di cavare
qualcosa...
Entrambi hanno una partizioncina di 39mb con l'id relativo alle
partizioni dei controller raid smart2 compaq. Il resto (lo spazio non
partizionato) suppongo saranno i cilindri che "combinati" in qualche
modo fra i due dischi costituiscono il disco logico.
Grazie per ogni suggerimento.
bye G.L.
-- 
« E' assolutamente evidente che l'arte del cinema
  si ispira alla vita, mentre la vita si ispira alla TV »
(Woody Allen)

allora , dando x scontato che hai 1 probabilita' su un milione di riuscire a
recuperare quei dati , se mi ricordo bene al 99% l' algoritmo usato su 3
dischi è un semplice xor bit a bit.
quindi:
DISCO1-bit1     primo bit logico
DISCO2-bit1     secondo bit logico
DISCO3-bit1     xor tra primo bit logico e secondo bit logico
DISCO1-bit2     terzo bit logico
DISCO2-bit2     quarto bit logico
DISCO3-bit2     xor tra secondo bit logico e quarto bit logico
e cosi' via.
alcuni controller viaggiano internamente byte a byte , ma questo non
dovrebbe cambiare la geometria dei dati.
buona fortuna....
-- 
Nelle riunioni di gabinetto i ministri fanno gli stronzi?
-- Anonimo

 dovrebbe cambiare la geometria dei dati.
E comunque, in teoria mi basterebbe il secondo e il terzo disco, no?


> E comunque, in teoria mi basterebbe il secondo e il terzo disco, no?
si' , ma ti devi fare un prog che calcoli l' xor e ricomponga il disco , poi
il problema è che ti ritrovi una foto del disco comprese partizioni e
quindi devi tagliare i pezzi che ti interessano e provare a montarli come
loop.
insomma , un bel lavoraccio......
-- 
"Kirk a Enterprise: datemi un telecomando per il teletrasporto, che mi
arrangio da solo..."

 insomma , un bel lavoraccio......
Fosse cosi' semplice... Per non ricordo quale ragione, mi pare migliorare le
prestazioni, i controller possono decidere (credo sia una funzione cablata nel
firmware) di scrivere i settori con dati e parita' intercalati tra i dischi,
quindi anziche':
D1 D2 P12
D3 D4 P34
D5 D6 P56
si avra':
D1 D2 P12
D3 P34 D4
P56 D5 D6
Non basta pertanto recuperare le immagini dei due dischi rimanenti, anche
posto che i si riesca, e ricavarne il terzo disco: bisogna anche capire quale
settore e' di dati e quale di parita' (dato che i settori di parita' vanno
scartati nella ricostruzione dell'immagine), e in che ordine vanno organizzati
i settori per riavere l'immagine iniziale (A1 A2 A3 B1 B2 B3 o A1 B1 A2 B2 A3
B3?).
Ciaotutti,
*
--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

 insomma , un bel lavoraccio......
Che mi posso anche risparmiare: Non son riuscito a fare neanche
l'immagine dei dischi, sono troppo danneggiati. Adesso, sono
semplicemente cacchi di chi si deve ricaricare i dati da luglio
in poi. Dici che da oggi impareranno l'importanza di backup
ragionevolmente frequenti? Io, dico proprio di si'...   ;-)
bye G.L.

 Grazie per ogni suggerimento.
Ok, grazie a tutti per i suggerimenti, ma niente di fatto, dato
che, alla luce delle condizioni da cui si parte, e' un'operazione
di fatto realisticamente quasi impossibile. E' anche non conveniente
rivolgersi a ditte specializzate, dato che si tratta di reinserire
tre/quattro mesi di lavoro fatti da un piccolo comune: e cio', li
impegnera', come extralavoro, si e no al massimo due/tre settimane.


 A1 B1 A2 B2 A3 B3?).
si' , hai ragione tu' , mi ero scordato che il 5 spalma la parita' su tutti
i dischi..... cmq dovrebbe essere sequenziale il giro che fa'.
-- 
Leggi di Lackland:
        (1) Mai essere il primo.
        (2) Mai essere l'ultimo.
        (3) Mai offrirsi volontario.

 ragionevolmente frequenti? Io, dico proprio di si'...   ;-)
Ne sei proprio convinto?
Luca

 Ne sei proprio convinto?
Ragionevolmente convinto: scellerati si', ma non masochisti.  ;-)
bye G.L.

 manda in palla il controller.
Scusa la mia ignoranza ma mi sfuggono due cose:
1) se parli di disco di spare sicuramente intendi un raid-5 con 4 
dischi. Se e' cosi' morendo un disco e' intervenuto lo spare, ed il 
sistema ha switchato ad un raid-5 standard senza spare. Poi morendo 
anche un ulteriore disco il sistema ha usato la fault-tolerance del 
raid-5 ed ha continuato a funzionare lo stesso, anche se declassato, 
sperando che nel frattempo lo spare avesse terminato la ricostruzione 
dell'array. Ora, perche' hai avuto dei problemi? In teoria il sistema 
con minimo due dischi deve funzionare ugualmente, sebbene in emergenza.
2) hai provato a bootare da un live-cd Linux con supporto per il 
controller raid compaq (cciss.o?) per vedere se riesci a montare almeno 
in lettura la partizione dati NT e salvarla via rete/nastro/cd da 
qualche parte?
Sto ragionando a ruota libera, perdona eventuali mie inesattezze.
Bye
Bart

 Scusa la mia ignoranza ma mi sfuggono due cose:
[SNIP]
Ok, l'ignoranza e' senz'altro mia: niente spare (e adesso ho anche la
risposta al perche' un raid 5 su 5 dischi mi desse una capacita' del
disco logico uguale alla somma di "soli" 3 dischi...
