Am 20-Nov-2001 Falk Sauer schrieb:
Hi David
On Tue, Nov 20, 2001 at 01:00:15AM +0100, David Haller wrote:
On Mon, 19 Nov 2001, Ratti wrote: [...] d.h. egal von was (also auch fdisk/mkfs.* oder scandisk) defekte Sektoren gemeldet werden, _wenn_ defekte Sektoren gemeldet werden, dann wurde die Reserve schon aufgebraucht.
Ack
Dann verstehe ich eins nicht: Wenn ein Block kaputt geht, aber noch ausgemappt werden kann - dann müssten die Daten ja futsch sein (Block kaputt), bei Kontrolle aber kein Fehler zu finden sein (ist ja ausgemappt).
Nicht ganz. Der Defekt ist in aller Regel nicht sofort komplett, d.h. die Firmware kann i.d.R. die Daten noch auslesen (durch mehrfache Leseversuche, die dann "gemittelt" werden und das wahrscheinlichste Ergebnis wird dann verwendet) und auf einen der Reservesektoren kopieren.
Na das scheint mir ja eine recht wilde Technik zu sein...;-) Wenn dieser Sektor z.B. einen Teil einer Textdatei enthält, dann mag man das ja noch verkraften können, aber wenn da eine Binärdatei (Program) liegt, dann kann das eigentlich nur in die Hose gehen mit diesen Schätzwerten.
Die Defekte sind mehr oder weniger schleichend, und je nachdem welche Toleranz in der Firmware eingestellt wurde, wird frueher oder spaeter ein Sektor als "defekt" betrachtet (und in die Reserve verlagert). Von all dem bekommt _keine_ Software ausser der Firmware der HD etwas mit -- auch nicht das BIOS oder ein mkfs/badblocks -- diese bekommen _erst_ etwas mit, wenn die Reserve aufgebraucht ist.
Egal ob schleichend oder nicht, es gibt ja eigentlich nur zwei Möglichkeiten. Entweder er macht das, was Falk hier schreibt:
hier wird auch teilweise einfach beim schreiben mit dem writecache gegengecheckt, ausserdem gibt es prüfsummen über die internen Sektoren deren Grösse genau gar nichts mit dem zu tun hat was die Platte nach aussen hin zeigt.
...was ja auch einleuchtend ist. [...]
Doch -- allerdings nicht "von jetzt auf nachher", sondern schleichend, und somit kann die Firmware die Daten noch in einen Reservesektor kopieren.
vor allem 'merken' es viele Platten erst beim schreiben und das ist das eigentliche Problem. [...]
Wieso? Wenn sie was schreiben wollen und es nicht geht, ziehen sie einen Reserversektor heran und schreiben die Daten aus dem Cache eben dort hin. Ich habe hinterher noch anständige daten. Was passiert aber, wenn es die Platte erst beim lesen merkt? Wenn die Daten schrottig sind, kann ich auch nur noch Schrott wegkopieren. Das ist dann je nach Art der Daten nur mehr oder weniger sinnvoll.
die lange Zahlenliste sind US-Patente. Keine bad blocks. ;-)
Haette mich auch gewundert ;)
auf den guten alten SCSI Platten war das so, allerdings hab ich das noch bei keiner IDE/ATA Platte gesehen und ich hab schon viele gesehen - in letzter Zeit leider zu viele, viel zu oft. :-/
Stimmt, die kenne ich auch noch. Allerdings habe ich das schon seit Jahren nicht mehr gesehen. -- mfg Peter Küchler, Planungsverband Frankfurt Region Rhein Main