Bernd Walter wrote in list.de-bsd-questions:
> Wenn es ein Plattenfehler ist, dann mag der block ausgetauscht werden.
> Block 16 duerfte wenn ich das noch richtig im Kopf habe auch ersetzbar sein.
> Nur gibt der Kernel bei Hardwaredefekten auch eine Meldung vom Devicetreiber
> aus - die kann man nur sehr schwer uebersehen.
Stimmt.
> Deshalb hatte ich eher einen Fehler im Label vermutet.
Die relevanten Zeilen aus /usr/src/sbin/fsck/utilities.c, die
die zu der Meldung von fsck geführt haben:
if (lseek(fd, offset, 0) < 0)
rwerror("SEEK", blk);
else if (read(fd, buf, (int)size) == size)
return (0);
rwerror("READ", blk);
Leider ist die Fehlerbehandlung hier verbesserungsbedüftig,
z.B. wäre es extrem hilfreich, den Rückgabewert des read() und
gegebenenfalls den Inhalt von errno auszugeben (sollte man
vielleicht mal send-pr'en).
Einen Lesefehler auf der Platte fand ich am naheliegendsten
als Ursache dafür, daß das read() hier schiefgeht, aber es kann
natürlich auch etwas anderes sein.
> Vieleicht bin ich auch zu sehr darauf versiert, das man FreeBSD nur einmal
> pro Rechner installiert...
Kommt drauf an, was man als "installieren" bezeichnet. Für
mich ist auch jedes "make installworld" eine Installation.
Ob die neuen Binaries von einer CD-ROM, vom Netz oder aus
/usr/obj kommen, ist meiner Meinung nach nicht so entscheidend.
In diesem Sinne installiere ich FreeBSD durchaus mehrmals pro
Rechner, und ich finde das auch OK. ;-)
Gruß
Oliver
-- Oliver Fromme, Leibnizstr. 18/61, 38678 Clausthal, Germany (Info: finger userinfo:olli(at)dorifer.heim3.tu-clausthal.de) "In jedem Stück Kohle wartet ein Diamant auf seine Geburt" (Terry Pratchett) To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Sun 27 Jun 1999 - 23:46:05 CEST