Projects / fuselagefs


fuselagefs consists of a C++ wrapper class for FUSE called Fuselagefs, as well as Delegatefs, which is a Fuselagefs subclass that delegates all operations to an underlying base filesystem. With Delegatefs, you can expose dir1 at mountpoint dir2 very easily as a FUSE filesystem. Subclasses of Delegatefs can then be created, which add a little extra functionality to the delegation operation but rely on the parent class to perform the work and return errors to FUSE in an appropriate manner. An example subclass is petardfs.

Operating Systems

Recent releases

  •  22 Nov 2008 00:45

    Release Notes: This release adds BASEDIR handling to main(). It fixes a bug in delegatefs xattr methods.

    •  19 Mar 2007 18:31

      No changes have been submitted for this release.

      Recent comments

      12 Nov 2008 15:57 garpinc

      Here is project URL

      11 Nov 2008 22:34 garpinc

      Re: enhancement request...
      fyi: i will be checking in fuse-cache to sourceforge and i'm waiting for approval to add project..

      11 Nov 2008 22:33 garpinc

      enhancement request...
      I have created a filesystem fuse-cache based on the excellent work you've done for fuselagefs.. One of my requirements is to mount filesystem from fstab. Rather than -u option then the filesystem is passed as an arg to the executable and hence must be passed in to fuselagefs through call:

      return myfuse.main( fuseArgs );

      and fuselagefs must then make the BASEDIR be that..

      to facilitate this I added following to my local copy and i'm hoping you can include it in the distribution:

      1) I moved up BASEDIR for scoping and made it 0 by default:

      const char* BASEDIR = 0;

      namespace Fuselage

      2) added following to main so if -u is not supplied it will attempt to get filesystem by popping last arg from fuseArgs

      int Fuselagefs::main( list<string>& fuseArgs )


      if (BASEDIR == 0) {

      string baseDir = fuseArgs.back();

      LOG << "popping out base dir:" << baseDir << endl;

      BASEDIR = baseDir.c_str();




      Project Spotlight


      A Fluent OpenStack client API for Java.


      Project Spotlight

      TurnKey TWiki Appliance

      A TWiki appliance that is easy to use and lightweight.