descriptionafuse: a simple FUSSE-based automounter (Cloned from http://afuse.sourceforge.net)
ownerCyberLeo
last changeMon, 18 Feb 2008 22:46:56 +0000 (22:46 +0000)
readme
Afuse 0.2
Jacob Bower <jacob.bower@ic.ac.uk>
http://afuse.sourceforge.net/


0. Contents
-----------
1. Abstract
2. Example Usage
3. Notes on Afuse's Operation


1. Abstract
-----------
Afuse is an automounting file system implemented in user-space using
FUSE. Afuse currently implements the most basic functionality that can
be expected by an automounter; that is it manages a directory of virtual
directories. If one of these virtual directories is accessed and is not
already automounted, afuse will attempt to mount a filesystem onto that
directory. If the mount succeeds the requested access proceeds as normal,
otherwise it will fail with an error. See the example below for a specific
usage scenario.

The advantage of using afuse over traditional automounters is that afuse
is designed to run entirely in user-space by individual users. This way an
automounting action can take advantage of the invoking users environment,
for example allowing access to an ssh-agent for password-less sshfs
mounts, or allowing access to a graphical environment to get user input
to complete a mount (i.e. popping up a window asking for a password).

As this is a very early release of afuse operation is not yet optimal
and many features are missing. If you are interested in plans for
afuse or would like to contribute please see the HACKING file.

The latest version of afuse can be found at http://afuse.sourceforge.net/

Afuse is distributed under the GPL license, details of which can be
found in the COPYING file. Particularly, please note that while afuse
is intended to be useful it is provided with ABSOLUTELY NO WARRANTY.


2. Example Usage
----------------
Example invocation using sshfs:

	afuse -o mount_template="sshfs %r:/ %m" \
	      -o unmount_template="fusermount -u -z %m" \
	         mountpoint/

Now try 'ls mountpoint/user@host/'.

To unmount use:

	fusermount -u -z mountpoint/

All sub mounts should be automatically unmounted.

For this example to work, the sshfs invocation must not require user
interactivity (i.e.  asking for a password). So you probably want to be
using something like ssh-agent.

Alternatively, if want interactivity, add -f to the afuse invocation.


3. Notes on Afuse's Operation
-----------------------------
One of the most important things to note about afuse's operation is that
automounted filesystems accessed through afuse are actually accessed
by proxy.  Actual mounts are created in an instance specific  directory
in /tmp. _ALL_ accesses to automounted filesystems apparently managed by
afuse go through afuse and are proxied onto the real filesystem mounts
as appropriate.

While this shouldn't cause any operational problems, it does mean that
operations on afuse automunted filesystems have considerable overhead.
It can also mean that if afuse is not shutdown cleanly (via an unmount
of the afuse filesystem) a stale directory can be left in /tmp of the
form afuse-XXXXXX (where the X's are random characters).

Hopefully these limitations will be removed in later revisions of afuse.
shortlog
2008-02-18 cjiphTidying up for release 0.2. master
2008-02-13 cjiphAdded patch from Jeremy Martin-Shepard including:
2007-01-24 cjiphBetter handling of quotes in command template expansion.
2006-12-19 cjiphRefactored some data structures into their own source...
2006-02-27 cjiphIgnore afuse distribution archives.
2006-02-27 cjiphMoved to SVN due to CVS crapness.
2006-02-27 cjiphasdf
2006-02-27 cjiphfoobar
heads
11 years ago CDN-Patches
14 years ago master