Strona 1 z 1

Błędy odczytu z dysku przy tworzeniu kopii zapasowej

: 25 lutego 2012, 22:44
autor: blink
Ostatnio uległ uszkodzeniu dysk twardy i chciałem zrobić jego kopię zapasową programami dd, ddrescue. Niestety udaje mi się przeczytać pierwsze 150GB z całego dysku 750GB, następnie pojawiają się błędy we/wy i jądro Linuksa odłącza dysk. Jeśli ominę kolejne bloki na dysku znów udaje mi się przeczytać kolejne bloki danych do momentu pojawienia się błędów we/wy i odłączenia dysku. Na odłączenie dysku pomaga dopiero restart maszyny.

Kod: Zaznacz cały

kernel : [ 3903.620692] sd 2:0:1:0: [sdb] Unhandled sense code
 kernel: [ 3903.620696] sd 2:0:1:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
 kernel: [ 3903.620703] sd 2:0:1:0: [sdb] Sense Key : Medium Error [current] [descriptor]
 kernel: [ 3903.620711] Descriptor sense data with sense descriptors (in hex):
 kernel: [ 3903.620715]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
 kernel: [ 3903.620734]         00 0c d8 3e 
 kernel: [ 3903.620742] sd 2:0:1:0: [sdb] Add. Sense: Unrecovered read error - auto reallocate failed
 kernel: [ 3903.620751] sd 2:0:1:0: [sdb] CDB: Read(10): 28 00 00 0c d8 38 00 00 08 00
 kernel: [ 3903.620774] __ratelimit: 12 callbacks suppressed
 kernel: [ 3903.620797] ata3: EH complete
 kernel: [ 4389.268194] ata3.00: configured for UDMA/133
 kernel: [ 4389.284675] ata3.01: configured for UDMA/133
 kernel: [ 4389.284688] ata3: EH complete
Moje pytanie brzmi, czy można wymusić w jądrze nie odłączania urządzenia podczas błędów we/wy, czy to może elektronika dysku sama blokuje dalszą komunikację?

Z góry dziękuję za odpowiedzi.

: 25 lutego 2012, 22:59
autor: Martinex
Podłącz dysk inną taśma do innego złącza, może pomoże. Sprawdź też SMART.

: 25 lutego 2012, 23:44
autor: blink
Dysk sprawdzałem na dwóch kontrolerach, na tym komputerze, na którym dysk działał pierwotnie oraz na drugim, na którym próbuje zrobić naprawę dysku. Tasiemki również wymieniane na nowe.
SMART twierdzi że dysk:

Kod: Zaznacz cały

PASSED
Jedyne do czego można się przyczepić to:

Kod: Zaznacz cały

LBA_of_first_error
i tu wartość pierwszego uszkodzonego bloku.

: 21 kwietnia 2012, 20:55
autor: fnmirk
&quot pisze:Jedyne do czego można się przyczepić to:

Kod: Zaznacz cały

LBA_of_first_error
http://smartmontools.sourceforge.net/badblockhowto.html