Home

llfuse

Updated:
Created:

What could be done with a virtual filesystem bases on llfuse?

http://code.google.com/p/python-llfuse/

This seems to be a better fuse binding which actually supports proper release calls.

There is a ubuntu .deb at:

http://ppa.launchpad.net/nikratio/s3ql/ubuntu/pool/main/p/python-llfuse/

 

The idea would be to create a virtual filesystem which actually stores file in the normal filesystem, but adds some extra functionality:

  1. Add uids as xattrs to files/dirs (entries)
  2. have a virtual /uids dir to resolve uids - the entries are symlink to the current entries position
  3. trigger some form of indexing upon write/move
  4. maybe have a virtual /search directory for dynamic searches
  5. have symlinks within the filesystem point to the uid, so that moving the target doesn't invalidate the symlink (e.g. /foo/bar -> /uids/abc123 -> /foo1/bar1 -> /uids/def456 -> /foo2/bar2)
  6. store tags and additional references between entries either as xattr or in a seperate database

 

Actually, if there would be the database anyhow, why use xattr at all? Couldn't the database contain the uids as well, updated upon write/move/cp? Then we don't have to worry about non xattr-capable filehandlers. The xattrs could still be read using the virtual vs