Hallo,
ich habe heute beim Auslesen einer Daten-CD mit
% dd if=/dev/hdb of=/home/matthias/debian1.img
einige beunruhigende Fehlermeldungen bekommen.
/* Schnipp */ ATAPI device hdb: Error: Illegal Request -- (Sense key=0x05) Logical block address out of range -- (asc=0x21, ascq=0x00) hdb: command error: status=0x51 { DriveReady SeekComplete Error } hdb: command error: error=0x54 end_request: I/O error, dev 03:40 (hdb), sector 1293332 /* Schnapp */
In dieser Form erscheinen ein paar Meldungen bis das ganze dann mit einem
dd: /dev/hdb: input/output error
abgebrochen wird.
Vor ein paar Wochen glaube ich irgendwo gelesen zu haben, dass im IDE- Treiber von Linux ein Fehler ist, der seit Kernel 2.2.14 gefixt sein sollte. Nun habe ich das mit einigen Kernels der 2.0'er Serie sowie auch mit dem
aktuellen 2.2.14 probiert - überall das gleiche Ergebnis. Einen Hardwaredefekt schließe ich aus, da ich auf 2 Rechnern mit 3 verschiedenen CD-ROM-Laufwerken getestet habe. Der Fehler trat bei mehreren CD's/CD-R's auf. Merkwürdig ist außerdem, dass das selbe CD-ROM-Laufwerk mit SCSI-Emulation (dann /dev/scd0) bei dd keine Probleme macht.
Meine Fragen sind nun, ob außer mir noch jemand dieses Problem hat. Liege ich richtig mit der Annahme, dass der beschriebene IDE-Bug in Kernel 2.2.14 beseitigt ist - oder muss ich dafür die Sourcen patchen ? Gibt es außer www.kernelnotes.org noch weitere Seiten, auf denen Probleme berichtet werden ?
mfG Matthias
Danke erst einmal für Deinen Tip, Reinhard. Standardmäßig nimmt dd ja 512byte als Sektorgröße an - insofern war ich schon ganz optimistisch mit bs=2048. Aber leider kommen auch damit wieder einige Fehlermeldungen. Was ist noch beobachtet habe: Wenn ich ein und die selbe CD ein- mal mit einem normalen IDE-Treiber auslese und einmal mit der SCSI-Emulation, dann stimmen die Image-Dateien zum Schluss überein, obwohl bei Verwendung des IDE-Treibers üppige Fehler angezeigt werden.
Matthias
On Sun, 12 Mar 2000, did Matthias Petermann mean:
Danke erst einmal für Deinen Tip, Reinhard. Standardmäßig nimmt dd ja 512byte als Sektorgröße an - insofern war ich schon ganz optimistisch mit bs=2048. Aber leider kommen auch damit wieder einige Fehlermeldungen. Was ist noch beobachtet habe: Wenn ich ein und die selbe CD ein- mal mit einem normalen IDE-Treiber auslese und einmal mit der SCSI-Emulation, dann stimmen die Image-Dateien zum Schluss überein, obwohl bei Verwendung des IDE-Treibers üppige Fehler angezeigt werden.
Solche Fehler sind beim CD-Lesen normal und eigentlich auch keine Fehler, sondern nur Warnungen. Es bedeutet lediglich, dass der Sektor nochmal gelesen werden muss und die Fehlerkorrektur des Laufwerks etwas ins Schwitzen geraet (bei Kratzern oder Staub auf der CD).
Wo in etwa treten diese Fehler eigentlich auf?
*mittendrin. -> Theorie: der SCSI-Emulator bearbeitet die Warnungen selbst statt sie weiterzugeben
*am Ende. -> Feststellung: CD's haben ein etwas "seltsames" Format, ein Teil davon ist der Lead-Out, der CD-Treiber gibt wahrscheinlich die Groesse inklusive Lead-Out zurueck, kann den aber nicht lesen (ist ja auch nicht zum Lesen gedacht) -> Theorie: auch hier wird die SCSI-Emulation den Fehler verbergen oder die Groesse ohne Lead-Out zurueckgeben
Tipp: schau dazu mal auf Deine syslog-Console (meist irgendwo zwischen Alt-F8 und -F12, bei SuSE Alt-F10), vielleicht sind die Kernel-Hinweise etwas aufschlussreicher.
Konrad
lug-dd@mailman.schlittermann.de