Some of AFS' developers noticed that caching lets it work quite well for a while in the face of loss of the connection except for issues when writes occur. Coda was to allow for scenarios like allowing a laptop with a WLAN connection wandering in and out of range to seamlessly synchronize all files (and notify the user of conflicts). The project was quite a success.
Coda is supported well in the 2.6 Kernel series and appears to be under active development. Currently it seems to be the only option for a FileSystem with support for DisconnectedOperation until OpenAFS supports this as well. As of May 2005 the website is horribly out of date, with many pages dating back to 2000 or earlier, however the mailing list is active and is the current authoritative source of documentation.
Be wary of the documentation on the coda site, most of it is out of date enough to be horribly misleading. In mozilla use "View > Page Info" to check the modification date on any documentation you are interested in using, if it's older than a year or so, pretend it was 404 and completely ignore it!
I started with sarge machines running 2.6. Apparently 2.4 requires patching your kernel. The coda version in the 2.6 kernel tree is up to date, and, as an added bonus is usually compiled as a module by most kernels shipped by vendors.
I used the debian repositories to retrieve coda. Once again, be careful that you're not retrieving something that's horribly out of date. The repositories are mentioned in the above news list.
Coda's implementation is pretty simple. There is a daemon that runs on the server called "vice". Vice stores all your data and talks to the clients.
apt-get install coda-server
It'll prompt you for a series of questions. Think carefully about how you answer them. Information about this part of the setup is in the manual. This section doesn't seem to have changed much since it was written.
vice-setup should start the server, and everything should be running on the server.
The client requires a kernel module to run. This kernel module is very simple, mostly just forwarding requests for data to userspace, and therefore is very small and reliable. The main "brains" are in a userspace process.
If you don't have the module compiled, no matter, just go add the module to your config, build it and install it, and load it. You shouldn't even need to reboot.
apt-get install coda-client
cd /coda/realmname ls
This will prompt you for all the information you need to create a new user.