cfs – cache file system


cfs -s [-dknrS] [-f partition]

cfs -a netaddr [-dknrS] [-f partition] [mtpt]

cfs -F srvfile [-dknrS] [-f partition] [mtpt]


Cfs is a user-level file server that caches data from remote files onto a local disk. It is normally started by the kernel at boot time, though users may start it manually. Cfs is interposed between the kernel and a network connection to a remote file server to improve the efficiency of access across slow network connections such as modem lines. On each open of a file cfs checks the consistency of cached information and discards any old information for that file.

Cfs mounts onto mtpt (default /mnt/cfs) after connecting to the file server.

The options are:

a netaddr

dial the destination netaddr to connect to a remote file server. Exclusive with -F.  


turn on debugging.  

f partition

use file partition as the cache disk partition.  

F srvfile

open srvfile (often a file under /srv) to connect to a remote file server. Exclusive with -a.  


keep cache contents even if they might have come from a different server. Cfs will obey -r even if -k is given.  


mount the remote file server without authentication; often useful with -F.  


reformat the cache disk partition.  


the connection to the remote file server is on file descriptors 0 and 1.  


turn on statistics gathering. A file called cfsctl at the root of the caching file system can be read to get statistics concerning number of calls/bytes on client and server sides and latencies.  

All 9P messages except read, clone, and walk (see intro(5)) are passed through cfs unchanged to the remote server. If possible, a read is satisfied by cached data. Otherwise, the file server is queried for any missing data.



Default file used for storing cached data.