[OpenAFS] Default $CACHSIZE on Linux

Jason McCormick jasonmc@cert.org
Mon, 31 Jan 2005 13:13:03 -0500


  I've been testing out the latest OpenAFS snapshots for Linux 2.6 related
issues and just came across a default configuration issue that will cause
people a lot of trouble.  With the 1.3.7x branch, the default Linux
configuration file (src/afsd/afs.conf.linux) now specifies the CACHESIZE=
directive in the default install as 'CACHESIZE=AUTOMATIC'.  However the
logic in the init script (src/afsd/afs.rc.linux) will exit with an error if
CACHESIZE=AUTOMATIC and $CACHE is on / or /usr.  This will result in an
inoperable AFS because the startup script will never allow AFS to start.
Where this will become a problem is a managed environment such as a lab.
Pushing out an update (or a rebuild) of workstations that do not have a
separate /usr/vice/cache, will force the administrator to visit each
machine and hand-fix /etc/sysconfig/afs to set an appropriate cache size,
or else force administrators to hand-maintain their own installation
packages.  The argument could be made that your configuration management
system would fix this, but if your config management is based out of AFS....

  I would propose that the init script be altered to start AFS with a very
small cache, either disk or memory, if the conditions are
CACHESIZE=AUTOMATIC && cache is on /.  Then at least the upgrade will
succeed (i.e. AFS starts), allowing admins to have their management systems
replace the config file with the site-specifc one.

  Any thoughts about this?  

-- 
Jason McCormick <jasonmc@cert.org>
CERT Infrastructure Team