Date: Thu, 5 Jan 2006 01:21:31 +0100 (CET) From: Ivan Voras <ivoras@fer.hr> To: hackers@freebsd.org Cc: current@freebsd.org Subject: A sort-of distributed filesystem Message-ID: <20060105005633.H36895@geri.cc.fer.hr>
next in thread | raw e-mail | index | archive | help
I've threatened several times to make a distributed filesystem (or something like it) using FUSE, so I found the time over the holiday and did it. http://ivoras.sharanet.org/stuff/tdfs-r0.tgz This is a FUSE (userland) filesystem that propagates write requests to a remote daemon, while implementing read (and fstat and the like) requests locally. In short, this implements single-writer-multiple-readers scenario, where on one machine the filesystem is both readable and writeable and on multiple others it's only readable. (Actually, it's also writeable there, but the changes are not propagated). It's not a complete new filesystem but acts on existing filesystems, like an overlay / stacked filesystem (it's completely independant of the underlying filesystem type, but it's not tested on msdosfs :) ). The idea is that this could be used for hot-backups, load balancing, etc. This is only a proof of concept implementation, undertested and possibly with several bugs (I noticed late that timestamps are not always correctly propagated but will look into it tomorrow). To make it faster and possibly more robust for general usage it would have to be reimplemented in kernel. It's developed and tested on FreeBSD 6-stable and is currently not very portable to other operating systems (except 7-current and up). FUSE libraries and kernel module are required for operation. Don't forget to load the fuse.ko module. More information is provided in the README file so read it before trying to use it. If anyone wants to contact me off-list, please use the address in the README file. -- Preserve wildlife -- pickle a squirrel today!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060105005633.H36895>