Linux and the BSD's: running venus, the client cache manager

Once the binaries and documentation are installed, configuration of venus is identical for all platforms when venus-setup is used. To run the script, type:

venus-setup {comma,seperated,list,of,servers} {cache_size_in_kilobytes}

The venus-setup script does all the hard work, it will setup the coda control files, create /dev/cfs0 to communicate with the kernel, ... It also initializes a directory for cache files. In your first Coda run we recommend a small cache, say 20MB. The cache size should be at least 10Meg, typically 60-200Meg is used. Do not go above 300Meg. All the files created will be placed under /usr/coda. You should make sure that there is enough space in the file system on which /usr/coda resides to hold a fully populated cache.

For example, venus-setup micky,minnie,goofy 40000 will setup up venus to look for the set of servers micky, minnie and goofy and configure it to use 40MB of disk space for caching. This information is kept in /etc/coda/venus.conf. We strongly recommend that you initially try your client against testserver.coda.cs.cmu.edu first, and keep the cache size to 20000.

Start venus with venus &. An -init flag can be given when venus is started to flush the local cache contents. Installation procedure performed by venus-setup forces venus to inititialize cache upon first startup. The -init flag can be given if Coda cannot recover it's cache after a crash or after re-editing the venus.conf file manually.

Observe the venus log with tail -f /usr/coda/etc/console, it will tell you when venus has started. Use codacon to see the actions of the client in more detail, such as the communication between venus and the codaservers.

It is possible to see the upcalls from the kernel to venus by turning up logging, but they are not very interesting. (To turn on minimal debugging, type vutil -d 1 and then tail -f /usr/coda/coda.cache/venus.log.)

To halt venus, type:

# vutil shutdown
# umount /coda  #(Linux only)

Or you can kill -9 venus, if you must.

Linux:

  • Before restarting venus, /coda must be unmounted. If umounting /coda gives trouble, make sure to exit all process that hang on to the Coda filesystem, e.g. by having files open or being cd'd into /coda. A utility like lsof and fuser can help with this.

  • /proc/fs/coda has interesting Coda statistics.

  • You can enable kernel debugging with vutil -kdebug 4095 and call tracing with vutil ktrace 1. The messages appear in /var/log/messages.