Syncing a libferris filesystem with an XML file or database



With libferris, FUSE, and rsync, you can synchronize a filesystem with a dissimilar data source.

Admins use rsync to snchronize two filesystem trees. With a few tricks, you can use FUSE and libferris with rsync to synchronize a filesystem with another data source such as an XML file or a PostgreSQL database. Libferris is a user address space Virtual FileSystem (VFS) that lets you mount almost any data source as a filesystem. Examples of data sources libferris can mount include XML files, Berkeley db4 files, rpm packages, relational databases, LDAP servers, web servers, and applications like XWindow, Emacs, xmms, Amarok, and Firefox. Libferris also includes evolving support for mounting web services. For example, you can interface a libferris directory with a photo-sharing website like 23hq or Flickr. In this article, I will discuss some of the possibilities for using rsync to synchronize a libferris filesystem with an XML file or database.