Distributed fault-tolerant file systems