Problem:
externe Maxtor Festplatte mit jfs Dateisystem über usb lässt
sich nicht reparieren.
Kaputte Blöcke:
180440887 - 180440903
240207272 - 240207496
96489424 - 96489760
270087840 - 270087856
114747896
231575952
105290432 - 105290464
uvm.
1)
alles lesen mit
dd if=/dev/sda of=/dev/null
error bei:
180440896
2)
badblock test ohne fehler bis:
3173632/158143828 (VIEL zu wenig weit!)
weiterer Test hat eigentlich keinen Sinn, wird aber
trotzdem gemacht.
Aufruf:
badblocks -b 512 -c 512 > badblocks.list
-b block-size
-c number of blocks
-v (Verbosity)
-s (Progress)
3) jfs_fsck fehler:
[root@localhost host]# jfs_fsck /dev/sda1
jfs_fsck version 1.1.6, 28-Apr-2004
processing started: 5/21/2004 10.1.1
Using default parameter: -p
The current device is: /dev/sda1
Block size in bytes: 4096
Filesystem size in blocks: 39535957
**Phase 0 - Replay Journal Log
**Phase 1 - Check Blocks, Files/Directories, and Directory Entries
Unrecoverable error reading M from /dev/sda1. CANNOT CONTINUE.
Fatal error (-10015,30) accessing the filesystem (1,92385722368,16384,0).
processing terminated: 5/21/2004 19:30:54 with return code: -10015 exit code: 8.
4) scsi fehler bei jfs_fsck
May 21 10:04:10 localhost kernel: Current sd08:01: sns = 70 0
May 21 10:04:10 localhost kernel: Raw sense data:0x70 0x00 0x00 0x00 0x00 0x00 0x00 0x00
May 21 10:04:10 localhost kernel: I/O error: dev 08:01, sector 180440896
5)
kaputte sektoren?
180440880 - 180440896
[root@localhost host]# badblocks -b 512 /dev/sda1 280441000 180440850
--- nicht immer kaputt (abhängig von startwert):
180440880 - 180440886
180440887 - 180440903
z.b.:
badblocks -b 512 /dev/sda1 180440887 180440880 # liefert keinen fehler
badblocks -b 512 /dev/sda1 180440888 180440880 # sagt sektoren von 880 - 887 kaputt
6)
fdisk
Platte /dev/sda: 163.9 GByte, 163927556096 Byte
255 Köpfe, 63 Sektoren/Spuren, 19929 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät boot. Anfang Ende Blöcke Id Dateisystemtyp
/dev/sda1 1 19688 158143828+ 83 Linux
7)
probieren: kaputten Bereich überschreiben
also:
180440880
erster fehler (dieses dd kann ohne Fehler durchgeführt werden!):
dd bs=512 count=1 if=/dev/sda1 conv=noerror skip=180440886
letzter fehler (dieses dd kann ohne Fehler durchgeführt werden!):
dd bs=512 count=1 if=/dev/sda1 conv=noerror skip=180440904
Alle Fehler: (liefert in den logs von 880-896)
dd bs=512 skip=180440887 count=17 if=/dev/sda1
Überschreiben der Fehler:
dd bs=512 skip=180440887 count=17 of=/dev/sda1 if=/dev/zero
8) diverse logs
May 23 18:03:20 localhost kernel: SCSI disk error : host 1 channel 0 id 0 lun 0 return code = 70000
May 23 18:03:20 localhost kernel: I/O error: dev 08:01, sector 96489424
May 23 18:03:20 localhost kernel: ERROR: (device sd(8,1)): diRead: i_ino != di_number
May 23 20:25:20 localhost kernel: I/O error: dev 08:01, sector 231575952
May 23 20:25:20 localhost kernel: Device 08:01 not ready.
May 23 20:25:20 localhost kernel: Device 08:01 not ready.
May 23 20:25:20 localhost kernel: I/O error: dev 08:01, sector 231575952
May 23 20:25:20 localhost kernel: ERROR: (device sd(8,1)): DT_GETPAGE: dtree page corrupt
May 23 22:24:32 localhost kernel: SCSI disk error : host 1 channel 0 id 0 lun 0 return code = 70000
May 23 22:24:32 localhost kernel: I/O error: dev 08:01, sector 201424648
May 23 22:24:32 localhost kernel: ERROR: (device sd(8,1)): DT_GETPAGE: dtree page corrupt
9) Garantie
Seriennummer: Y41SX5HE
Festplattentyp: EXTERNAL
TLA-Nummer: TY160P0140201
Status/Nachricht: Innerhalb der Garantie
Garantie-Enddatum (tt/mm/jjjj): 04/10/2005
--------------------
Anfragen:
**** jfs discussion ******
I have an external usb storage for my backup.
Now a hardware error accured and there are bad blocks between:
180440880 - 180440903
e.g.: dd bs=512 skip=180440887 count=17 if=/dev/sda1 dumps in my logs:
May 22 11:08:36 localhost kernel: Current sd08:01: sns = 70 0
May 22 11:08:36 localhost kernel: Raw sense data:0x70 0x00 0x00 0x00 0x00 0x00 0x00 0x00
May 22 11:08:36 localhost kernel: I/O error: dev 08:01, sector 180440896
and so on ...
but dd bs=512 skip=180440887 count=17 of=/dev/sda1 if=/dev/zero works without any error, so writing in the bad blocks works ok.
jfs_fsck (i use the latest version 1.1.6) is not able to repair the error:
**Phase 1 - Check Blocks, Files/Directories, and Directory Entries
Unrecoverable error reading M from /dev/sda1. CANNOT CONTINUE.
Fatal error (-10015,30) accessing the filesystem (1,92385722368,16384,0).
processing terminated: 5/21/2004 19:30:54 with return code: -10015 exit
code: 8.
How can i save the Data of the disk?
Must i buy a storage with the same size, transfer the data and run fsck again, or is there a more simple/cheaper way?
thanks in advance markus!
*********at.linux + linux.misc***********
Ich habe eine externe USB Festplatte für meine Backups. Dort werden jetzt bad blocks zwischen 180440880 - 180440903 gemeldet.
z.b.:
dd bs=512 skip=180440887 count=17 if=/dev/sda1
gibt aus:
May 22 11:08:36 localhost kernel: Current sd08:01: sns = 70 0
May 22 11:08:36 localhost kernel: Raw sense data:0x70 0x00 0x00 0x00 0x00 0x00 0x00 0x00
May 22 11:08:36 localhost kernel: I/O error: dev 08:01, sector 180440896
und so weiter ...
schreiben über diesen Bereich ist aber möglich.
jfs_fsck (version 1.1.6) kann das Dateisystem wegen den kaputten Blöcken
leider nicht reparieren:
**Phase 1 - Check Blocks, Files/Directories, and Directory Entries
Unrecoverable error reading M from /dev/sda1. CANNOT CONTINUE.
Fatal error (-10015,30) accessing the filesystem (1,92385722368,16384,0).
processing terminated: 5/21/2004 19:30:54 with return code: -10015 exit
code: 8.
Wie bekomme ich die Daten der Festplatte?
Muss ich mir eine Festplatte gleicher Größe kaufen, und die Daten überspielen um fsck fehlerfrei laufen lassen zu können?
mfg Markus
********************