[OpenAFS] [possibly dumb question] volume must occupy entire OS-level filesystem?

Jeffrey Hutzelman jhutz@cmu.edu
Wed, 14 Dec 2005 19:35:04 -0500

On Saturday, December 03, 2005 05:51:57 PM -0800 Adam Megacz 
<megacz@cs.berkeley.edu> wrote:

> Please forgive me if I misunderstand this; I come at the AFS thing
> more from the protocol/programming angle than the IT professional /
> storage administrator angle.  Specifically, I know much less about the
> actual OpenAFS code than the protocol it implements.
> It seems that OpenAFS insists that an AFS volume be served from the
> mount point of a physical OS-level partition.  In other words, if I
> mount some filesystem on /foo, I can't serve AFS files out of
> /foo/bar/vicepa -- AFS wants to own the entire partition.
> Is this correct?  If so, what is the reason for this restriction?  If
> the reason is performance, is that the *only* reason (ie could this
> restriction be lifted if performance were not a concern)?

There are two issues...

- Fileserver partitions aren't configured; the fileserver uses whatever
  /vicep* it can find.  So, it has to have a name there or the fileserver
  won't find it.  As others have pointed out, a symlink will work fine.

- With the inode-based fileserver, it is safe to put non-AFS files in
  a vice partition, but having multiple /vicep* on the same physical
  filesystem would be bad, and could well lead to filesystem corruption
  (not so much during operation as during a salvage).  So, it just won't
  let you do that.  With a namei server, there is no such concern, and
  you can create /vicepx/AlwaysAttach and the partition will be attached
  even though it is not a filesystem root.

-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
   Sr. Research Systems Programmer
   School of Computer Science - Research Computing Facility
   Carnegie Mellon University - Pittsburgh, PA