CACHEFILESD.CONF(5)          Cache Files Utilities         CACHEFILESD.CONF(5)

       /etc/cachefilesd.conf - Local file caching configuration file

       The configuration file for cachefilesd which can manage a persistent
       cache for a variety of network filesystems using a set of files on an
       already mounted filesystem as the data store.

       This configuration file can contain a number of commands.  Each one
       should be on a separate line.  Blank lines and lines beginning with a
       '#' character are considered to be comments and are discarded.

       The only mandatory command is:

       dir <path>
              This command specifies the directory containing the root of the

       All the other commands are optional:

       brun <N>%

       bcull <N>%

       bstop <N>%

       frun <N>%

       fcull <N>%

       fstop <N>%
              These commands configure the culling limits.  The defaults are
              7% (run), 5% (cull) and 1% (stop) respectively.  See the section
              on cache culling for more information.

              The commands beginning with a 'b' are file space (block) limits,
              those beginning with an 'f' are file count limits.

       tag <name>
              This command specifies a tag to FS-Cache to use in
              distinguishing multiple caches.  This is only required if more
              than one cache is going to be used.  The default is

       debug <mask>
              This command specifies a numeric bitmask to control debugging in
              the kernel module.  The default is zero (all off).  The
              following values can be OR'd into the mask to collect various

              1      Turn on trace of function entry (_enter() macros)

              2      Turn on trace of function exit (_leave() macros)

              4      Turn on trace of internal debug points (_debug())

              This mask can also be set through /proc/sys/fs/cachefiles/debug.

       As an example, consider the following:

              dir /var/fscache
              tag mycache
              brun 10%
              bcull 7%
              bstop 3%

       The places the cache storage objects in a directory called
       "/var/fscache", names the cache "mycache", permits the cache to run
       freely as long as there's at least 10% free space on /var/fscache/,
       starts culling the cache when the free space drops below 7% and stops
       writing new stuff into the cache if the amount of free space drops
       below 3%.  If the cache is suspended, it won't reactivate until the
       amount of free space rises again to 10% or better.

       The cache may need culling occasionally to make space.  This involves
       discarding objects from the cache that have been used less recently
       than anything else.  Culling is based on the access time of data
       objects.  Empty directories are culled if not in use.

       Cache culling is done on the basis of the percentage of blocks and the
       percentage of files available in the underlying filesystem.  There are
       six "limits":


       frun   If the amount of free space and the number of available files in
              the cache rises above both these limits, then culling is turned


       fcull  If the amount of available space or the number of available
              files in the cache falls below either of these limits, then
              culling is started.


       fstop  If the amount of available space or the number of available
              files in the cache falls below either of these limits, then no
              further allocation of disk space or files is permitted until
              culling has raised things above these limits again.

       These must be configured thusly:

              0 <= bstop < bcull < brun < 100
              0 <= fstop < fcull < frun < 100

       Note that these are percentages of available space and available files,
       and do not appear as 100 minus the percentage displayed by the df

       The userspace daemon scans the cache to build up a table of cullable
       objects.  These are then culled in least recently used order.  A new
       scan of the cache is started as soon as space is made in the table.
       Objects will be skipped if their atimes have changed or if the kernel
       module says it is still using them.

       cachefilesd(8), df(1), /usr/share/docs/cachefilesd-*/README

       The cachefilesd software has been developed by David Howells

Linux                            11 July 2005              CACHEFILESD.CONF(5)