Coda File System

Re: Coda reconnaissance

From: Jan Harkes <jaharkes_at_cs.cmu.edu>
Date: Fri, 22 Jun 2007 13:46:00 -0400
On Thu, Jun 21, 2007 at 03:02:41AM -0700, +draco+ wrote:
> I'm considering using Coda for sharing files over local network. I want
> to share about 70GB of data which will mostly be user accounts data. I
> want these remote accounts to be mounted after user log on computers.
> 
> Have you got any experience in using Coda in this manner?

Yes and no. Coda doesn't work like NFS, the namespace is global and
mount information is stored within the file system. So there is no such
thing as mounting specific volumes as a result of logging into a system.

> Is it possible to share such amount of data with Coda?

Maybe, Coda's semantics are not strict UNIX semantics, we use a much
weaker consistency model. So in the end it really is quite application
dependent.

> How big overhead on disk operations does CodaFS introduce in comparison
> with working on local FS? I'm asking because NFS, which I used lately,
> introduced a lot of overhead.

It depends on whether the files are cached locally or not. If they are
not they will have to be completely fetched before they can be opened
since Coda only supports whole file caching. Operations that modify
directory contents or open and closing of files are bounced up to
userspace, so there is some extra overhead there even if everything is
already cached. However once the file is opened, all read, write and
mmap operations are passed directly to the underlying file. Because we
know that the complete file is accessible there is no need to contact
the cache manager until the filedescriptor is closed.

So for some things we can be very slow (opening a large uncached file),
for some things there is some added overhead (bouncing requests from the
kernel back up to the userspace cache manager daemon), and some types of
operations are pretty much the same performance as the local FS where
the cached files are stored (read/write/mmap).

All in all, it is pretty hard to compare. Especially since Coda writes
updates back asynchronously.

> Can I configure Coda so that the logged user would have access only to
> data he is allowed to access?

The user would have to get a Coda authentication token, there are a
couple of different PAM module implementations that can do that. From
there it is a matter of what ACLs have been set on directories in the
file system.

> And finally, is Coda project actively supported by now?

I haven't seen any contributions from anyone named 'now', so I don't
think he cares. But yes, Coda is being supported and hopefully improving.

Jan
Received on 2007-06-22 13:47:44