Come dire a rsync di saltare i file su un blocco del disco rigido danneggiato, invece di rimanere bloccato nel tentativo di leggerlo


13

Sto cercando di recuperare file da un disco che presenta errori hardware.

Il disco è stato riparato dall'utilità del disco, ma mi ha detto che il disco è danneggiato, quindi è necessario eseguire il backup di tutto prima che si verifichi un errore.

Quindi ho provato a copiare i file tramite finder, ma si blocca. Ho provato altre utility e si sono bloccati nel tentativo di copiare i file, quando la testa ha colpito il blocco danneggiato.

Quindi ho provato con rsync e sembra funzionare; ma ci vuole un'eternità quando colpisco un brutto blocco.

Quindi mi chiedevo, se c'è un modo per dire a Rsync di non preoccuparsi nemmeno di un file, se impiega troppo tempo? Posso specificare il numero di tentativi con ciascun file o quanto tempo deve provare per ogni file?

Non sono sicuro di quanto durerà onestamente questa unità, quindi desidero rimuovere tutti i dati al più presto, mentre posso ancora montarlo e vedere i dati su di esso nel finder.

Questo è quello che sto usando come comando; si prega di avvisare se esiste un modo per ridurre il tentativo su un file, quindi posso avere rsync per provare a leggere i blocchi danneggiati, ma evitare di rimanere bloccato su un settore specifico per troppo tempo.

rsync -arv -e--ignore-errors --partial-dir=/Volumes/backup/partial /Volumes/work /Volumes/backup

Grazie in anticipo.


3
Se l'unità ha settori danneggiati, è meglio provare a immaginarla con qualcosa del genere dd_rescue, ha funzionalità avanzate per far fronte a settori danneggiati.
jmreicha,

Penso che @jmreicha abbia l'idea giusta, ma in futuro, se hai domande tecniche rsync, i guru amichevoli sono disponibili nell'elenco rsync: lists.samba.org/mailman/listinfo/rsync
Joe

Risposte:


10

Risposta breve: rsyncnon è lo strumento giusto da utilizzare in questo caso: il suo utilizzo può essere addirittura dannoso.
Usa ddrescueinvece (meglio di dd_rescue). È in grado di fare ciò che stai chiedendo.


Se il disco è fisicamente danneggiato, c'è la possibilità di mattone con qualsiasi tentativo di ripararlo.

Non è solo una domanda sull'uso del tuo tempo , quando rsyncsembra appendere per sempre avvicinandosi a un settore danneggiato. Il problema è che con operazioni ripetute può verificarsi un guasto irreparabile e quindi non sarà più possibile salvare i dati senza costose sostituzioni di parti (sempre se sarà ancora possibile e non si sarà bloccato il disco fisso ).

In questo caso la procedura più sicura che ho trovato è

  1. Per creare un'immagine non elaborata su un altro disco non rotto.
  2. Per creare una copia di quell'immagine.
  3. Per lavorare sulla copia di fissare il file system e di salvare i file .

Perché la copia? Perché se fallisce qualcosa nella fase di riparazione del filesystem puoi sempre ricominciare senza la necessità di toccare nuovamente l' HDD danneggiato originale .

Ti suggerisco di usare ddrescue, per fare l'immagine del disco grezzo, difetti inclusi, perché funziona bene anche in caso di errori di lettura.


Come farlo ddrescue

È possibile utilizzare ddrescueesattamente come si desidera utilizzare rsync, ignorando i settori danneggiati senza riprovare o dividerli, copiando il maggior numero possibile di dati.
Questo comando è qui sotto (invece di /dev/hda1mettere il tuo dispositivo):

ddrescue --no-split /dev/hda1 imagefile logfile

Dopo aver eseguito questo primo passaggio (il più veloce ), puoi provare a perfezionarlo provando ad accedere per 3 volte in caso di errore.

ddrescue --direct --max-retries=3 /dev/hda1 imagefile logfile 

Puoi continuare a perfezionare l'immagine ripetendo le ddrescueinvocazioni di comando con altre opzioni, provando ogni volta a estrarre più dati (vedi i riferimenti). Al termine puoi creare la copia (se hai tutto lo spazio necessario) e quindi riparare il filesystem .

Si noti che l'immagine non elaborata sarà grande quanto l' HDD originale .
Puoi trovare su Internet, su questo e su altri siti di StackExchange molte domande e risposte su come salvare i dati con ddrescueo altri strumenti.

Riferimenti:


infatti dd_rescue è la strada da percorrere. L'ho avuto nella mia risposta originale, 2 anni fa; ma per alcuni motivi qualcuno ha deciso che non potevo rispondere alla mia domanda :) Grazie per la risposta e dettagli fantastici
rataplan

@newbiez: Invece ho avuto un serio problema al disco con il mio HDD principale quasi in muratura ... così ho incontrato ddrescuee i suoi amici :-) Sulla tua risposta solo una parola: strano ... pubblicalo di nuovo e se qualcuno proverà a chiudere di nuovo Voterò di sì per riaprire (non ho mai usato quel nuovo potere : D)
Hastur,

1
L'opzione --no-split è stata rimossa nelle versioni più recenti di ddrescue. Usa invece --no-scrape. Vedere lists.gnu.org/archive/html/bug-ddrescue/2015-09/msg00001.html
Grmpfhmbl
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.