January 21, 2017

The Coda Distributed Filesystem for Linux - page 8

Introduction to Coda

  • October 7, 2002
  • By Bill von Hagen

The Coda distributed filesystem is designed for use regardless of whether or not you're connected to a network. As mentioned earlier, this seems somewhat paradoxical--how can you connect to a network-oriented filesystem when you're not connected to a network?

To solve this problem, Coda enables you to make sure that your Coda client has cached copies of any files that are stored in Coda but which you need to access when you're not connected to the network. This is known as "hoarding" and is done using Coda's hoard command. The files that you want to hoard must be listed in a text file, known as a "hoard file", that you supply as an argument to the hoard command using its "-f" option. A sample section of a hoard file is the following:

a /coda/home/wvh/gcc/src/gcc-3.1-docs 600:d+
a /coda/home/wvh/gcc/chapter6.txt 600

Each line contains three sections: the command that the hoard command should execute (in this example, 'a', meaning to add the file to the client's hoard), the name of a file or directory that you want to add to the hoard, and a priority and associated attributes for that file. In this example, 600 is a standard priority for hoarding files (the priority determines which files must be hoarded if the number of requested files exceed the cache size), and the "d+" attribute means to cache this directory and any of its subdirectories.

If you're not sure which files you're actually using, you can use Coda "spy" command to monitor the traffic between your client and a specific server and write a list of these files to standard output, as in the following example:

spy -h distfs.vonhagen.org > hoardfile &

After terminating the spy process and editing its output file to use the correct syntax for the hoard command, you can then use this file to hoard whatever you're working on before disconnecting from the network, as in the following example:

hoard -f hoardfile

Executing this command will display information about each file and/or directory that is being cached on your client.

Sitemap | Contact Us