[OpenAFS] Odd vfsck behavior under Solaris 9

Jeffrey Hutzelman jhutz@cmu.edu
Thu, 15 Jul 2004 19:16:00 -0400

On Wednesday, July 14, 2004 18:03:51 -0400 Derrick J Brashear 
<shadow@dementia.org> wrote:

> On Wed, 14 Jul 2004, Dale Ghent wrote:
>> On Jul 14, 2004, at 3:02 PM, Derrick Brashear wrote:
>>> Why do you need to use fsck on a raw device to run a fileserver on
>>> Solaris  9?
>>> The only fileserver caveat I know is "don't use it on a logging ufs
>>> partition". I don't have any Solaris 9 machines, period, but there's no
>>> other reason I know it shouldn't work.
>> Because on Solaris, the case has always been that fsck(1M) takes the raw
>> (aka  "special") device as its argument (on Solaris, these are the
>> /dev/rdsk/*  devices rather than the /dev/dsk/* character device
>> counterparts.)
> That's want, not need.

You know, you could stop questioning people's needs and actually try to 
help.  Just once in a while.

We've run fileservers on Solaris 9 for over a year now, and they work just 
fine.  However, we've never used the alternate-filesystem-type trick; we 
mark vice partitions not to be automatically fsck'd or mounted, then have a 
script which fscks them in parallel, mounts the ones that succeed, sends 
mail about the ones that fail, and then execs the bosserver (that way, a 
broken disk or filesystem doesn't keep the whole server from coming up 
until someone can come in and fix it).  As it turns out, our script doesn't 
do the block-to-raw transformation for Solaris device names, so we've never 
observed the fsck problem that Dale and Tim are seeing.

However, I am unable to reproduce the problem on one of my fileservers; 
vfsck works equally well using the raw or block device.

Perhaps later I will try a bit harder to reproduce the environment 
described by Tim.  For one thing, this machine does not have the 112233 
patch, which may have an effect on access to the raw device.  It would also 
be interesting to know if Tim's and/or Dale's machines have the sd driver 
patch or any patch affecting newfs or mkfs.

In the meantime, it might be useful to run vfsck under truss.

-- Jeff