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


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

There is a ubuntu .deb at:



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