Subject: Volume headers (was Re: Why my life is sucking. Part 2.)
To: None <current-users@netbsd.org>
From: Douglas Wade Needham <cinnion@infinet.com>
List: current-users
Date: 01/18/2001 21:26:10
Sender: current-users-owner@netbsd.org

Quoting Brett Lymn (blymn@baesystems.com.au):
> According to Space Case:
> >
> >One thing that SGI does with their XLV is to mark in the volume header
> >what the volume element is (volume, plex, element), so drives can be
> >moved around and the XLVs get properly reassembled.  Would something
> >like that be feasible here?
> >
> 
> This can be evil if you pull apart an array and put the disks into
> another one with that header intact where the vol/plex/element would
> match.

How about this twist...generate a header for the disk as a whole
having one or more values which is in some way attempted to be unique.
IBM's RS6K JFS implementation has volume IDs which IIRC are long
(approx. 16 bytes) numeric strings.  I administered dozens of RS6K
boxes for a couple of years and never saw a duplicate volume header,
even for disks initialized on the same host just seconds apart, or on
two separate hosts at almost exactly the same time (close enough I
could not tell the difference).  VxFS or the volume manager on HP/UX
may do the same thing, but I have not looked recently.

We could probably do something similiar by producing a 16-byte or so
hash based off of the hostname, time of volume initialization, device
name (e.g. sd0) and perhaps one or two other items (such as a volume
group name).  Odds of two volumes getting the same volume ID would
then be fairly small.

- Doug