FUSECaps

Add "standard" capabilities to filesystems that lack them.


Looking for maintainer

With the new release just out, I have to announce (quoting the NEWS file):

This package is now unmaintained! The basic features, that I wrote this system for, are implemented. The code is probably not stable, elegant, ..., but it sufficed. I wrote these FUSE modules mainly to have a somewhat easier life with a FAT partition but I've became more and more annoyed by all the trouble you get with this filesystem, so I finally switched.
I now don't need this program anymore, so stop working on it for now.

If you people find bugs, don't hesitate to send the reports and fixes to me. If there is a developer willing to continue this project, then mail me. I will help, whereever I can.

It was fun, cya ;)

Download the package from the SourceForge.net® project page.

NOTE At the moment, this page only quotes the README. To give you something that you don't know yet, here is a short usage instruction:

The FUSECaps modules should be mountable "under" any FUSE filesystem like so (using fusexmp – FUSEs example filesystem – as an example):

fusexmp -o modules=xmlattr:times:perms,files=fsdata.xml,permsfile=fsdata.xml,timesfile=fsdata.xml /path/to/my/mountpoint

If you have no FUSE executable to pass the modules to, use the localfs binary distributed with the fusecaps package. This mounts your root filesystem (/) onto the given mountpoint. If you only want to (re)mount part of it, use the subdir module distributed with FUSE:

localfs -o modules=subdir:xmlattr:times:perms,subdir=/path/to/my/subdir files=fsdata.xml,permsfile=fsdata.xml,timesfile=fsdata.xml /path/to/my/mountpoint

Currently we have the perms, times and links module, which record file ownership and permissions, access and modification times, and hard- and softlink information respectively, inside an XML file.
This file is managed by the xmlattr module. It does common things for this XML file like unlink and rename and must be mounted before those two modules (FUSE mounts the filesystem that you call (as a command, like fusexmp) first, then the modules specified from left to right).
To use the perms module effectively, it should be loaded as the last mdoule.

Every module except xmlattr has a mount option modulefile, which states where to store the FS information related to that module (e.g. permissions). xmlattr has the files option, which is a colon seperated list of all XML files the module should manage (i.e. do unlink, rename and co. for).

There is now also a "large file module"; broken. See the README below, for what it does and how. It has the option list, which indicates the path to a text file, in which broken does its housekeeping, and an option size, which gives the maximum size of a file (also see below).

README

fusecaps is a set of FUSE modules, that can add possibly missing capabilities to other filesystems by being stacked on top of them. These features include: The first three of the listed modules use an XML file to store the metadata, they manage. This file is managed by another module -- xmlattr --, which needs to be on the bottom of the stack, when these modules are involved. broken can read and write split files transparently. If a file gets bigger, than the size given while mounting a "broken filesystem", then broken splits starts a new file to continue reading / writing there. It uses a plain text list to keep track of which files are "broken".

The FUSECaps project and all the stuff that belongs to it (including this homepage) are © 2008-2009 Julian Kniephoff.
The whole shebang is kindly hosted by SourceForge.net®: Get FUSECaps at SourceForge.net. Fast, secure and Free Open Source software downloads