Re: Incorrect super block

From: Oliver Fromme <olli(at)dorifer.heim3.tu-clausthal.de>
Date: Mon, 28 Jun 1999 02:21:42 +0200 (CEST)

Bernd Walter wrote in list.de-bsd-questions:
> On Sun, Jun 27, 1999 at 11:45:48PM +0200, Oliver Fromme wrote:
> >
> > if (lseek(fd, offset, 0) < 0)
> > rwerror("SEEK", blk);
> > else if (read(fd, buf, (int)size) == size)
> > return (0);
> > rwerror("READ", blk);
> [...]
> fsck ist scheinbar nicht immer in der Lage beim oeffnen vom device zu erkennen,
> das dieses nicht configured ist.

Sehr seltsam. Daß dem lseek() nichts passiert, das kann ich
noch nachvollziehen, aber der open() sollte doch IMO in so
einem Fall schiefgehen.

(Wenn der Device-Node nicht existiert, sollte das open() in
jedem Fall schiefgehen, und zwar mit errno == ENOENT.)

> Das ganze geht sogar soweit, das fsck -p durchaus von Softupdates ausgeht:
> /dev/rccd0c: CANNOT READ: BLK 16
> /dev/rccd0c: UNEXPECTED SOFT UPDATE INCONSISTENCY; RUN fsck MANUALLY.

Hmm. Ich sehe da genaugenommen keinen Widerspruch.
Wenn er den Superblock nicht gelesen bekommt, kann er ja nicht
wissen, ob das FS unter Soft-updates lief oder nicht.
Er sollte dann aber sofort abbrechen, denn alles weitere hat
ja dann keinen Sinn.

(Man kann dann ja eine der Kopien des Superblocks verwenden...
ist da eigentlich auch das Soft-updates-Flag drin gespeichert?
Das tunefs -n enable geht eigentlich verdammt schnell, dafür
daß es sämtliche Kopien updaten müßte, selbst auf großen Par-
titionen. Ich nehme daher an, daß es nur im ersten Superblock
gespeichert ist, was eigentlich relativ dumm ist, denn wenn der
kaputt ist, ist das Flag futsch...)

> > 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.
> Es ist meiner Ansicht nach mit Sicherheit was anderes.

Ich stimme Dir inzwischen zu.

> > 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. ;-)
> Zumindestens geht das ohne Floppies... :)

Das letzte OS, das ich von Floppies installiert habe, war OS/2
2.1 (so ca. 20 Floppies waren das). Den Bootmanager davon be-
nutze ich heute noch, der ist einfach der beste. :)

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 message
Received on Mon 28 Jun 1999 - 02:21:56 CEST

search this site