What you're probably looking for is called a "clustered file system". There are lots of free ones out there.
OpenAFS is one that scales up to enterprise-sized clusters and I believe even supports caching over WANs. Lustre is another one, but I'm not sure if it's free. Just google around for "clustered file system" and you'll get some hits.
Is there any particular reason you need to use multiple machines for this, though? Unless you're expecting to be doing more than 60Mb/sec consistent throughput, why not just build one big fileserver and not worry about the whole cluster side of things? A modest Opteron-based system with a couple GB of RAM, a gigabit network card, a few SATA cards, some 400GB SATA drives, and good ol' software RAID-5 and you can have a very nice file server for not much money.
If this has to be ultra-high performance, then obviously a CFS is the way to go. Don't knock the benefits of a giant stack of SATA drives, though. With 3 4-port SATA cards, 12 400GB disks (11 useable after one parity drive), that's 4.4Tb of space!