Ho avuto un'esperienza abbastanza buona con SpinRite, ma penso che sia altamente sopravvalutato. In effetti, potrebbe essere troppo intelligente per il suo bene. Esistono soluzioni gratuite che funzionano altrettanto bene (in realtà, quelle gratuite potrebbero funzionare anche meglio).
Avevamo un'unità NTFS da 200 GB che improvvisamente si guastò catastroficamente. Questa doveva essere l'unità "condivisa" su cui le persone scaricavano temporaneamente le cose, ma alla fine si trasformò in un enorme repository di dati che aveva backup vari, così come un mucchio di file che nessuno si preoccupava di eseguire il backup da nessuna parte. Quando il disco è morto, non siamo riusciti a montarlo, non importa quante volte abbiamo eseguito chkdsk o altri strumenti.
Alla fine, abbiamo acquistato ed eseguito SpinRite ... che ha continuato a funzionare per più di 1 mese. Ogni volta che colpiva un cluster danneggiato, impiegava ore a cercare di recuperare i dati da esso. Ancora una volta, ha funzionato ininterrottamente per più di un mese nel tentativo di recuperare i dati da un'unità difettosa da 200 GB. (A difesa di SpinRite, può scansionare un'unità in poche ore se non ci sono difetti fisici.) Alla fine SpinRite è stato in grado di recuperare tutti i nostri file, anche se molti di quelli più grandi si sono comunque rivelati corrotti. SpinRite ha anche reso nuovamente montabile l'unità. Quindi direi sicuramente che ha fatto qualcosa.
Tuttavia, nonostante il fatto che abbia funzionato, non so se sia stato d'aiuto se non l'avvio di un CD Linux e l'esecuzione di dd per copiare l'intero disco in un file. C'è qualcosa da dire per non aver eseguito un disco morente per un mese intero, poiché sta morendo! I difetti fisici sembrano avere l'abitudine di diffondersi. Non mi sorprenderebbe se il disco si degradasse ulteriormente mentre SpinRite era in esecuzione. Personalmente, preferirei rimuovere i dati dal disco il più rapidamente possibile, creare diverse immagini di backup e provare a riparare i file offline.
Recentemente abbiamo dovuto recuperare altri dati e dd ha fatto un ottimo lavoro. Puoi dirlo per copiare tutti i dati validi dall'unità, quindi puoi eseguirlo un paio di volte in più per andare avanti e provare di più (ad esempio, utilizzare blocchi di dimensioni inferiori) cercando di estrarre i dati dalle aree danneggiate.
Se hai circa un'ora da perdere, direi che vale la pena dedicare del tempo a imparare a usare dd invece di acquistare SpinRite:
http://www.debianadmin.com/recover-data-from-a-dead -Hard-drive-tramite-dd.html
Oppure segui il percorso leggermente più semplice e scarica dd_rescue:
http://www.garloff.de/kurt/linux/ddrescue
Se vuoi ancora eseguire SpinRite, ti consiglio vivamente di farlo DOPO aver copiato tutti i dati esistenti dall'unità, nel caso in cui l'esecuzione dell'unità per un periodo di tempo più lungo gli permetta di peggiorare ulteriormente.
Ogni volta che si ottiene una nuova unità, è necessario avviare un CD Linux ed eseguire badblock per verificarne la presenza di difetti. È inoltre necessario controllare periodicamente il deterioramento delle unità. Abbiamo avuto almeno 2 unità nuove di zecca con difetti e altre 3 o 4 muoiono entro un paio di mesi (anche se abbiamo fatto test approfonditi prima di metterli in servizio).
Si noti che è necessario eseguire badblock come root o aggiungere il prefisso "sudo" se si sta eseguendo l'avvio da un CD live di Ubuntu.
Unità nuovissime (attenzione: distrugge tutti i dati!):
badblocks -wvs /dev/sd#
o
badblocks -wvs /dev/hd#
Unità in uso (test di sola lettura):
badblocks -vs /dev/sd#
o
badblocks -vs /dev/hd#
Dove # è il numero dell'unità in Linux. Le unità IDE di solito sono chiamate / dev / hd # e le unità SCSI (e spesso SATA) sono / dev / sd #.
Maggiori informazioni sui badblock qui: http://en.wikipedia.org/wiki/Badblocks
A proposito, anche se dd e badblock sono programmi Linux, puoi usarli su unità NTFS e puoi anche montare partizioni NTFS in Linux, indipendentemente dal fatto che tu stia usando partizioni MBR, dischi dinamici o dischi GPT.
La documentazione di Steve discute di molti problemi ipotetici che teoricamente SpinRite potrebbe aiutare. Ad esempio: i dati che svaniscono nel tempo e devono essere "aggiornati" leggendo ogni blocco e riscrivendoli di nuovo sul disco, o l'idea che riposizionare ripetutamente la testina di lettura su entrambi i lati di un blocco alla fine ti permetterà di dividere statisticamente i dati originali memorizzati in quel blocco. Logicamente, queste cose hanno un senso, ma penso che siano solo soluzioni a problemi accademici che potrebbero non sorgere nel mondo reale. (Almeno, con i dischi rigidi - forse i dischi Zip e simili erano più sensibili allo sbiadimento dei dati.) Se Steve citasse articoli sugli argomenti o se queste tecniche si fossero dimostrate sperimentalmente efficaci, quindi mi aspetto che ci siano molti cloni SpinRite open-source o disponibili in commercio. Sarebbe ben all'interno delle capacità di un programmatore di script medio di scrivere uno script shell Python, Perl o UNIX che includa tutte le funzionalità documentate di SpinRite.