Coda File System

Re: Mount directories

From: Stephen Torri <s.torri_at_lancaster.ac.uk>
Date: Thu, 12 Oct 2000 11:40:29 +0100 (BST)
So if I want to load up directories from the server I must install the
coda-debug-client on it? What I am trying to do is include some
directories for a distributed project. I will try to load a client and see
what happens when I try to copy something into it.

Stephen

On Tue, 10 Oct 2000, Jan Harkes wrote:

> Hi Stephen,
> 
> I hope you don't mind me CC'ing this message to codalist, because I've
> received this question often, so I guess the answer deserves a larger
> audience.
> 
> Coda doesn't work like NFS, if you create a file somewhere /coda on the
> client the data is stored in a logical volume on the servers that serve
> the data for this volume. The metadata is kept in RVM, the contents of
> the file are stored in a file in /vicepa.
> 
> I'll try to explain by example,
> 
>     echo 1234 > /coda/usr/jaharkes/testfile
> 
> Here at CMU, /coda/usr/jaharkes is the volume vmm:u.jaharkes, a triply
> replicated volume stored on the servers verdi, mozart, and marais.
> 
> These server actually handle many volumes (about 100 I believe). And
> they all allocate a unique cache file for the data,
> 
> verdi happens to pick /vicepa/00/00/01/FF, mozart uses /vicepa/00/01/00/FE,
> etc. They also store in RVM data the information that the root directory
> of vmm:u.jaharkes now has a new entry named testfile, and the file's
> metadata such as size, mode, owner, creator, timestamps, a versionvector
> and which `containerfile' in /vicepa holds the data for this file.
> 
> Some of this metadata could have been stored as attributes on the
> container-file, but we don't do this for several reasons. For instance,
> I don't have an user account on the servers, so the owner would already
> become difficult. Forcing timestamps is messy, and setting the mode
> would potentially make files on the server visible to people who
> shouldn't have access to them. Also, there is no alternative for the
> VersionVector, which is probably the most critical information we have
> about a file as it is used to check consistency between copies of the
> file in different locations, server-server replication (resolution), and
> client-cache validity (f.i. after a disconnection).
> 
> So /vicepa/install.log might exist, but as the server doesn't know about
> all the _important_ stuff, it is completely useless to the server and it
> simply ignores the fact that it is there. Besides, we really don't want
> to have the server scan a N-gig /vicepa tree to figure out whether
> someone happened to have added a file there locally.
> 
> To summarize, you can only put files in Coda through a client, and they
> can only be (correctly) read back using a Coda client.
> 
> Jan
> 
> 
Received on 2000-10-12 06:55:55